Wednesday, 10 July 2019

Calling Specific Approval Process from Apex code


Use Below code in your condition and call particular approval process from Apex class or Trigger.

            Approval.ProcessSubmitRequest req1 = new Approval.ProcessSubmitRequest();
            req1.setComments('Submitting request for approval.');
            req1.setObjectId(lrr.Id);
           
            // Submit on behalf of a specific submitter
            req1.setSubmitterId(UserInfo.getUserId());
           
            // Submit the record to specific process and skip the criteria evaluation
            req1.setProcessDefinitionNameOrId('ApprovalprocessName');
            req1.setSkipEntryCriteria(true);
           
            // Submit the approval request for the account
            Approval.ProcessResult result = Approval.process(req1);