Показать сообщение отдельно
Старый 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).