WorkFlow Resubmit Code in d365 fo x++

  public static void main(Args args)

{

//  TODO:  Write code to execute once work items are resubmitted.

     recID recID             = args.record().RecId;

     tableId tableId         = args.record().TableId;


     XEN_OverTimeSummary XEN_OverTimeSummary = 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())

             {

                 if (XEN_OverTimeSummary.Status == XEN_OvertimeSummaryWFStatus::ChangeRequest)

                 {

                     workItem = args.caller().getActiveWorkflowWorkItem();

                     WorkflowWorkItemActionManager::dispatchWorkItemAction(workItem, workflowWorkItemActionDialog.parmWorkflowComment(), workflowWorkItemActionDialog.parmTargetUser(), WorkflowWorkItemActionType::Resubmit, args.menuItemName());


                     XEN_OverTimeSummary.Status= XEN_OvertimeSummaryWFStatus::Submitted;

                     ttsbegin;

                     XEN_OverTimeSummary.dataSource().write();


                     ttscommit;

                 }

                 else

                 {

                     throw Exception::Error;

                 }

             }

         }


         catch(Exception::Error)

         {

             throw error(strfmt("Can not resubmit some error occur"));

         }

     }

     // Make the form refresh its common workflow UI controls.

     args.caller().updateWorkflowControls();

}

Comments

Popular posts from this blog

Get Current Worker data in d365 fo x++

Table Level Event Handler in d365 fo x++