AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.08.2016, 09:38   #1  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
AX7 - data entities - sales order
Коллеги, кто-то уже использовал data entities для создания заказов на продажу с синхронным вызовом ? То что есть сейчас не сильно нравится. Я в курсе существования KB3171892, но composite data entities не могут использоваться с синхронными вызовами. То, как используется OData здесь - это просто Содом и Гоморра какие-то по сравнению с тем что можно было делать в AIF, одна генерация номера заказа на клиенте чего стоит. Смотрю в сторону recurring integrations, но там тоже чувствую все не однозначно
Если кто-то может поделиться обезличенным проектом или просто поделится опытом, буду премного благодарен
__________________
-ТСЯ или -ТЬСЯ ?

Последний раз редактировалось Vadik; 18.08.2016 в 13:00.
Старый 19.08.2016, 10:16   #2  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,039 / 1630 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Вот здесь же Иван 20 минутное видео сделал как раз посвященное этому
выглядит правда тоже странновато, поделитесь потом, насколько это рабочий вариант

Цитата:
In the process, you will get an understanding of the following concepts:
•Data entities
•Composite data entities
•XML structure of the ASN files
•Data management workspace
•Service endpoint authentication
•Azure Active Directory app registration
•REST enqueue API, GitHub app
•etc.
http://kashperuk.blogspot.com.au/201...ound-asns.html
За это сообщение автора поблагодарили: Vadik (5).
Старый 19.08.2016, 10:53   #3  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Спасибо
__________________
-ТСЯ или -ТЬСЯ ?
Старый 22.08.2016, 16:27   #4  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от trud Посмотреть сообщение
выглядит правда тоже странновато, поделитесь потом, насколько это рабочий вариант
Это DMF-подобный импорт из говна и палок, названный по какому-то недоразумению интеграцией. Запустить это в принципе возможно, поддерживать - на мой взгляд, нет
__________________
-ТСЯ или -ТЬСЯ ?
Старый 22.08.2016, 20:39   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Vadik Посмотреть сообщение
data entities для ... заказов на продажу
в 7.0 microsoft использует data entities только для работы с setup-данными.
думаю, что пока не стоит использовать их для работы с worksheet-данными. и уж точно не стоит использовать в транзакционными данными. пока по крайней мере.
За это сообщение автора поблагодарили: gl00mie (2).
Старый 22.08.2016, 23:50   #6  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от mazzy Посмотреть сообщение
в 7.0 microsoft использует data entities только для работы с setup-данными
ну, не совсем так
Цитата:
думаю, что пока не стоит использовать их для работы с worksheet-данными. и уж точно не стоит использовать в транзакционными данными. пока по крайней мере
Ну тогда AIF верните что ли, изверги - ничего другого-то нет. А то про расширения, минимум over-layering-а, облака и OData (настолько кстати продвинутая технология, что даже в Visual Studio не поддерживается штатно) - я уже наслушался, они прекрасны и я их всецело одобряю и поддерживаю. Но клиенту нужно тупо работать и гонять заказы из самописной учетной системы в AX, а нормального штатного механизма как оказывается и нету. Приехали, как говорится
Изображения
 
__________________
-ТСЯ или -ТЬСЯ ?
Старый 23.08.2016, 03:10   #7  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,039 / 1630 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
А чем не подходит ваш пример в первом посте про OData?
номер заказа можно получать через предварительный вызов web сервиса к примеру
Старый 23.08.2016, 08:29   #8  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от trud Посмотреть сообщение
А чем не подходит ваш пример в первом посте про OData?
номер заказа можно получать через предварительный вызов web сервиса к примеру
За неимением лучшего, он подходит. Осталось только
Цитата:
insert not allowed for field 'FormattedDeliveryAddress'
починить
__________________
-ТСЯ или -ТЬСЯ ?
Старый 23.08.2016, 10:04   #9  
macklakov is offline
macklakov
NavAx
Аватар для macklakov
 
2,233 / 974 (37) +++++++
Регистрация: 03.04.2002
Цитата:
Сообщение от Vadik Посмотреть сообщение
это просто Содом и Гоморра какие-то по сравнению с тем что можно было делать в AIF
Это AIF был содомом и гоморрой, т.к. нарушал инкапсуляцию. Сейчас есть кошерный json. А odata, насколько понимаю, оставили чисто для своих целей (если поискать, ее и в 12-й можно найти), но из маркетинговых соображений выставляют как дополнительную опцию.
__________________
Isn't it nice when things just work?

Последний раз редактировалось macklakov; 23.08.2016 в 10:06.
Старый 23.08.2016, 10:18   #10  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от macklakov Посмотреть сообщение
Это AIF был содомом и гоморрой, т.к. нарушал инкапсуляцию. Сейчас есть кошерный json. А odata, насколько понимаю, оставили чисто для своих целей
У вас там уже пятница ? Затрудняюсь установить логическую связь инкапсуляции и JSON, про противопоставление JSON и OData тоже хотелось бы услышать чуть более развернуто. Ну и, само собой, о том как идеологически, расово правильно и политкорректно делать интеграцию заказов в AX7
__________________
-ТСЯ или -ТЬСЯ ?
Старый 23.08.2016, 10:32   #11  
macklakov is offline
macklakov
NavAx
Аватар для macklakov
 
2,233 / 974 (37) +++++++
Регистрация: 03.04.2002
Цитата:
Сообщение от Vadik Посмотреть сообщение
Ну и, само собой, о том как идеологически, расово правильно и политкорректно делать интеграцию заказов в AX7
Да как в нормальном программировнии. У тебя есть интерфейс, состоящий из методов, ты в них передаешь параметры, а что там сервер с этими параметрами делает, для тебя скрыто. Черный ящик. Те проблемы которые ты испытываешь, связаны не веб-сервисами, а с тем, что ваше решение было написано через AIF, причем, судя по всему, не через кастомные веб-сервисы. Были бы они кстомные, это был бы кошерный SOAP, который и в 7 вполне себе поддерживается.
__________________
Isn't it nice when things just work?
Старый 23.08.2016, 11:34   #12  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от macklakov Посмотреть сообщение
Это AIF был содомом и гоморрой, т.к. нарушал инкапсуляцию.
Как интересно: в MS разработали этот framework, несколько версий его продвигали и развивали, и вот когда для публикации портов отпала уже необходимость танцев с бубнами, ручной настройкой точек входа и проч., оказалось, что AIF-таки нарушает инкапсуляцию и потому более неприменим! Т.е. то, что он не "вписался" в облака, тут совершенно ни при чем, все дело в инкапсуляции, из-за нарушения которой клиенты, видимо, мучились все эти годы. Вы - астронавт архитектуры?
Цитата:
Сообщение от macklakov Посмотреть сообщение
Сейчас есть кошерный json.
Напоминает Огонь и движение:
Цитата:
Подумайте об истории всевозможных стратегий доступа к данным, разработанным Microsoft. ODBC, RDO, DAO, ADO, OLEDB, теперь вот ADO.NET - И все абсолютно новые! Может это было вызвано технологической необходимостью? Может это результат некомпетентной группы проектирования, которой необходимо придумывать по-новой доступ к данным каждый чертов год? (Возможно, это в самом деле так.)
Цитата:
Сообщение от macklakov Посмотреть сообщение
Да как в нормальном программировнии. У тебя есть интерфейс, состоящий из методов, ты в них передаешь параметры, а что там сервер с этими параметрами делает, для тебя скрыто. Черный ящик.
В переводе с австралийского на русский: выкиньте наши фреймворки и пишите интеграции сбоку на коленке, так что ли?
Цитата:
Сообщение от macklakov Посмотреть сообщение
Те проблемы которые ты испытываешь, связаны не веб-сервисами, а с тем, что ваше решение было написано через AIF, причем, судя по всему, не через кастомные веб-сервисы.
Т.е. возникшие проблемы никак не связаны с отказом от AIF в 7-ке, правильно?
Цитата:
Сообщение от macklakov Посмотреть сообщение
Были бы они кстомные, это был бы кошерный SOAP, который и в 7 вполне себе поддерживается.
Действительно, зачем было использовать доступный из коробки AIF, если можно писать всё сбоку на коленке, тут и дураку понятно, что это было просто неправильное архитектурное решение! Вот решение использовать новый OData или composite data entities - правильное, честна-честна, ага...
За это сообщение автора поблагодарили: Link (5), Craz (1), skuull (1).
Старый 23.08.2016, 13:50   #13  
macklakov is offline
macklakov
NavAx
Аватар для macklakov
 
2,233 / 974 (37) +++++++
Регистрация: 03.04.2002
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Как интересно: в MS разработали этот framework
ходят слухи что это шедевр некоего бангалорского стартапа
Цитата:
Сообщение от gl00mie Посмотреть сообщение
несколько версий его продвигали и развивали, и вот когда для публикации портов отпала уже необходимость танцев с бубнами, ручной настройкой точек входа и проч., оказалось, что AIF-таки нарушает инкапсуляцию и потому более неприменим! Т.е. то, что он не "вписался" в облака, тут совершенно ни при чем, все дело в инкапсуляции, из-за нарушения которой клиенты, видимо, мучились все эти годы.
Ну, такова традиция.
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Не_дайте_Астронавтам_Архитектуры_вас_запугать
Ну вот универсальность AIF с его "seemless integration" это как раз и был попыткой выйти в астрал.
Цитата:
Сообщение от gl00mie Посмотреть сообщение
В переводе с австралийского на русский: выкиньте наши фреймворки и пишите интеграции сбоку на коленке, так что ли?
В переводе на русский, если ты работаешь с прозрачным ящиком, жди проблем. Поэтому да, безопаснее делать на коленке свой набор сервисов, который скроет от клиентского приложения детали реализации.
Цитата:
Сообщение от gl00mie Посмотреть сообщение
зачем было использовать доступный из коробки AIF, если можно писать всё сбоку на коленке, тут и дураку понятно, что это было просто неправильное архитектурное решение!
Как первый день в этом бизнесе, честно слово. Забыли с кем дело имеете? Я уже 3 года только так и делаю. На коленке и сбоку. Кастомный веб-сервис пишется в разы быстрее, работает надежнее и в сопровождении прост.
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Вот решение использовать новый OData или composite data entities - правильное, честна-честна, ага...
Эти приблуды для внутренней меж-продуктовой интеграции. Их использование в других целях, чистое хакерство. Все последующие геморои вы создадите себе своими собственными руками.
__________________
Isn't it nice when things just work?
Старый 23.08.2016, 13:53   #14  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,907 / 5717 (196) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Вообще многие годы работы с Ax, привели меня к выводу что лучший способ интеграции - это как раз таки написание наколенного кода на X++. Как он с внешним миром обменивается - через текстовые файлы, ODBC-соединение в соседнюю БД - второстепенно. Главное что в конечном итоге, трудозатраты на интеграцию намного ниже чем при использовании любых предлагаемых в настоящее время Microsoft|Navision|Damgaard тулзов. Контроль над данными - полный, а вопросы собственно технических коммуникаций между Ax и внешней системой - это максимум 15% от проблем организации обмена. Все равно без программирования две системы не синтегрировать. И проще этот код написать в Ax на X++, чем пытаться какие-то настроки в biztalk приделать или расширения Integration Services писать или какие-нить приблуды на Perl для модификации текстовых файлов лабать. Сразу у тебя в одном месте и логика преобразования чужих данных и логика модификации аксаптовских данных. В конечном итоге - удобнее и дешевле получается.
За это сообщение автора поблагодарили: mazzy (2), Alexius (3), macklakov (1), dn (1), trud (1), Kasper (1).
Старый 23.08.2016, 14:33   #15  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
накину и я на вентилятор:

микросервисы vs монолит

https://habrahabr.ru/post/249183/
https://ru.wikipedia.org/wiki/%D0%9C...B8%D1%81%D1%8B
Старый 23.08.2016, 14:55   #16  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от fed Посмотреть сообщение
Вообще многие годы работы с Ax, привели меня к выводу что лучший способ интеграции - это как раз таки написание наколенного кода на X++
Тут каждый для себя решает самостоятельно, спорить не буду. Но ты упускаешь тот факт что "многие годы работы с AX" - это было на on premise, а в чужом облаке у тебя возможности для маневра в выборе технологии немного ограничены хостером (вендором). Поэтому подстраиваться, понимать и договариваться все же придется

P.S. Что касается ошибки с
Цитата:
insert not allowed for field 'FormattedDelveryAddress
, менее чем через час после создания инцидента в LCS позвонили, расспросили, начали разбираться. Приятно, по сравнению с саппортом MS году эдак в 2005
__________________
-ТСЯ или -ТЬСЯ ?
Старый 23.08.2016, 15:13   #17  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Да, забыл - приглашаю любителей наколеночных решений поделиться в этой ветке своими success stories с интеграциями построеными на файловых обменах, ODBC и прочем и их миграции в Azure. Для полноты спектра - особенно приветствуются сценарии с AX в Azure и миксом из внешних приложений в Azure и on-premise. Ничего ведь переписывать не пришлось, все само смигрировало и работает ?
__________________
-ТСЯ или -ТЬСЯ ?
Старый 23.08.2016, 15:27   #18  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,907 / 5717 (196) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Цитата:
Сообщение от Vadik Посмотреть сообщение
Да, забыл - приглашаю любителей наколеночных решений поделиться в этой ветке своими success stories с интеграциями построеными на файловых обменах, ODBC и прочем и их миграции в Azure. Для полноты спектра - особенно приветствуются сценарии с AX в Azure и миксом из внешних приложений в Azure и on-premise. Ничего ведь переписывать не пришлось, все само смигрировало и работает ?
Это из серии "Сами себе создаем трудности - сами преодолеваем". У нас в фирме действует официальная установка - постараться не продавать 7ку до момента выхода on-premise версии. И знаешь - как-то у большинства клиентов упоминание того что надо бы обождать с этим Ажуром и пожить на версии 2012 находит горячую поддержку. Мало кто рвется свои данные индусам в облако отдать.

Говоря о миграции - так ситуация не такая сложная как тебе кажется. Просто раньше у меня приблуда лезла через ODBC в соседнюю базу, а сейчас мне ее придется переписать на использование локальных буферных таблиц (которые я уж как-нить опубликую в веб с использованием любого из поддерживаемых 7кой механизмов - независимо от их кривизны и глюкавости).
Я уже написал что в интеграции - 85% проблем из за преобразования ЛОГКИКИ данных, а не из за технических сложностей с вызовом web-service/JSON/ODATA/etc или замены EBCDIC на UNICODE. Если логика преобрахования написана на X++, то сложностей с миграцией явно будет меньше независимо от того как и зачем Микрософт поменял AIF на более модный Three Letter Acronym...
Старый 23.08.2016, 19:54   #19  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Поддержу macklakov и fed. Использование того же AIF всегда несло кучу рисков и затрат. В моем опыте на всех проектах, где делали "на коленке", ни разу не пожалели. А ради гипотетического шанса, что проект когда то перейдет на новую версию и там MS позаботится о техническом переходе без проблем, городить огород здесь и сейчас - ну не знаю.
Оффтоп: Примерно такие же ощущения от DMF - вроде как оно и есть, но почему-то на всех крупных проектах по факту часто удобнее, быстрее и более контролируемо делать загрузку НЕ с его помощью.
__________________
Ivanhoe as is..
Старый 24.08.2016, 02:57   #20  
macklakov is offline
macklakov
NavAx
Аватар для macklakov
 
2,233 / 974 (37) +++++++
Регистрация: 03.04.2002
Цитата:
Сообщение от Vadik Посмотреть сообщение
Да, забыл - приглашаю любителей наколеночных решений поделиться в этой ветке своими success stories с интеграциями построеными на файловых обменах, ODBC и прочем и их миграции в Azure.
Извините! Попрошу не путать! То что мы на коленке делаем, еще не значит что мы делаем это через задний проход! И даже, когда приходится большие объемы данных быстро гонять, мы предохраняемся через views.
Цитата:
Сообщение от Vadik Посмотреть сообщение
Для полноты спектра - особенно приветствуются сценарии с AX в Azure и миксом из внешних приложений в Azure и on-premise. Ничего ведь переписывать не пришлось, все само смигрировало и работает ?
Дык если у тебя кастомный AIF опубликован на IIS или самописный WS, который дергает аксу через BC, с точки зрения интегрируемого приложения ничего не меняется, кроме адреса веб-сервиса. Даже если в облако все запихать. Даже если LedgerTrans больше не существует, а аналитки стали ну очень гибкими, веб-сервис выглядит точно так же как и раньше.
__________________
Isn't it nice when things just work?
Теги
d365fo, data entity, recurring integration, интеграция

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: Inconsistency between quantity in sales order and quantity in inventory transaction. Blog bot DAX Blogs 0 31.01.2015 17:11
atinkerersnotebook: Importing Sales Order History Through the Data Import/Export Framework Blog bot DAX Blogs 0 29.08.2014 02:14
emeadaxsupport: SEPA affected objects Blog bot DAX Blogs 0 29.11.2013 13:11
dynamicsaxtraining: Vendor returns Blog bot DAX Blogs 0 11.10.2012 00:11
dynamicsaxtraining: Sales Blog bot DAX Blogs 0 25.04.2012 03:18
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 06:21.