|
|
|
|
#1 |
|
Участник
|
Цитата:
Сообщение от Roman777
Ваша форма использеут наследник класса InventDimCtrl_Frm по стандартному механизму, описаному по ссылке выше?
Если да, то создайте в классе - наследнике метод, подобный такому: PHP код:
PHP код:
да, пробую по стандартному механизму, однако не получается вызывать метод updateDesign в инете формы, так как описано в статье ругается при создании объекта могего класса наследника... т.к. при создании объекта передается только форма(element) а в методе new нужен еще и объект типа InventMovement... где его брать понять не могу...
Последний раз редактировалось sparur; 21.08.2006 в 11:18. |
|
|
|
|
#2 |
|
Участник
|
Цитата:
Сообщение от sparur
да, пробую по стандартному механизму, однако не получается вызывать метод updateDesign в инете формы, так как описано в статье
ругается при создании объекта могего класса наследника... т.к. при создании объекта передается только форма(element) а в методе new нужен еще и объект типа InventMovement... где его брать понять не могу...X++: InventMovement _movement = InventMovement::Construct(inventJournalTrans); InventTable inventTable; ; switch ( mode ) { case InventDimFormDesignUpdate::Init : if ( !inventDimFormSetup ) inventDimFormSetup = new InventDimCtrl_Frm_*( element, _movement); inventDimFormSetup.parmSkipOnHandLookUp( true ); // do continue Кстати, если наследоваться от InventDimCtrl_Frm, то надо так же переопределять метод mustShowGridField(), как, например, в классе InventDimCtrl_Frm_Mov, иначе, просто, не будет привязки к таблице настроек, а все будет зашито в коде
__________________
Axapta v.3.0 sp5 kr2 |
|
|
|
|
#3 |
|
Участник
|
Цитата:
Сообщение от AndyD
X++: InventMovement _movement = InventMovement::Construct(inventJournalTrans); InventTable inventTable; ; switch ( mode ) { case InventDimFormDesignUpdate::Init : if ( !inventDimFormSetup ) inventDimFormSetup = new InventDimCtrl_Frm_*( element, _movement); inventDimFormSetup.parmSkipOnHandLookUp( true ); // do continue Кстати, если наследоваться от InventDimCtrl_Frm, то надо так же переопределять метод mustShowGridField(), как, например, в классе InventDimCtrl_Frm_Mov, иначе, просто, не будет привязки к таблице настроек, а все будет зашито в коде case InventDimFormDesignUpdate::Init : if ( !inventDimFormSetup ) inventDimFormSetup = new InventDimCtrl_Frm_Mov_Copy(element,movement); inventDimFormSetup.parmSkipOnHandLookUp( true ); // do continue case InventDimFormDesignUpdate::Active : inventTable = InventTable::find(inventJournalTrans.itemId); inventDimFormSetup.formActiveSetup(inventTable.dimGroupId); inventDimFormSetup.formSetControls(true); break; то вылезает другая проблема, а именно мы вызываем updatedesign() в методе Init нашей формы, в этот момент к сожалению еще не известна номенклатура и объект InventTable не определен (inventTable = InventTable::find(inventJournalTrans.itemId)) в итоге мы имеем ошибку (или она имеет нас )
|
|
|