Overview
Excerpt | ||
---|---|---|
| ||
How to require everyone to Approveapprove, but only need one person to Rejectreject |
This example shows how to allow a single reviewer to Reject whilst requiring all reviewers to Approvedemonstrates a workflow configuration where a single reviewer can reject the document and complete the approval with a Rejected decision. However, for an Approved decision, all assigned reviewers must approve the document. This setup allows for efficient decision-making, ensuring that any reviewer can stop the approval process if they identify issues, while a unanimous agreement is required for full approval.
Content reviews will often mandate that require several reviewers agree – either to agree—either Approve or Reject – before —before the workflow transitions to another state.
However, in the case of Reject, it is often cumbersome to require everyone agree – if 's agreement. If there's something wrong with the content, it needs to be rejected regardless. It is, therefore, very common to set up reviews so that only a single Reject is required for a transition to occur.
Default approval functionality – everyone must agree
This workflow has three states – Editing, Review, and Published. The default review functionality is that requires everyone has to agree before a transition occurs.
Code Block | ||||
---|---|---|---|---|
| ||||
{workflow:name=Slow rejection} {state:Editing|submit=Review} {state} {state:Review|approved=Published|rejected=Editing} {approval:Review|minimum=5} {state} {state:Published|final=true|updated=Editing} {state} {workflow} |
We've used the minimum=5
parameter; at least 5 reviewers must agree to Approve or Reject before the transition occurs. However, if the content needs further edits, that is the case regardless of the number of rejections – so let's make it transition as soon as the first rejection comes in.
Fast-tracked
...
rejection
A fast-tracked decision causing a transition can be achieved using a workflow trigger that includes a set-state action macro. You can see these at the end of the scriptworkflow markup below:
Code Block | ||||
---|---|---|---|---|
| ||||
{workflow:name=Fast-tracked rejection} {state:Editing|submit=Review} {state} {state:Review|approved=Published|rejected=Editing} {approval:Review|minimum=5} {state} {state:Published|final=true|updated=Editing} {state} {trigger:pagerejected|approval=Review|partial=true} {set-state:Editing} {trigger} {workflow} |
Here's how it works:
The trigger listens for the pagerejected event
- This
this event happens when someone clicks the Reject button during a review
The page rejection we are listening for is constrained as follows:
approval=Review
– specifies which review to monitorpartial=true
– process each rejection as it happens
If the trigger requirements are met, the
...
...
action macro immediately transitions the workflow to the Editing state.
The result is that a single Reject will cause causes a transition to the Editing state, whereas at least five people need to Approve before a transition to the Published state occurs.
Fast-tracked approval
You can also use the partial=true
to process each approval as it happens.
This may can be useful if you have a content review that allows multiple users to be assigned manually - but your practice and policy process at that milestone only requires a single approved decision.
...
In the above workflow popup for the Review state, all the assigned users would have to undertake the review and agree on the decision for a transition to occur.
We can fast-track the approved decision by adding a trigger for the pageapproved event and including partial=true.
Code Block | ||||
---|---|---|---|---|
| ||||
{workflow:name=Fast-tracked content review} {state:Editing|submit=Review} {state} {state:Review|approved=Published|rejected=Editing} {approval:Review|assignable=true} {state} {state:Published|final=true|updated=Editing} {state} {trigger:pageapproved|approval=Review|partial=true} {set-state:Published} {trigger} {trigger:pagerejected|approval=Review|partial=true} {set-state:Editing} {trigger} {workflow} |
A single approved decision actions will be used to make the transition despite three users being assigned as reviewers.
...
The pageapproved event trigger event trigger, including the partial=true
would also work even if
the reviewers were mandated to undertake the review
a minimum number of reviewers was required