Resubmit Work flow Method in D365fo x++
Resubmit Work flow Method in D365fo x++
Code:
static void reSubmit(Args _args)
{
VendTable VendTable = _args.record();
WorkflowWorkItemTable workItem = _args.caller().getActiveWorkflowWorkItem();
WorkflowWorkItemActionDialog workflowWorkItemActionDialog;
if (workItem.RecId > 0)
{
try
{
workflowWorkItemActionDialog = WorkflowWorkItemActionDialog::construct( workItem,
WorkflowWorkItemActionType::Resubmit,
new MenuFunction(_args.menuItemName(),_args.menuItemType()));
workflowWorkItemActionDialog.run();
if (workflowWorkItemActionDialog.parmIsClosedOK())
{
workItem = _args.caller().getActiveWorkflowWorkItem();
WorkflowWorkItemActionManager::dispatchWorkItemAction( workItem,
workflowWorkItemActionDialog.parmWorkflowComment(),
workflowWorkItemActionDialog.parmTargetUser(),
WorkflowWorkItemActionType::Resubmit,
_args.menuItemName());
// Change the WFStatus to Pending Approval.
ttsbegin;
VendTable.DSSH_WorkFlowStatus= DSSH_WorkFlowStatus::PendingApproval;
VendTable.dataSource().write();
ttscommit;
}
}
catch(Exception::Error)
{
throw error('Error in resubmitting workflow');
}
}
_args.caller().updateWorkflowControls();
}
Comments
Post a Comment