...
...
...
...
Table of Contents | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
Excerpt | ||
---|---|---|
| ||
For a content review with multiple assigned reviewers, increment a metadata value each time a reviewer approves the content and set a trigger to approve the page when a set number of reviewers have approved the page |
Overview
Content reviews will often assign several reviewers. Once assigned, the workflow requires that all the assigned reviewers agree – either Approve or Reject – before the workflow transitions agree - either Approve or Reject - before transitioning to another state.
...
Rather than waiting for all the assigned reviewers to approve the content, the workflow author may want to transition the workflow after receiving approvals from a set number of the assigned reviewersthem.
We can do this using a metadata item as a counter and incrementing the counter using the {increment-metadata} macro.
Set and increment the approval counter to action the approval
The workflow uses the following trigger actions:
initialize a counter value using
{}macro
increment the counter value using
the {}macro
action the
{}approved
transition using themacro when the counter value reaches a specified number
In the simple increment metadata example, the content is approved when three of the five assigned reviewers have approved the content.
Code Block | ||||
---|---|---|---|---|
| ||||
{workflow:name=Increment Metadata Counter for an approval} {description} A simple approval workflow with use of increment-metadata macro to set the number of assigned reviewer approval decisions to trigger the approval transition. {description} {state:Review|approved=Approved|Rejected=Rejected|taskable=true} {approval:Review|user=&suni,adam,elle,matilde,milo} {state} {state:Rejected|submit=Review|taskable=true} {state} {state:Approved|final=true|updated=Review|hideselection=true} {state} {trigger:statechanged|state=Review} {set-metadata:approval-counter}0{set-metadata} {trigger} {trigger:pageapproved|approval=Review|partial=true} {increment-metadata:approval-counter} {trigger} {trigger:pageparameterupdatepageapproved|parameterapproval=@approval-counter@|@approvalReview|@metadatafield.approval-counter@=3} {approve-page:Review|comment=Three reviewers have approved the content} {trigger} {workflow} |
This example may can be useful when you have a large number of users who are members of a global Confluence group that , which is the assigned the assigned reviewer group but , and your approval practice does not require all assigned users to undertake the content review.
Here's how each trigger action works
Trigger | Event | Action macro | Notes |
---|---|---|---|
Initialize the metadata |
|
|
| |
Approval counter |
|
| |
Approve the page |
|
|
|
An individual reviewer's rejection decision on its own does not impact the metadata approval-counter value but be aware there is an impact on , but it does impact the context of an approval transition.
For example
- the {
the approve-page
}macro is triggered when the
approval-counter
value is 3, even if one or more of the assigned reviewers have rejected the content the
.approval-counter
value is not decreased if a previous user changes their approved decision to rejected
This may mean the approve-page
action may can occur if
an assigned approver has rejected the content, but three other assignees have approved the content
a single assignee approves and rejects the content two times and then undertakes a third approval decision without any other assignee approving the content
We By managing a rejection decision, we obviously need to avoid these mixed decisions causing an overall approval by managing a rejection decision.
Manage reviewer rejection of the content
An additional trigger may be useful to initiate a fast-tracked rejection.
Code Block | ||||
---|---|---|---|---|
| ||||
{trigger:pagerejected|approval=Review|partial=true} {set-state:Rejected} {trigger} |
...
The addition of the fast-tracked rejection trigger to this workflow can be used to manage:
when a single reviewer rejects the content
when a reviewer changes their content review decision before any transition occurs