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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.12.2012, 11:06   #1  
egorych is offline
egorych
Участник
Самостоятельные клиенты AX
Oracle
 
761 / 154 (7) ++++++
Регистрация: 09.11.2006
Адрес: Краснодарский край
Цитата:
Сообщение от gl00mie Посмотреть сообщение
...на ум приходит идея информационной шины данных.
Всегда интересовало - что под этим понимают? Но примеров реализации почему-то нигде не видел и не читал ;-(
__________________
Axapta 3.0 sp - хз какой, kr2
Старый 04.12.2012, 11:30   #2  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,449 / 1792 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от egorych Посмотреть сообщение
Всегда интересовало - что под этим понимают? Но примеров реализации почему-то нигде не видел и не читал ;-(
Это абстракция. Реализовать которую можно различными способами. Самый простой - это наверное через файловую систему.
Идею gl00mie уже изложил. Как интегрировать Систему1 и Систему2, так чтобы они друг о друге не знали? Нужно взять Систему3 и интегрировать с ней обе наши Системы 1 и 2. Система3 в таком случае и будет выполнять роль шины данных.
Старый 04.12.2012, 11:51   #3  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,822 / 402 (17) +++++++
Регистрация: 23.03.2006
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Это абстракция. Реализовать которую можно различными способами. Самый простой - это наверное через файловую систему.
Идею gl00mie уже изложил. Как интегрировать Систему1 и Систему2, так чтобы они друг о друге не знали? Нужно взять Систему3 и интегрировать с ней обе наши Системы 1 и 2. Система3 в таком случае и будет выполнять роль шины данных.
и такие системы (Система3), действительно есть и внедряются. причем они поддерживают множество интерфейсов передачи данных (запросы в базу, веб-сервисы, передачи файлов и др)

Последний раз редактировалось ice; 04.12.2012 в 11:55.
Старый 05.12.2012, 09:30   #4  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1853 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от egorych Посмотреть сообщение
Всегда интересовало - что под этим понимают? Но примеров реализации почему-то нигде не видел и не читал ;-(
Есть BizTalk (дорогой собака), есть open source системы..
__________________
-ТСЯ или -ТЬСЯ ?
Старый 14.12.2012, 19:19   #5  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Мне удалось малой кровью запрограммировать "слепое" обновление имени и адреса клиента/поставщика:
DirParty@action = update
DirPartyPostalAddressView@action = create

\Classes\AxDirPartyTable\parmName
X++:
public DirPartyName parmName(DirPartyName _name = '')
{
    DirPartyTable   itself;
    AxVendTable     axVendTable;

    if (!prmisDefault(_name))
    {
        this.setField(fieldNum(DirPartyTable, Name), _name);

        // BEGIN
        if (_name && parentAxBc && parentAxBc.recordAction() == AxdRecordAction::Update)
        {
            switch (classIdGet(parentAxBc))
            {
                case classNum(AxCustTable):
                    itself = parentAxBc.currentRecord().dirPartyTable_FK();
                    break;
                case classNum(AxVendTable):
                    axVendTable = parentAxBc;
                    itself = DirPartyTable::findRec(axVendTable.parmParty());
                    break;
            }
            if (itself)
            {
                this.parmRecId(itself.RecId);
            }
        }
        // END    
    }

    return dirPartyTable.Name;
}
\Classes\AxDirPartyPostalAddressView\parmIsPrimary
X++:
public LogisticsIsPrimaryAddress parmIsPrimary(LogisticsIsPrimaryAddress _isPrimary = NoYes::No)
{
    LogisticsPostalAddress  itself;

    if (!prmisdefault(_isPrimary))
    {
        this.setField(fieldnum(DirPartyPostalAddressView, IsPrimary), _isPrimary);

        // BEGIN
        if (_isPrimary && parentAxBc && parentAxBc.parentAxBC() && parentAxBc.parentAxBC().recordAction() == AxdRecordAction::Update)
        {
            switch (classIdGet(parentAxBc.parentAxBC()))
            {
                case classNum(AxCustTable):
                case classNum(AxVendTable):
                    itself = parentAxBc.parentAxBC().currentRecord().postalAddress();
                    break;
            }
            if (itself)
            {
                itself = LogisticsPostalAddress::findRecId(itself.RecId, true, itself.ValidFrom, itself.ValidTo);
                itself.delete();
            }
        }
        // END
    }

    return dirPartyPostalAddressView.IsPrimary;
}

Последний раз редактировалось EVGL; 14.12.2012 в 20:26.
За это сообщение автора поблагодарили: gl00mie (1).
Теги
aif, ax2012

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: AX2012 AIF services error - The maximum number of joins allowed (99) is exceeded in the statement. Blog bot DAX Blogs 1 03.07.2012 08:13
Был ли у вас практический опыт интеграции AX c Biztalk через AIF IKA DAX: Программирование 2 03.02.2011 11:20
daxdilip: How to: Configure Dynamics AX AIF Services to listen for SSL Requests (https) Blog bot DAX Blogs 0 23.01.2011 10:12
Dianne Siebold: AIF Top Ten Blog bot DAX Blogs 1 22.04.2008 11:19
Синхронизация справочников Bars DAX: Программирование 5 05.05.2005 00:12
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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