Підготував: Андрій Чумаков
Версія Microsoft Dynamics AX: D365
Selects
Отримання даних від усіх перехресних компаній
Щоб отримати дані від всіх компаній відразу, а не тільки від поточної компанії, як у випадку зі звичайним select, використовуйте ключове слово crosscompany.
Отримання даних від кількох перехресних компаній
Щоб вибрати дані не по всіх компаніях відразу, а тільки по деяким з них, використовуйте ключове слово crosscompany і вкажіть список компаній:
– варіант, при якому список компаній задається в контейнері
– варіант, де список компаній задається в розділі де
Отримання даних від однієї зазначеної перехресної компанії
Інший спосіб отримати дані від компанії, відмінною від поточної, – це «переключитися» на іншу компанію за допомогою changecompany. В цьому випадку весь код виконується в контексті зазначеної компанії.
Джерела даних форм
Відображення даних від декількох компаній
Копіювання записів
Копіювання з використанням функції buf2buf
Щоб скопіювати запис з однієї компанії в іншу, вам потрібно «переключитися» на бажану компанію за допомогою changecompany і форматувати все поля (крім системних полів) нового запису за допомогою функції buf2buf .
Нижче наведено код методу, який створює новий запис і ініціалізує її поля значеннями вихідної записи:
Як приклад використання стандартної функції buf2buf можна побачити клас CustFreeInvoiceCorrection.
Копіювання з використанням методу табличних даних з подальшою настройкою системних полів
У тих випадках, коли з якої-небудь причини ви зберігаєте значення системних полів вихідної записи, крім поля DataAreaId, оскільки це поле в будь-якому випадку повинно відповідати компанії, в якій створюється новий запис, використовуйте дані таблиці метод.
{{ 1}} У той же час при створенні нового запису деякі системні поля можуть бути перевизначені, а поле DataAreaId має бути перевизначити.
Перевизначення системних полів має бути дозволено спеціальною конструкцією з використанням OverwriteSystemfieldsPermission (). Assert () і overwriteSystemfields ().
Ось приклад коду, який перекриває системні поля в новому записі.
Внутрішньохолдинговий продаж замовлення на закупівлю
Прикладом стандартних функцій усередині компанії є зв’язок між замовленням на купівлю в одній компанії і замовленням на продаж в іншій компанії.
Маючи замовлення на покупку, ви можете отримати внутрішньохолдингового замовлення на продаж, а маючи замовлення на продаж , ви можете отримати внутрішньохолдингового замовлення на покупку.
Нижче наведені індивідуальні приклади отримання замовлень на продаж і покупку.
Ось приклад стандартного коду в класі MarkupCopy, який отримує внутрішньохолдингового замовлення на продаж.