I have an Approval process page on a "Variation" object that basically allows users to make variations to things related to the parent Opportunity.
- When there is a variation waiting to be approved the Opportunity has a stage of "Monitoring”.
- When the Variation's status is changed to "Accepted" the Parent Opportunity's Stage changes to “Active”.
This workflow works when you manually edit the Variation's stage to "Accepted" but doesn't work when the approval Process triggers the Variations status to “Approved”. I have
Re-evaluate Workflow Rules after Field Change checked on the Approval.
Here is the Workflow Rule:
(Variation: Status EQUALS Approved, Rejected) AND (Opportunity: Stage EQUALS Under Variation) AND (Opportunity: Stage EQUALS Monitoring)
Which fires the Field Update for the opportunity:
Name Opp Approve Stage Unique Name Opp_Approve_Stage Description Object Variation Field to Update Opportunity: Stage Field Data Type Picklist Re-evaluate Workflow Rules after Field Change (not ticked) New Field Value Active
I can’t tick “Re-evaluate Workflow Rules after Field Change” here or I get the error: “There were custom validation error(s) encountered while saving the affected record(s). The first validation error encountered was "Re-evaluate Workflow Rules after Field Change cannot be specified for a parent field update."
The Debug Logs show that this is running and returning a successful field update. I’m guessing it’s because this workflow isn’t being re-evaluated after field change.
My question is why does this not work as a workflow rule but does as a Process Builder flow? Also, would it work as an Apex trigger?