CAB or Change Advisory Board – each person on the CAB must respond and either Approve or Reject the Change.
There are two ways to go about implementing this functionality. In the past, before orchestrations, we used TeamScript/AppScript to perform the behind the scenes processing. Unfortunately with AppScript, you can only set the state value and not actually perform a transition, so the change history ends up showing an update.
With the introduction of orchestrations, we can now do the behind the scenes processing and not write a line of code/script. As you will see, the orchestrations are drop dead simple, so if you follow the steps in this document, you will have this implemented in no time even if you have never configured an orchestration before.
When entering the review state user will select the reviewers from the SVP Reviews multi-user field.
You are now in the review state, and you likely have an email notification that went out to each SVP alerting them they must review the item.
When an SVP clicks Approve, an orchestration will remove their name from the Reviewers multi-user field and add it to the Approvers multi-user field. The record moves into a state for review processing.
When an SVP clicks Disapprove, an orchestration will remove their name from the Reviewers multi-user field and add it to the Disapprovers multi-user field. The record moves into a state for review processing.
The Approve and Disapprove Orchestrations execute a transition out of the review processing state that will route through a decision in the workflow to determine if the Reviewers multi-user field still contains users. If it does, then the record will return to the review state. If the Reviewers field is empty, then the record will move to the Review Complete state.
The orchestrations are asynchronous. This is partly why we transition to a review processing state. If we did not include the review processing state then the reviewer would be returned to the CAB review state and think that the review was not complete.
You can enhance this by adding an email approval to allow the reviewers to just click a button from their email.
· Create 3 multi-user fields. SVP Reviewers, SVP Approvers, SVP Disapprovers.
· Populate the multi-user fields with the same set of users.
· Set the SVP Reviewers as the secondary owner for the Review state.
· Create a state that will essentially “process” the reviews. In my example, I called this “Reviews”.
· Create an Approve transition from your CAB state to the process state.
· Create a Disapprove transition from your CAB state to the process state.
· Create a Decision block.
o One branch should go to the next step in your workflow. (in my example it goes to Completed)
§ The Rule should be: SVP Reviewers contains any (None).
o The “Otherwise” should go back to the CAB state.
· Create a transition from the “process” state to the decision block. (I called mine Review Complete?)
· From the Approve transition, add an action that will execute an asynchronous orchestration after the transition.
· From the Disapprove transition, add an action that will execute an asynchronous orchestration after the transition.
For the details on completing each of the orchestration steps, refer to the attached blueprint.
IMPORTANT: In order to execute the correct transition coming out of the Review Processing state, I recommend using the internalName property of the transition attribute. Copy/Paste from your workflow design to ensure spelling is correct.
SVP-Approvals.zip - Sample Blueprint.