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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.08.2016, 15:08   #1  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Ну и чтобы два раза не вставать: формат файлов/сообщений тоже не является определяющим критерием при выборе пользоваться или не пользоваться AIF. В стандартную AX2012 входит настраиваемый компонент для препроцессинга CSV-файлов. То есть, AIF вполне может читать и писать данные в CSV, и при этом использовать весь остальной фреймворк. Можно писать и свои компоненты для препроцессинга, таким образом расширяя набор форматов файлов, с которыми может работать AIF. На Dynamics Community лежит простенький пример такой трансформации для Excel-файлов. Собственно, вопреки той ереси, что была понаписана здесь изначально, прелесть AIF именно в инкапсуляции различных стадий процесса интеграции, которая позволяет добавлять свои реализации для каждой стадии без необходимости изменения всей интеграции.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
За это сообщение автора поблагодарили: Logger (1), ax_mct (2), pitersky (2), Fillin (1).
Старый 26.08.2016, 17:20   #2  
ax_mct is offline
ax_mct
Banned
 
2,548 / 1091 (0) ++++++++
Регистрация: 10.10.2005
Адрес: Westlands
Без проблем использую AIF классы и код оттуда для упрощения моей работы.

Но использовать AIF как Фреймворк там где можно без него обойтись, я считаю непрактичным.

В принципе на проекте где денег не считают и готовы платить за любой но гламур, и все танцы с бубном за счёт счастливого клиента, то я бы тоже стал евангелистом.
Старый 26.08.2016, 18:02   #3  
Fillin is offline
Fillin
Участник
 
127 / 38 (2) +++
Регистрация: 04.08.2016
В Европе при ставке 150 евро в час я б тоже только стандартный Аиф рекомендовал
Старый 26.08.2016, 19:04   #4  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Цитата:
Сообщение от Fillin Посмотреть сообщение
В Европе при ставке 150 евро в час я б тоже только стандартный Аиф рекомендовал
150 евро/час - это ставка суте... то есть, консалтинговой компании. У нас ставки, поверьте, значительно ниже
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 26.08.2016, 18:45   #5  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Пользуясь тем, что у меня сегодня выходной, давайте на более конкретном примере разберём. Вот прямо с проекта, который я сейчас дизайню.

Есть Аксапта и есть целый выводок самописных систем. Для оценки, скажем, десять систем. Каждая из этих систем создаёт в Аксапте заказы на продажу и платежи клиентов. Каждая система шлёт данные в своём формате. Кто-то выдаёт CSV, кто-то готов вызывать веб-сервисы. Некоторым системам хочется получить подтверждение из Аксапты, с номером созданного заказа/журнала, а некоторым наплевать. Сколько времени вы будете делать такую интеграцию?
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 26.08.2016, 19:37   #6  
ax_mct is offline
ax_mct
Banned
 
2,548 / 1091 (0) ++++++++
Регистрация: 10.10.2005
Адрес: Westlands
Цитата:
Сообщение от Maxim Gorbunov Посмотреть сообщение
Пользуясь тем, что у меня сегодня выходной, давайте на более конкретном примере разберём. Вот прямо с проекта, который я сейчас дизайню.

Есть Аксапта и есть целый выводок самописных систем. Для оценки, скажем, десять систем. Каждая из этих систем создаёт в Аксапте заказы на продажу и платежи клиентов. Каждая система шлёт данные в своём формате. Кто-то выдаёт CSV, кто-то готов вызывать веб-сервисы. Некоторым системам хочется получить подтверждение из Аксапты, с номером созданного заказа/журнала, а некоторым наплевать. Сколько времени вы будете делать такую интеграцию?
В ситуации когда всем 10 можно использовать Secure FTP то по три дня на интерфейс.

В ситуации когда решено что нужно AIF или да, в силу синхронности, те же три дня на каждый интерфейс.

Естественно не как финальный продукт а как betа-версия для тестирования.

Вопрос ведь не в скорости разработки, а в стоимости и простоте поддержки и изменений, надежности в целом. Чем сложнее и гибче (при всей правильности подхода) тем ненадежнее.

Более того постараюсь максимально сдублировать и сделать каждый интерфейс максимально независимым как от других так и от стандарта. Не правильно так делать да, но практично.
Старый 26.08.2016, 20:15   #7  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от ax_mct Посмотреть сообщение
Более того постараюсь максимально сдублировать и сделать каждый интерфейс максимально независимым как от других так и от стандарта. Не правильно так делать да, но практично
Добавили поле в шапке заказа / хотим немного модифицировать поведение (то же резервирование, проверка баланса) - правим 10 независимых интерфейсов в AX ? Неаккуратно как-то
__________________
-ТСЯ или -ТЬСЯ ?

Последний раз редактировалось Vadik; 26.08.2016 в 20:17.
Старый 26.08.2016, 23:08   #8  
ax_mct is offline
ax_mct
Banned
 
2,548 / 1091 (0) ++++++++
Регистрация: 10.10.2005
Адрес: Westlands
Цитата:
Сообщение от Vadik Посмотреть сообщение
Добавили поле в шапке заказа / хотим немного модифицировать поведение (то же резервирование, проверка баланса) - правим 10 независимых интерфейсов в AX ? Неаккуратно как-то
Да к бесу ООП там где оно вредит. Чем независимее тем лучше. C точки зрения исскуства программирования да "неаккуратно", а с точки зрения программиста AX как поставщика решения - очень мудро. Можно даже и теорию под это подобрать, много их этих теорий
Старый 27.08.2016, 22:25   #9  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Цитата:
Сообщение от ax_mct Посмотреть сообщение
В ситуации когда всем 10 можно использовать Secure FTP то по три дня на интерфейс.
Ок. А теперь допустим, что у клиента есть требование организовать журнал обработки сообщений. Сколько времени займёт организовать такой для каждой из 10 интеграций?

Цитата:
Сообщение от ax_mct Посмотреть сообщение
Более того постараюсь максимально сдублировать и сделать каждый интерфейс максимально независимым как от других так и от стандарта. Не правильно так делать да, но практично.
Бедные ваши клиенты
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 27.08.2016, 23:26   #10  
ax_mct is offline
ax_mct
Banned
 
2,548 / 1091 (0) ++++++++
Регистрация: 10.10.2005
Адрес: Westlands
Цитата:
Сообщение от Maxim Gorbunov Посмотреть сообщение
Ок. А теперь допустим, что у клиента есть требование организовать журнал обработки сообщений. Сколько времени займёт организовать такой для каждой из 10 интеграций?

Бедные ваши клиенты
журнал обработки сообщений - 2 дня на все 10 интеграций. Просто копируем готовое из AIF.

Когда я упоминал о независимости то на самом деле подразумевал что не один делаю эти 10 интеграций. Чаще всего ситуации когда два-три подрядчика/партнера/программиста и до кучи еще что-то вертикальное купленное. Поэтому с практической стороны максимальная независимость она много нервов бережет. Так как по сути разные команды участвуют. Чисто практическая вещь связанная с деплойментом и тестированием.
Старый 29.08.2016, 20:32   #11  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Цитата:
Сообщение от ax_mct Посмотреть сообщение
журнал обработки сообщений - 2 дня на все 10 интеграций. Просто копируем готовое из AIF.
У меня был заготовлен следующий вопрос про value mapping при интеграции, но ответ я уже заранее могу предположить. Любую новую функцию будем копировать из AIF (и выставлять клиенту новый счёт на разработку) по мере необходимости. В итоге получим урезанную копию AIF, без функций, которые пока не понадобились. Опять же, могу только посочувствовать вашим клиентам.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 27.08.2016, 12:09   #12  
macklakov is offline
macklakov
NavAx
Аватар для macklakov
 
2,129 / 917 (35) +++++++
Регистрация: 03.04.2002
Цитата:
Сообщение от Maxim Gorbunov Посмотреть сообщение
Есть Аксапта и есть целый выводок самописных систем. Для оценки, скажем, десять систем. Каждая из этих систем создаёт в Аксапте заказы на продажу и платежи клиентов.
Мне кажется наша "битва при AIF" зацикливается, т.к. произошло смешение понятий. Есть AIF как инфраструктура для публикации веб-сервисов. В нем я не вижу ничего особо плохого. А есть набор стандартных entities выставленных через AIF и еще более экстремальная OData. Вот именно их использование спорно, т.к. они подразумевают что клиентское приложение должно иметь понятие о устройтве AX.
В приведенном примере, клиентское приложение вообще может не понимать концепции заказа на продажу. И не факт что в аксе это нужно отражать именно как заказ. Может это quotation, а может invoice, а может и проект или просто проводки в ГК. Более того, понимание того, как надо проводить, может прийти в процессе внедрежа или даже после. И чем более абстрогирован будет веб-сервис от деталей реализации, тем гибче будет решение.
__________________
Isn't it nice when things just work?

Последний раз редактировалось macklakov; 27.08.2016 в 12:25.
Старый 27.08.2016, 20:22   #13  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,160 / 1289 (47) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Цитата:
Сообщение от macklakov Посмотреть сообщение
Есть AIF как инфраструктура для публикации веб-сервисов.
Не только это, но еще и готовый набор механизмов для согласования тех же кодов НСИ (ну или технологично сказать Мастер-данных).
Цитата:
клиентское приложение должно иметь понятие о устройстве AX.
...
И не факт что в аксе это нужно отражать именно как заказ.
Оно самое. Абстракции одной системы совсем не обязательно совпадают с абстракциями другой системы. И что-то суперуниверсальное может не справиться с такими отличиями. Вообще простейший пример: даже при похожих подходах, в разных системах то же определение того, что считать датой операции может различаться.
Хотя я вполне допускаю, что можно воткнуть несколько XSLT преобразований между входом и выходом (или наоборот).
А вообще, данный спор, можно сказать, ни о чем. Нет какого-то универсального подхода - используем AIF, не используем AIF, а ваяем что-то сами.
  • Один вариант - когда уже есть куча механизмов обмена и нужно добавить еще одну систему. Тут подход должен учитывать как все остальное работает.
  • Другой - начинаем с нуля. Тут самое интересное выяснить это единичный случай обмена или планируется и дальше делать интеграцию с другими системами (если найдете заказчика, который заранее знает ответ на такой вопрос, просьба сообщить его координаты - с удовольствием поучаствую в конкурсе на вакантное место у такого заказчика).
Ну и еще, если решить начать использование AIF, то вопрос по лицензиям. Если используется DAX2009, лицензий на AIF и NET.Connector нет, то как их можно легально получить?
За это сообщение автора поблагодарили: ax_mct (5).
Старый 27.08.2016, 22:47   #14  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Цитата:
Сообщение от Raven Melancholic Посмотреть сообщение
Ну и еще, если решить начать использование AIF, то вопрос по лицензиям. Если используется DAX2009, лицензий на AIF и NET.Connector нет, то как их можно легально получить?
Специально сейчас проверил: AIF входит в Business Essentials. Какое отношение к AIF имеют лицензии Business Connector Users, я не понял. Поясните, пожалуйста.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 28.08.2016, 16:44   #15  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,160 / 1289 (47) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Цитата:
Сообщение от Maxim Gorbunov Посмотреть сообщение
Какое отношение к AIF имеют лицензии Business Connector Users, я не понял. Поясните, пожалуйста.
Если использовать асинхронные порты, но никакого. А если хочется синхронности? Как в DAX2009 можно опубликовать синхронную службу кроме как развернуть WEB службу на IIS?
Цитата:
AIF входит в Business Essentials.
Я работал всегда на клиенте, поэтому мне сложно сказать про тонкости лицензирования. Но вот для проверки зашел на приложении одного из моих клиентов, про которого я точно знаю, что AIF там нет. Базовая лицензия - Enterprise. Из того, что относится к AIF доступны только конечные точки в той части, которая используется в InterCompany.
Миниатюры
Нажмите на изображение для увеличения
Название: Лицензии.jpg
Просмотров: 176
Размер:	169.0 Кб
ID:	10943  
Старый 27.08.2016, 23:32   #16  
ax_mct is offline
ax_mct
Banned
 
2,548 / 1091 (0) ++++++++
Регистрация: 10.10.2005
Адрес: Westlands
Цитата:
Сообщение от Raven Melancholic Посмотреть сообщение
Нет какого-то универсального подхода - используем AIF, не используем AIF, а ваяем что-то сами.
  • Один вариант - когда уже есть куча механизмов обмена и нужно добавить еще одну систему. Тут подход должен учитывать как все остальное работает.
  • Другой - начинаем с нуля. Тут самое интересное выяснить это единичный случай обмена или планируется и дальше делать интеграцию с другими системами (если найдете заказчика, который заранее знает ответ на такой вопрос, просьба сообщить его координаты - с удовольствием поучаствую в конкурсе на вакантное место у такого заказчика).
Вот это. Использовать стандарт или писать на коленке - по ситуации но не всегда и везде просто потому что это круть
Старый 27.08.2016, 22:30   #17  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Цитата:
Сообщение от macklakov Посмотреть сообщение
Есть AIF как инфраструктура для публикации веб-сервисов
Юрий, ты в корне неправильно понимаешь предназначение AIF. Веб-сервисы - это лишь один из транспортов, которые можно использовать для передачи данных. AIF работает и с другими. Именно за то, чтобы стороннему приложению не нужно было знать устройство Аксапты, AIF и отвечает.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 28.08.2016, 15:28   #18  
macklakov is offline
macklakov
NavAx
Аватар для macklakov
 
2,129 / 917 (35) +++++++
Регистрация: 03.04.2002
Цитата:
Сообщение от Maxim Gorbunov Посмотреть сообщение
Юрий, ты в корне неправильно понимаешь предназначение AIF.
По мне так AIF это, по сути дела, кустарный BizTalk. Скромненький и не очень удобный, зато отдельно покупать не надо. По этой причине BizTalk или ESB c AX я не слышал чтоб кто-то использовал. Но стандартные сущности в AIF написаны именно для стыковки с BizTalk. А т.к. стыковаться не с чем, а они есть, но народ их начинает использовать для того, для чего они не предназначены. Т.е. хакерствовать. А Microsoft, ясно дело, хакерские выходки поддерживать не обязан и не намерен, что разумно. Поэтому я считаю что лучше их не использовать.
__________________
Isn't it nice when things just work?
За это сообщение автора поблагодарили: ax_mct (5).
Старый 28.08.2016, 16:54   #19  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,160 / 1289 (47) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Цитата:
Сообщение от macklakov Посмотреть сообщение
По этой причине BizTalk или ESB c AX я не слышал чтоб кто-то использовал
На самом деле BizTalk используется (точнее точно использовался несколько лет назад - дальше у меня информации нет) в России на одном из очень заметных игроков на рынке кондитерских изделий.
Там 1С, Акса, портал корпоративной отчетности очень плотно использовали обмен данными между собой используя BizTalk. Использовались и MSMQ и файлы и почта, сам лично дописывал некоторые оркестровки. Не скажу что все идеально - были моменты когда вдруг какой-то порт абсолютно на пустом месте переставал работать, но в целом все как-то крутилось, шуршало.
Старый 29.08.2016, 11:05   #20  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Цитата:
Сообщение от macklakov Посмотреть сообщение
По мне так AIF это, по сути дела, кустарный BizTalk. Скромненький и не очень удобный, зато отдельно покупать не надо.
Точно! Теперь вспомнил, что это мне напоминает. В SAP несколько лет назад, при расширении функциональности и переход на Sap NetWeaver архитекторы осознали, что добавлять еще кучу таблиц в стандарт, где их так пара сотен тысяч (PS: активных - меньше), причем они не всегда будут использоваться, ну уж совсем не комильфо.

Сделали так - построили интеграционную шину - CIF (Core Infrastructure Framework) - что-то навроде Oracle Fusion, и используют ее для интеграции с доп. модулями, как минимум линейки APO (Advanced Planner and Optimizer), куда входят:
* Центр управления логистическими цепочками (Supply Chain Cockpit)
* Планирование спроса (Demand Planning)
* Планирование и развертывание сетей логистических цепочек (Supply Network Planning & Deployment)
* Планирование производства (Production Planning)
* Точное календарное планирование (Detailed Scheduling)
* Глобальная система контроля доступности (Global Available-to-Promise)
Кстати, туда же входит и их WMS - SAP EWM - Extended Warehouse Management

Так вот, как это работает: основные таблицы остались в самом SAP - номенклатура там и т.п., а специфичные таблицы, необходимые только для APO - стоят отдельно в апо, например для EWM - это карта склада, палеты, габариты ячеек и палет, маршруты комплектации и т.д. CIF обеспечивает двухстороннюю интеграцию - в APO заливаются изменения в номенклатуре, клиентах, заказах, а обратно - результаты операций, комплектация, отгрузка и прочее.

Может в эту сторону идет развитие AIF?

С Уважением,
Георгий
Теги
#msftadvocate, aif, абстракции, закопаем стюардессу, индийская кухня, интеграция, как правильно, холивар

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Должностные лица - использовать или нет? olesh DAX: Программирование 5 04.03.2019 16:22
Модуль Проекты можно ли использовать Aquarius DAX: Функционал 1 27.02.2015 18:35
AX.NET: интеграция .NET-приложений с Аксаптой и (будущие) возможности облачных вычислений gl00mie DAX: Программирование 2 23.04.2010 00:47
Андре: Интеграция Ax с системами контроля версий Андре DAX Blogs 7 03.03.2008 14:47
Управление командой разработчиков - что лучше использовать ShadowFromXZone DAX: Прочие вопросы 66 05.02.2007 19:58

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 18:47.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.