Comala Workflow stop users approving their own pages

Chris Gibson April 18, 2018

We have setup a document approval workflow in Comala (See below) using two groups, PRs and Managers.  This works ok, but we would like to stop anyone in the PRs or Managers group from completing their own approval.  (e.g stop the PRs from peer reviewing their own docs etc)

 

We have tried "|exclude=@Editor@}", but it doesn't seem to make a difference.  We also tried @Creator@ but it doesn't work either.  Has anyone else got this working?

 

{workflow:name=Peer and Manager Approval v2}
{description}
Peer and Manager Approval Workflow
{description}
{workflowparameter:PRs|description=Peer Reviewers group|type=group}
conf_users
{workflowparameter}
{workflowparameter:Managers|description=Management Approvers group|type=group}
conf_approvers
{workflowparameter}
{state:Draft|submit=Awaiting_Peer_Review}
{state}
{state:Awaiting_Peer_Review|approved=Awaiting_Manager_Approval|rejected=Draft|updated=Draft}
{approval:PR|group=@PRs@,@Managers@|exclude=@Editor@}
{state}
{state:Awaiting_Manager_Approval|approved=Published|rejected=Draft|updated=Draft}
{approval:Manager|group=@Managers@|exclude=@Editor@}
{state}
{state:Published|final=true|updated=Draft}
{state}
{workflow}

2 answers

0 votes
Sara Phillips November 14, 2022

@Mike Rink , I can see that @Chris Gibson mentioned in his description that "tried @Creator@ but it doesn't work either" so not sure why you are asking if it was attempted.

For our area though the Creator won't always be the one submitting it for review. It is more relevant to exclude the @modifier@ from the approval, as the last person who modified the page is likely the one who made the updates to send through for approval. This however is not working either.

I have found some relevant information in Assignment Examples - Comala Document Management Data Center and Server - Comala Documentation (comalatech.com) that may be of assistance.

Within the document it states the below;

Be aware that until the review has been assigned it can be undertaken by anyone with view and edit permissions.

Which is very strange to me as reviews should normally only be done by users other than the one who made the updates, otherwise you would just approve your own work. This programming would mean that anyone can go in and approve work unless it is assigned to relevant reviewers.

Now, I can automate the default users however that means that they will likely receive a lot of email spam. I do wish there was a way to have the reviewers list defaulted dependant on a separate list workflow parameter, but from my research that doesn't appear possible.

There is a section underneath that part that describes a possible workaround, however in my testing I have not been able to get it to work.

So if you only want the review to be undertaken once a reviewer has been assigned you can use the allowedassignusers and/or allowedassigngroups parameters together with the selectedapprover or selectedapprovers parameters.

Maybe you will have more luck.

oliver cuesta November 15, 2022

Hi @Sara Phillips

Setting the exclude parameter of an approval with @creator@ value reference will prevent the creator of the page to be able to review the approval in question:

{workflow:name=Simple approval workflow|key=spaceworkflow-2069888558}
{description}
The Simple Approval Workflow has 2 states.
In Progress: Staff edit pages, not visible to non-team members. Approved: Staff approve, visible to public.
{description}
{state:In Progress|approved=Approved|taskable=true|colour=#ffab00}
{approval:Review|assignable=true|exclude=@creator@}
{state}
{state:Approved|final=true|updated=In Progress|hideselection=true|colour=#14892c}
{state}
{workflow}

On the other hand, @modifier@ will prevent the person who last changed the content of the page to be able to review:

{workflow:name=Simple approval workflow|key=spaceworkflow-2069888558}
{description}
The Simple Approval Workflow has 2 states.
In Progress: Staff edit pages, not visible to non-team members. Approved: Staff approve, visible to public.
{description}
{state:In Progress|approved=Approved|taskable=true|colour=#ffab00}
{approval:Review|assignable=true|exclude=@modifier@}
{state}
{state:Approved|final=true|updated=In Progress|hideselection=true|colour=#14892c}
{state}
{workflow}

 Regarding:

Be aware that until the review has been assigned it can be undertaken by anyone with view and edit permissions.

it is actually taken from an example of a specific approval (limiting assignment / Users who can assign reviewers) which is another feature.

 

Regarding:

Now, I can automate the default users however that means that they will likely receive a lot of email spam. I do wish there was a way to have the reviewers list defaulted dependant on a separate list workflow parameter, but from my research that doesn't appear possible.

There is a section underneath that part that describes a possible workaround, however in my testing I have not been able to get it to work.

If you want to limit who can review but do not want potencial reviewer to receive email you could actually use selectedapprover parameter.

 

If you need further assistance / share more details about what your use case is please open a support ticket with us at https://support.comalatech.com so we can provide appropriate help on this.

Kind regards,

Oliver

Sara Phillips November 15, 2022

@oliver cuesta 

exclude function does not work in my testing.

I have attempted the exclusion on a page where I am the creator, as well as where I am the last one who modified the page. I can still approve it regardless of exclusion applied if there are no reviewers currently assigned.

As I stated previously, I attempted to apply the code to limit the approval until a reviewer has been added by applying allowedassignusers and seletedapprover however this still did not stop me (as the creator and/or modifier) from approving the page when zero reviewers are applied.

Thank you, I have already raised my query as a ticket for investigation (SUPPORT-15868).

0 votes
Mike Rink
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 23, 2018

Hi Chris,

I'd love to assist you with sorting this out. First can you confirm for me - did you try to exclude @Creator@ or @Created@? I say this because only the latter will work, as in this example: 

{state:Review|approved=Published|rejected=Editing}     
 
{approval:Review|assignable=true|exclude=@created@}

Let me know and we can troubleshoot further if necessary.  

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events