|
![]() |
#1 |
Участник
|
Суть в следующем:
Все довольно просто. Вы вызываете объект 1 из объекта 2. И потом хотите вернуть результат в объект 2 из объекта 1. Для этого вам нужно иметь доступ из объекта 2 к объекту 1 или наоборот, помнить ссылку на объект 2 в объекте 1. Так как вызываете вы класс из метода, то вызывающего объекта (объект 2) в том смысле, что описан выше, у Вас нет. Поэтому применим второй вариант. Для этого вместо вызова пункта меню (что приведет к вызову метода main) можно эту логику поместить непосредственно в метод validateWrite, как советуют выше X++: SUG_Change_Dial sug_ChD = new SUG_Change_Dial(); ; sug_ChD.setCustTable(this); sug_ChD.setFormName('CustTable'); if (sug_ChD.prompt()) { sug_ChD.run(); } return sug_ChD.parmReturnValue(); 1. Как видим, определять тип вызова уже не нужно, потому что код вызывается из каждого метода разных таблиц по-своему. 2.Нужно в классе создать переменную, в которую в методе run будет записано значение возврата (то есть true или false для validateWrite()) 3. Реализации методов setCustTable, setFormName Вы не приводили, поэтому написал в них то, что ближе всего подходило по смыслу. |
|