AXForum  
Zurück   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Kennwort vergessen?
Registrieren Forum Rules Hilfe Benutzerliste Heutige Beiträge Suchen Alle Foren als gelesen markieren

 
 
Themen-Optionen Thema durchsuchen Ansicht
Alt 28.05.2017, 16:57   #1  
MazZzDaI ist offline
MazZzDaI
Участник
Benutzerbild von MazZzDaI
 
44 / 35 (2) +++
Registriert seit: 19.09.2013
Azure Service Bus и Dynamics 365 for Operations
Помогите найти материал по теме интеграции Dynamics 365 for Operations используя Azure Service Bus.
Для Dynamics 365 CRM есть здесь
Для AX2012 есть тут и тут
Для Dynamics 365 for Operations есть только описание прямой интеграции, но используя Service Bus не могу найти
Alt 28.05.2017, 18:38   #2  
mnt_dx ist offline
mnt_dx
Участник
Axapta Retail User
Лучший по профессии 2014
 
1.747 / 158 (9) ++++++
Registriert seit: 17.02.2011
Ort: К Северу через Северо-Запад
А что с чем интегрировать хотите? Для д365фо есть MS Flow, который много с чем может интегрировать АХ.
Alt 08.06.2017, 22:19   #3  
vmoskalenko ist offline
vmoskalenko
Участник
Benutzerbild von vmoskalenko
 
145 / 334 (12) ++++++
Registriert seit: 25.01.2007
Ort: Toronto
Я сейчас делаю интеграцию AX7 <--> CRM на базе MS Flow.
Еще и через Common Data Model (CDM). Т.е. AX7 <--> CDM <--> CRM

Кроме этого CDM хорошо подходит для
* таблиц маппинга данных AX7 и CRM
* таблиц обнаружения новых записей в AX7 (из-за отсутствия триггеров)

Использовать Azure Service Bus вижу смысл только для того чтобы избегать "детских" багов в MS Flow (баг Set variable, Nested loops возможно другие, еще не изведанные баги).

Но основная беда - это отсутствие триггеров в MS Flow для Dynamics 365 for Operations Connector.
Alt 12.07.2017, 09:15   #4  
MazZzDaI ist offline
MazZzDaI
Участник
Benutzerbild von MazZzDaI
 
44 / 35 (2) +++
Registriert seit: 19.09.2013
Microsoft Flow отлично подходит для интеграции. Но таки реализовал механизм взаимодействия AX7 и Azure Service Bus. Ссылка на GitHub
This post has been rated by: trud (3).
Alt 12.07.2017, 12:19   #5  
vmoskalenko ist offline
vmoskalenko
Участник
Benutzerbild von vmoskalenko
 
145 / 334 (12) ++++++
Registriert seit: 25.01.2007
Ort: Toronto
И как эта штука работает на практике?

AX генерирует сообщение в Azure Service Bus когда что-то поменялось в одной из её ДатаЭнтити?

Flow триггерится когда приходит новое сообщение в Azure Service Bus?
Потом Flow парсит данные из сообщения (JSON) и запихивает данные в CRM?
Alt 12.07.2017, 13:08   #6  
MazZzDaI ist offline
MazZzDaI
Участник
Benutzerbild von MazZzDaI
 
44 / 35 (2) +++
Registriert seit: 19.09.2013
Flow пока не умеет ловить события D365fO, как ты раньше и сказал, поэтому для решения этой задачи (как одной из N) я использую вышеизложенный класс для:
Zitat:
D365fO -> ServiceBus -> Flow (triggered) -> CRM (или любая другая система)
или так
Zitat:
D365fO -> ServiceBus -> любая система читает сообщение из очереди
или так
Zitat:
Любая система -> ServiceBus -> D365fO читает сообщение из очереди
Через Serivce Bus возможно передавать не только JSON, но и Binary, и даже стримить.
Alt 12.07.2017, 19:10   #7  
ax_mct ist offline
ax_mct
Banned
 
2.548 / 1091 (0) ++++++++
Registriert seit: 10.10.2005
Ort: Westlands
Zitat:
Zitat von MazZzDaI Beitrag anzeigen
Flow пока не умеет ловить события D365fO, как ты раньше и сказал, поэтому для решения этой задачи (как одной из N) я использую вышеизложенный класс для:

или так

или так


Через Serivce Bus возможно передавать не только JSON, но и Binary, и даже стримить.
Уверен что важнее новый технический навык - четкое понимание сколько та или иная реализация будет стоить в зависимости от типа и объема и еше и еще... Я тупо запутался.
Не поделитесь расчетами?
https://azure.microsoft.com/en-us/pr...s/service-bus/
This post has been rated by: macklakov (5).
Alt 13.07.2017, 07:34   #8  
trud ist offline
trud
Участник
Лучший по профессии 2017
 
1.039 / 1635 (57) ++++++++
Registriert seit: 07.06.2003
Blog-Einträge: 1
Zitat:
Zitat von MazZzDaI Beitrag anzeigen
Но таки реализовал механизм взаимодействия AX7 и Azure Service Bus
Спасибо за проект
еще вопрос - а какие были причины выбора Service Bus? т.е. можно ли добиться того же самого используя к примеру SQL Azure(как типизированное хранилище) и создав там свои таблицы для интеграции(соответственно какие-то системы будут писать данные в эти таблицы, какие-то читать)
This post has been rated by: ax_mct (5).
Alt 13.07.2017, 10:29   #9  
vmoskalenko ist offline
vmoskalenko
Участник
Benutzerbild von vmoskalenko
 
145 / 334 (12) ++++++
Registriert seit: 25.01.2007
Ort: Toronto
Red face
Zitat:
Zitat von ax_mct Beitrag anzeigen
Не поделитесь расчетами?
https://azure.microsoft.com/en-us/pr...s/service-bus/
Для задачи Интеграции CRM - AX у нас в качестве сообщений будет новые записи в ДатаЭнтити или изменённые записи в ДатаЭнтити.
Предположим, что за 1 день таких сообщений будет 100.
За 1 месяц - 3000 шт.

Берем STANDARD.

Абоплата - 10 USD/mo
Включено в абонплату - 1000 сообщений - 0 USD/mo
Сверх абонплаты - 2000 сообщений - 0.03 USD * 2000 = 60 USD/mo

Итого, 70 USD/mo примерно.
(Или в разы меньше если я не разобрался с brokered connections)
This post has been rated by: ax_mct (5).
Alt 13.07.2017, 10:35   #10  
vmoskalenko ist offline
vmoskalenko
Участник
Benutzerbild von vmoskalenko
 
145 / 334 (12) ++++++
Registriert seit: 25.01.2007
Ort: Toronto
Zitat:
Zitat von trud Beitrag anzeigen
Спасибо за проект
еще вопрос - а какие были причины выбора Service Bus? т.е. можно ли добиться того же самого используя к примеру SQL Azure(как типизированное хранилище) и создав там свои таблицы для интеграции(соответственно какие-то системы будут писать данные в эти таблицы, какие-то читать)
В моём случае, интеграция AX с CRM , я рассматривал седующие компоненты
* Azure Service Bus - хорошее решение, немного денег стоит, но имеет триггеры в Flow
* Azure SQL - не имеет тригеров в Flow, стоимость около 15 USD/mo, если раз в месяц удалять все ненужное и держать БД в минимальном размере.
* CDS (Common Data Services) - даже бесплатно (включено в стоимость подписки D365Op) имеет свою БД, имеет триггеры. Скорее всего буду импользовать для маппинга значений между AX и CRM. Или в AX свои таблички напишу - еще не решил.
This post has been rated by: macklakov (5).
Alt 13.07.2017, 15:41   #11  
trud ist offline
trud
Участник
Лучший по профессии 2017
 
1.039 / 1635 (57) ++++++++
Registriert seit: 07.06.2003
Blog-Einträge: 1
Zitat:
Zitat von vmoskalenko Beitrag anzeigen
* Azure SQL - не имеет тригеров в Flow, стоимость около 15 USD/mo, если раз в месяц удалять все ненужное и держать БД в минимальном размере.
* CDS (Common Data Services) - даже бесплатно (включено в стоимость подписки D365Op) имеет свою БД, имеет триггеры
судя по сайту Azure SQL за 15 USD/mo вы получите 250GB. этого вроде бы должно быть достаточно с запасом
с CDS - вы уверены что нет ограничений? на сайте есть кнопка - редактировать в Excel - который не поддерживает больше 1млн строк как это будет работать?
также к примеру непонятно как сделать бекап базы CDS. или если что-то случилось, как восстановить базу CDS на заданное время.
т.е. эти вопросы возникли при ближайшем рассмотрении
Alt 13.07.2017, 16:16   #12  
ax_mct ist offline
ax_mct
Banned
 
2.548 / 1091 (0) ++++++++
Registriert seit: 10.10.2005
Ort: Westlands
Zitat:
Zitat von vmoskalenko Beitrag anzeigen
Для задачи Интеграции CRM - AX у нас в качестве сообщений будет новые записи в ДатаЭнтити или изменённые записи в ДатаЭнтити.
Предположим, что за 1 день таких сообщений будет 100.
За 1 месяц - 3000 шт.

Берем STANDARD.

Абоплата - 10 USD/mo
Включено в абонплату - 1000 сообщений - 0 USD/mo
Сверх абонплаты - 2000 сообщений - 0.03 USD * 2000 = 60 USD/mo

Итого, 70 USD/mo примерно.
(Или в разы меньше если я не разобрался с brokered connections)
Присоединяюсь к вопросу причин выбора.
Смущает то что это не готовое решение за использование которого мы платим, избегая программирования, а платный компонент (как некое платное и закрытое DLL) в процессе программирования.
Смущает то что невозможно просчитать стоимость решения даже в перспективе 1- 3 года.
Я не нашел конкретных terms про изменение расценок https://azure.microsoft.com/en-gb/pr...s/service-bus/ поэтому вопрос к вам к человеку который выбрал этот компонент -
- может ли Microsoft изменить расценки?
- возможность и стоимость отказа от этого компонента, если он по каким-то причинам не устраивает?

Zitat:
Zitat von trud Beitrag anzeigen
Спасибо за проект
еще вопрос - а какие были причины выбора Service Bus? т.е. можно ли добиться того же самого используя к примеру SQL Azure(как типизированное хранилище) и создав там свои таблицы для интеграции(соответственно какие-то системы будут писать данные в эти таблицы, какие-то читать)
Alt 13.07.2017, 19:35   #13  
vmoskalenko ist offline
vmoskalenko
Участник
Benutzerbild von vmoskalenko
 
145 / 334 (12) ++++++
Registriert seit: 25.01.2007
Ort: Toronto
Zitat:
Zitat von trud Beitrag anzeigen
судя по сайту Azure SQL за 15 USD/mo вы получите 250GB. этого вроде бы должно быть достаточно с запасом
250КБайт - это размер одного сообщения.
В моем случае, это JSON или XML текст одной записи из ДатаЭнтити. Думаю, что если не заморачиваться на МЕМО поля, то должно хватить с головой.
Иначе, передавать ссылку на какой-то большой объект, например в Azure Blob Storage

Zitat:
с CDS - вы уверены что нет ограничений? на сайте есть кнопка - редактировать в Excel - который не поддерживает больше 1млн строк как это будет работать?
также к примеру непонятно как сделать бекап базы CDS. или если что-то случилось, как восстановить базу CDS на заданное время.
т.е. эти вопросы возникли при ближайшем рассмотрении
Хорошие вопросы. Но сама Flow имеет куда большие ограничения. Но для задачи *интеграции* между системами подходит.

Относительно бекапов CDS - я так понял что их просто нет. Наверное можно сервис запрос написать в Майкрософт на восстановление. Или скрипт какой-то написать который каждую ночь будет делать экспорт во внешний файл.
Alt 13.07.2017, 19:47   #14  
vmoskalenko ist offline
vmoskalenko
Участник
Benutzerbild von vmoskalenko
 
145 / 334 (12) ++++++
Registriert seit: 25.01.2007
Ort: Toronto
Zitat:
Zitat von ax_mct Beitrag anzeigen
Присоединяюсь к вопросу причин выбора.
Причина выбора простая - мало альтернатив которые из коробки работают с D365Op. Flow он же LogicApp и вобщем-то все.

Zitat:
Смущает то что это не готовое решение за использование которого мы платим, избегая программирования, а платный компонент (как некое платное и закрытое DLL) в процессе программирования.
Смущает то что невозможно просчитать стоимость решения даже в перспективе 1- 3 года.
Я не нашел конкретных terms про изменение расценок https://azure.microsoft.com/en-gb/pr...s/service-bus/ поэтому вопрос к вам к человеку который выбрал этот компонент -
- может ли Microsoft изменить расценки?
- возможность и стоимость отказа от этого компонента, если он по каким-то причинам не устраивает?
На практике, Майкрософт меняет расценки достаточно регулярно. На VM он расценки снижает, а некоторые сервисы - поднимает. Альтернативы?
Кстати есть альтернативы. И подороже. Но как обычно, D365Op connector на чтение/запись есть потому что ODATA, а вот чтобы триггер был - скорее всего не будет такого.

Могу сказать, что Azure сервисы - это более документированная штука чем чья-то DLL с гитхаба.

Раньше вот был BizTalk сервер. Сейчас Майкрософт его деаннсировал и предложил замену в виде сервисов Azure - Service Bus, Logic App, Azure Functions,...

Теперь ты не платишь за лицензию один раз и навсегда (а на самом деле на 3-5 лет). Сейчас ты платишь ежемесячно за то что используешь. Нужны большие мощности - PREMIUM, нужен маленький проект - BASIC.
Alt 13.07.2017, 21:37   #15  
ax_mct ist offline
ax_mct
Banned
 
2.548 / 1091 (0) ++++++++
Registriert seit: 10.10.2005
Ort: Westlands
Zitat:
Zitat von vmoskalenko Beitrag anzeigen
Причина выбора простая - мало альтернатив которые из коробки работают с D365Op. Flow он же LogicApp и вобщем-то все.



На практике, Майкрософт меняет расценки достаточно регулярно. На VM он расценки снижает, а некоторые сервисы - поднимает. Альтернативы?
Кстати есть альтернативы. И подороже. Но как обычно, D365Op connector на чтение/запись есть потому что ODATA, а вот чтобы триггер был - скорее всего не будет такого.

Могу сказать, что Azure сервисы - это более документированная штука чем чья-то DLL с гитхаба.

Раньше вот был BizTalk сервер. Сейчас Майкрософт его деаннсировал и предложил замену в виде сервисов Azure - Service Bus, Logic App, Azure Functions,...

Теперь ты не платишь за лицензию один раз и навсегда (а на самом деле на 3-5 лет). Сейчас ты платишь ежемесячно за то что используешь. Нужны большие мощности - PREMIUM, нужен маленький проект - BASIC.
Спасибо. Хорошая и понятная мысль. Раньше был BizTalk за скажем $10,000 за продукт, а сейчас "pay as you go" к примеру $100 в месяц за некий сервис. Ждем Visual Studio c оплатой за количество скомпилированных строк кода

Альтернативы? На двух концах этого обмена - MS SQL Server, не так ли? AX7 и CRM. И замены на NoSQL или файловую систему не предвидится, не так ли? Самое разумное решение использовать интеграцию на уровне баз данных.
Alt 14.07.2017, 08:04   #16  
trud ist offline
trud
Участник
Лучший по профессии 2017
 
1.039 / 1635 (57) ++++++++
Registriert seit: 07.06.2003
Blog-Einträge: 1
Zitat:
Zitat von ax_mct Beitrag anzeigen
И замены на NoSQL или файловую систему не предвидится, не так ли?
а что не так с файловой системой? т.е. для варианта локальная программа и облачная АХ вполне подойдет Azure storage, который мапится как диск в Windows а в АХ можно написать пакетное задание которое будет читать или писать эти файлы. Микрософт правда это считает примером "неправильной" архитектуры, они предлагаю использовать промежуточный апп для этого
https://blogs.msdn.microsoft.com/axs...or-operations/
Alt 14.07.2017, 09:42   #17  
vmoskalenko ist offline
vmoskalenko
Участник
Benutzerbild von vmoskalenko
 
145 / 334 (12) ++++++
Registriert seit: 25.01.2007
Ort: Toronto
Zitat:
Zitat von ax_mct Beitrag anzeigen
Альтернативы? На двух концах этого обмена - MS SQL Server, не так ли? AX7 и CRM. И замены на NoSQL или файловую систему не предвидится, не так ли? Самое разумное решение использовать интеграцию на уровне баз данных.
Не разумное решение. Уровней абстракций не хватает. Даже через файлики смотрится лучше. Особенно если файлики будут XML или JSON формата.

1. Структура БД разная. Даже в рамках Аксапты она может меняться от версии к версии. - Для этого хорошо подходят ДатаЭнтити.

2. Промежуточный слой. Одна из систем может не работать (обновляется например) А другая отсылает изменения. SQL требует транзакционности. Вот уже и лишняя табличка появилась.... В SQL конечно есть Service Broker но... это уже как бы не чистый SQL. Service Bus принимает сообщение от одной системы и хранит его пока не вторая не заберет это сообщение.

3. Версии SQL разные. MS SQL и Azure SQL таки отличаются

4. Добавляется новое поле. Что делаем? Сколько часов тратим?
Alt 14.07.2017, 10:16   #18  
macklakov ist offline
macklakov
NavAx
Benutzerbild von macklakov
 
2.347 / 996 (38) +++++++
Registriert seit: 03.04.2002
Zitat:
Zitat von vmoskalenko Beitrag anzeigen
Не разумное решение. Уровней абстракций не хватает. Даже через файлики смотрится лучше. Особенно если файлики будут XML или JSON формата.
Да ладно! Модули внутри AX без всяких XML или JSON обходятся прекрасно. В случае когда и CRM и AX в одном и том же облаке, они могут прозрачно интегрироваться через шаренные view. Зачем этот overhead в виде сервисов?
Выставили свои данные в виде view, и шлите друг другу сообщения в смысле "я там только что клиента нового создала", "я тебя услышала, клиента вижу". Быстродействие при этом несопоставимое с любой реализацией пересылки данных через web services.
Все эти универсальные связки через ESB и сервисы лучше всего отрабатывают когда есть открытый протокол. К примеру, универсальный протокол CRM 2 ERP. В этом случае обе стороны интеграции взаимозаменяемые. Хочешь цепляешь AX к MS CRM, а хочешь к SalesForce который живет в совсем других "облаках".
А если у тебя интеграция 1 к 1, продукты одного производителя, в одном и том же облаке, в одном и том же .net и на одной и той же базе, то все эти выкрутасы это не более чем наработка новомодных записей в резюме за счет работодателя.
__________________
Isn't it nice when things just work?
This post has been rated by: ax_mct (10).
Alt 14.07.2017, 11:46   #19  
AlexeyS ist offline
AlexeyS
Участник
 
404 / 339 (12) ++++++
Registriert seit: 15.06.2004
Ort: москва
Zitat:
Zitat von macklakov Beitrag anzeigen
Да ладно! Модули внутри AX без всяких XML или JSON обходятся прекрасно. В случае когда и CRM и AX в одном и том же облаке, они могут прозрачно интегрироваться через шаренные view. Зачем этот overhead в виде сервисов?
Выставили свои данные в виде view, и шлите друг другу сообщения в смысле "я там только что клиента нового создала", "я тебя услышала, клиента вижу". Быстродействие при этом несопоставимое с любой реализацией пересылки данных через web services.
Схема всем хороша, только в ней не учтен еще один стейкхолдер.
Дополнительный посредник, который за небольшую денежку будет принимать и отправлять данные, которыми вы обмениваетесь
This post has been rated by: vmoskalenko (1).
Stichworte
azure service bus, d365o, интеграция

 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
stoneridgesoftware: Dynamics 365 Roadmap, Readiness and License Renewal – What You Need to Know Blog bot DAX Blogs 0 16.03.2017 00:14
atinkerersnotebook: Creating New Customer Notifications for Dynamics 365 for Operations using Flow and the Common Data Service Blog bot DAX Blogs 0 15.12.2016 22:12
stoneridgesoftware: Microsoft Dynamics 365 – Right around the Corner Blog bot DAX Blogs 0 10.10.2016 21:13
Hotfix 2845539 is available to provide an AIF Windows Azure Service Bus Adapter for services in Microsoft Dynamics AX 2012 R2 Vadik DAX: База знаний и проекты 0 31.05.2013 11:11
Dynamics AX: WCF: The Enterprise Service Bus for Dynamics AX and the rest of the Microsoft Stack Blog bot DAX Blogs 0 10.03.2009 16:05
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Gehe zu

Рейтинг@Mail.ru
Alle Zeitangaben in WEZ +3. Es ist jetzt 21:56 Uhr.
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.