Tuesday, May 14, 2024

How to call SysOperation batch job using X++ in D365 F&O

ChangeItemController     controller  = ChangeItemController ::construct();

ChangeItemContract       contract    = controller ? controller.getDataContractObject() : null;


if (!contract)

        throw error(Error::wrongUseOfFunction(funcName()));


// Set contract fields

contract.parmItemId(this.ItemId);

contract.parmInventSiteId(this.SiteId );


controller.parmExecutionMode(SysOperationExecutionMode::ScheduledBatch); // Set execution mode

controller.parmShowDialog(false); 

controller.parmLoadFromSysLastValue(false); 

controller.parmInBatch(true);

controller.parmDialogCaption('Change Item');

controller.startOperation();