29.03.2018, 09:04 | #1 |
Участник
|
Как передать Args формы в класс service? Sysoperation Framework
Добрый день!
Возник следующий вопрос. Использую Sysoperation Framework. Класс контроллер запускается с формы, и нужно в класс servise передать ее Args. Класс Контракт не поддерживает сложные типы данных типа Args. Как это сделать? |
|
29.03.2018, 11:01 | #2 |
северный Будда
|
Цитата:
Но вообще сразу возникает вопрос - что у вас там такого в args, что нельзя передать напрямую?
__________________
С уважением, Вячеслав |
|
29.03.2018, 11:13 | #3 |
Участник
|
В контракт можно положить другой контракт или коллекцию других контрактов https://technet.microsoft.com/en-us/.../gg848068.aspx даже таблицу можно. А что вам конкретно надо ?
|
|
29.03.2018, 11:48 | #4 |
Участник
|
Service не должен знать про UI (см ModelViewConroller) для того, надо либо переместить логику в контроллер либо разобрать Args и передать нужные параметры через контракт
|
|
29.03.2018, 17:36 | #5 |
Banned
|
Цитата:
Microsoft Dynamics AX 2012 White Paper: Introduction to the SysOperation Framework https://www.microsoft.com/en-us/down...ng=en&id=29215 Вот такой вот цветочек в куче навоза. |
|
29.03.2018, 17:55 | #6 |
Участник
|
|
|
29.03.2018, 20:55 | #7 |
Banned
|
Цитата:
А для чего там тот или иной класс - пофиг. Это передача параметра и ничего больше. KISS, Debugger в зубы и вперед. |
|
30.03.2018, 09:14 | #8 |
Участник
|
Я бы сначала узнал что нужно автору и как работает SysOperationFramework.
Цитата:
Цитата:
но единственно чтобы бы меня заботило это сделать так чтобы не было runtime ошибок и при этом максимально сбоку. Типа версия 901 PackedList, наименование переменных с префиксами/постфиксами и прочее.
Args.caller во первых запаковать нельзя, а во вторых, его не нужно никуда протаскивать - достаточно или в afterOperation или прямо в main написать этот код. Цитата:
А для чего там тот или иной класс - пофиг. Это передача параметра и ничего больше. KISS, Debugger в зубы и вперед.
|
|
|
За это сообщение автора поблагодарили: ax_mct (5). |
30.03.2018, 17:15 | #9 |
Banned
|
Цитата:
Сообщение от belugin
Я бы сначала узнал что нужно автору и как работает SysOperationFramework.
Только для контракта. Причем SysOpFW отличается тем, что там не надо заморачиваться с packedlist - он сам пакует и разбирает свойства по имени. А в конце выяснится, например, что автору надо просто надо обновить вызывающую форму после выполнения операции чтобы изменения отобразились. Args.caller во первых запаковать нельзя, а во вторых, его не нужно никуда протаскивать - достаточно или в afterOperation или прямо в main написать этот код. И ни в задаче ни в системе разбираться не надо Разбираться не надо в SysOperationFramework - вот я хотел сказать До тех пор пока можно без этого обойтись. Debugger может все показать и так. Не система это, а НЛО упавшее на колхозное поле, пусть научники это изучают. |
|
|
|