Показать сообщение отдельно
Старый 29.03.2012, 10:03   #3  
Mila is offline
Mila
Участник
 
73 / 31 (2) +++
Регистрация: 21.04.2006
InventDimFormSetup заполняю по аналогии со стандартными формами в методе UpdateDesignGroup, который вызывается при инициализации формы. Вот его код:
X++:
void updateDesignGroup(InventDimFormDesignUpdate mode)
{
    InventTable inventTable;
    ;
    switch ( mode )
    {
        case InventDimFormDesignUpdate::Init :
            if ( !inventDimFormSetupGroup )
                inventDimFormSetupGroup = new InventDimCtrl_Frm( element );
            inventDimFormSetupGroup.parmSkipOnHandLookUp( true );
         // do continue
        case InventDimFormDesignUpdate::Active :
            inventTable = InventTable::find(ICLtmpProdRoutePlanGroup.itemId );
            inventDimFormSetupGroup.formActiveSetup( inventTable.dimGroupId );
            inventDimFormSetupGroup.formSetControls( true );
        break;
        case InventDimFormDesignUpdate::FieldChange :
            inventTable = InventTable::find(ICLtmpProdRoutePlanGroup.itemId );
            inventDimFormSetupGroup.formActiveSetup( inventTable.dimGroupId );
            inventDimGroup.clearNotSelectedDim( inventDimFormSetupGroup.parmDimParmEnabled() );
            inventDimFormSetupGroup.formSetControls( true );
        break;
      default : throw error(strfmt("@SYS54195",funcname()));
   }
}
А дальше в методе active источника данных формы пыталась проанализировать изменилось ли содержание inventDimParm, и после нажатия кнопки Отображение аналитики, в методе Clicked.
А заполнять InventDimParm я пыталась и так:
X++:
InventDimParm inventDimParm = inventDimFormSetupGroup.parmDimParmVisibleGrid();
и так:
X++:
InventDimParm inventDimParm = inventDimFormSetupGroup.parmDimParmVisible();