Wednesday 11 November 2015

Approved Workflow using code.

Below is the code to approve workflow thru code for any perticular Expense Order, same code can be use for SO, PO and many more.



static void ASCApprovedExpWorkflow_ex(Args _args)
{
TRVExpTable trvExpTable;
WorkflowWorkItemTable workflowWorkItemTable;
WorkFlowTrackingStatusTable workflowTrackingStatusTable;
trvExpTrans trvexpTrans;
;
ttsbegin;
select forupdate trvExpTable where trvExpTable.ExpNumber == ExpId && trvExpTable.dataAreaId == COMPANYID
{
       trvExpTable.ApprovalStatus = TrvAppStatus::Approved;
       trvExpTable.update();
       ttsbegin;
       while select forupdate trvExpTrans where trvExpTrans.ExpNumber == trvExpTable.ExpNumber &&                        trvExpTrans.dataAreaId == COMPANYID
     {
              trvExpTrans.ApprovalStatus = TrvAppStatus::Approved;
              trvExpTrans.update();
       }
     ttscommit;
     ttsbegin;
      while select forupdate workflowTrackingStatusTable where workflowTrackingStatusTable.ContextRecId == trvExpTable.RecId && workflowTrackingStatusTable.ContextTableId == trvExpTable.TableId
 && workflowTrackingStatusTable.dataAreaId == COMPANYID
       {
                 workflowTrackingStatusTable.TrackingStatus = WorkflowTrackingStatus::Completed;
                 workflowTrackingStatusTable.update();
                 ttsbegin;
                 while select forupdate workflowWorkItemTable where workflowWorkItemTable.RefRecId ==   workflowTrackingStatusTable.ContextRecId && workflowWorkItemTable.RefTableId == workflowTrackingStatusTable.ContextTableId && workflowWorkItemTable.dataAreaId == COMPANYID
                  {
                           workflowWorkItemTable.Status = WorkflowWorkItemStatus::Completed;
                           workflowWorkItemTable.update();
                   }
                ttscommit;
     }
   ttscommit;
}
ttscommit;
}
 

 
 

 
 

1 comment:

  1. Hi, my name is Georg Braun and I'm about to create a new workflow for AX7 in VisualStudio. Unfortunately I can not submit the workflow to be processed by the users set up in the WF-Editor.
    Can you share your experience of setting up WFs for AX7?
    Thanks a lot!
    Georg

    ReplyDelete