You need to sign in to do that
Don't have an account?

Approval Process Trigger Error
I have researched the code to set up the approval process trigger but I keep getting the following error:
Severity and Description Path Resource Location Creation Time Id
Save error: Variable does not exist: req1 Update Case Triggers/src/triggers Approval_Process.trigger line 12 1256322606703 445
This is my code:
trigger Approval_Process on Case (after insert, after update) { for(Case cs: Trigger.new) { cs = [ select ID from Case where id in :Trigger.new ]; if(cs.Agree_to_Submit_for_Approval__c == 'true') Approval.ProcessSubmitRequest req1 = new Approval.ProcessSubmitRequest(); req1.setComments('Submitting request for approval.'); req1.setObjectId(cs.id); Approval.ProcessResult result = Approval.process(req1); System.assert(result.isSuccess()); System.assertEquals('Pending', result.getInstanceStatus(), 'Instance Status'+result.getInstanceStatus()); } }
The line the code is referring too is:
Approval.ProcessResult result = Approval.process(req1);
Please help
It should be more like
trigger Approval_Process on Case (after insert, after update)
{
for(Case cs: Trigger.new)
{
if (cs.Agree_to_Submit_for_Approval__c == 'true') {
Approval.ProcessSubmitRequest req1 = new Approval.ProcessSubmitRequest();
req1.setComments('Submitting request for approval.');
req1.setObjectId(cs.id);
Approval.ProcessResult result = Approval.process(req1);
System.assert(result.isSuccess());
System.assertEquals('Pending', result.getInstanceStatus(), 'Instance Status'+result.getInstanceStatus());
}
}
}
If Case.Agree_to_Submit_for_Approval__c is a Boolean data type it should be
"if (cs.Agree_to_Submit_for_Approval__c) {"
not
"if (cs.Agree_to_Submit_for_Approval__c == 'true') {"