Opp Stage need to get approved when moved to “Closed-won”

approval-processopportunityvalidation-rule

I have a requirement where, the user shouldn't able to move the Opp to closed-won, unless its been approved. So basically , when trying to move to "Closed-won" , it should locked the record and after approved, it shd able to move to closed -won stage.

I have created an approval process and put the criteria as, Opp stage ISCHANGED and Opp Stage= Closed -Won.
I have as well created the below VR, which showing the error message that it needs approval.
AND(ISCHANGED(StageName),ISPICKVAL(StageName, "Closed Won"),NOT( ISPICKVAL( Approval_Status__c, "Approved")))But when clicking on "Submit for approval" button its asking no valid approval process in place.
How should i change the approval process entry?

Best Answer

So, by definition, when you click on Submit for Approval you are starting with a committed record and thus the entry condition of:

ISCHANGED() AND ...

can't possibly be true as you are not within a save operation.

Remove the ISCHANGED() from the Approval Process entry condition as your VR already handles preventing the Opportunity Stage from moving to Closed-Won if the custom field Approval_Status__c is not Approved - and presumably your Approval Step's final action sets the Approval_Status__c = 'Approved'

Related Topic