D365F&O - X++ - Get formbuttoncontrol and multiple datasource records in onclicked eventhandler

[FormControlEventHandler(formControlStr(CostSheetCalculationFactor,
MassInventPriceCalcFactorActivateButton), FormControlEventType::Clicked)]
public static void MassInventPriceCalcFactorActivateButton_OnClicked(
FormControl sender, FormControlEventArgs e)
{
    #define.BUTTONNAME('MassInventPriceCalcFactorActivateButton')

    CostSheetCalculationFactor              costSheetCalculationFactorLocal;
    MultiSelectionHelper                    selectionHelper =
                                            MultiSelectionHelper::construct();
    boolean                                 enableActivateButton = true;
   
    selectionHelper.parmDataSource(sender.formRun().dataSource(1));

    costSheetCalculationFactorLocal = selectionHelper.getFirst();

    while (costSheetCalculationFactorLocal)
    {
        if (!costSheetCalculationFactorLocal.allowActivate())
        {
            enableActivateButton = false;
            break;
        }
        costSheetCalculationFactorLocal = selectionHelper.getNext();
    }
    FormButtonControl ButtonControl = sender.formRun().design().controlName(
                                        #BUTTONNAME);
    ButtonControl.enabled(enableActivateButton);
} 

Comments

Popular posts from this blog

D365F&O - X++ - Set contract parameter value in controller class of SysOperationServiceBase framework

D365F&O - X++ - Create and post Customer payment Journal using X++ code.

D365F&O - X++ - Create Batch job using SysOperationServiceBase in X++