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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.11.2012, 14:26   #3  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Я для этих целей делаю класс-интерфейс, в котором прописываю сигнатуры нужных методов, а в форме делаю реализацию интерфейса.
Соответственно, вызов делается так
X++:
Object object = formRun;
MyInterface intf = object;
;
intf.xxxMyMethod();
Как огромные плюсы - проверка сигнатур во время компиляции и работающие перекрестные ссылки (на интерфейсе)

Скользкий момент с intf = object.
Перед присвоением делаю проверку на реализацию интерфейса формой.
Так как все формы основаны одном классе FormRun, то стандартная проверка через DictClass в данном случае не подходит. Пришлось реализовывать ее через ScannerClass.

Что бы не заморачиваться с подобными сложностями, можно просто проверять по списку имен форм, что несколько коряво
__________________
Axapta v.3.0 sp5 kr2

Последний раз редактировалось AndyD; 30.11.2012 в 14:28.
За это сообщение автора поблагодарили: macklakov (5), Logger (3), gl00mie (1), S.Kuskov (2), bodeaux (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
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
dynamicsaxtraining: Paying a Vendor Blog bot DAX Blogs 0 22.03.2012 22:11
dynamicsaxtraining: Purchase Blog bot DAX Blogs 0 11.03.2012 05:25
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

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

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

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