Получить класс SalesFormLetter из формы FormRun SalesEditLines, используя PreHandler AX7
Мне нужно внести некоторые изменения в closeOk формы SalesEditLines. Как я знаю, я не могу изменить стандартные методы, поэтому мне нужно создать обработчик событий для closeOk.
[PreHandlerFor(formStr(SalesEditLines), formMethodStr(SalesEditLines, closeOk))]
public static void SalesEditLines_Pre_closeOk(XppPrePostArgs args)
{
FormRun sender = args.getThis() as FormRun;
Object callerObject = sender.args().caller();
}
Вопрос - как я могу получить доступ к SalesFormLetter через форму FormEun SalesEditLines, используя PreHandler?
1 ответ
Решение
Вы можете увидеть следующую строку в init
метод SalesEditLines
форма
salesFormLetter = element.args().caller();
Так что ваши callerObject
является экземпляром класса SalesFormLetter, вам нужно просто привести его к правильному типу.
Пожалуйста, проверьте следующую ссылку: https://docs.microsoft.com/en-us/dynamicsax-2012/developer/expression-operators-is-and-as-for-inheritance