Показать сообщение отдельно
Старый 08.05.2008, 16:32   #1  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
Обработка jumpRef в Dialog
Создается Dialog, на котором динамически создаются контролы.
Нужно, чтобы у контрола в контекстном меню был пункт "Перейти к форме основной таблицы".
Динамически перегрузил метод jumpRef() создав в классе метод:
X++:
public void dfDistrId_jumpRef()
{
    FormStringControl  control = dialog.formRunClient().controlCallingMethod();
    Args args = New Args("AclDistrTable");
    FormRun FR;
    ;

    args.lookupField(fieldNum(AclDistrTable, DistrId));
    args.lookupValue(control.valueStr());

    FR = new FormRun(args);
    
    control.jumpRef();
    
    FR.init();
    FR.run();
    FR.wait();
}
Пункт не появился... Прописал EDT в dialogPostRun():
X++:
public void dialogPostRun(dialogRunbase _dialog)
{
    FormStringControl scDistrId;
    ;
    super(_dialog);

    _dialog.formRunClient().controlMethodOverload(true);
    _dialog.formRunClient().controlMethodOverloadObject(this);
        
    scDistrId = dialog.formRunClient().control(dialog.formRunClient().design().controlName("dfDistrId").id());
    
    scDistrId.extendedDataType(extendedTypeNum( AclDistrId) );
    scDistrId.autoDeclaration(true);
}
тоже не помогло.
Что можно еще сделать, или есть обходной способ создать пункт в контекстном меню?