Skip to main content

Hello,

 

This is my business case: I have a workflow with 3 approvals (flexi tasks) in sequence.

Assume 3 approvers A,B and C, each having a separate task to approve.

My problem is that if long term delegation is enabled say for approver A to approver B, B ends up having to approve twice (as A and 😎 which is what I want to avoid. I want the workflow to skip the task if an approver already approved a task in the workflow. 

How can I address this ?  

One option I can think of is to use a webservice to query delegation table, check if task assignee has a delegation active, if that is the case, retrieve delegate user then check if that user already approved any other task in the workflow (not sure how to do this) and if that is the case skip the flexi task. 

That's a lot do to for something that should be simple.  Any better way ?

 

One better way would be to check who already has approved tasks in your workflow.
You can store the tasks IDs in a variable and check the field "Modified by", this way you are sure the last person to modify the task had indeed approved it.

You can then check in your collection if the next approver exist, and if this is the case, just bypass the next task.
That's how I would do it.


That should work. In the meantime it turns out we want 3 different approvers so if A delegated to B, B will need to manually delegate his approval (to D) which resolve the original problem.



 



Separately I have workflows for which I don't want long term delegation to kick-in. Because all workflows are in the same site this cannot be set individually (would be too much of a pain for end users anyway). I've posted in the forum a couple of months ago about this problem but did not get any response.



Is there a way around this ? 


I think this is possible by adding a new outcome on the task and a people picker ("Delegate task to"), but that means it will be difficult to manage if you assign the task to several users (since the task is blocking).
By checking your outcome you could then loop on the same branch of the state machine containing your task or go further and continue your process.

I want to prevent the delegation to kick-in when task is assigned and don't see how this would be possible without a new feature.



I did find something close to my need in the user voice and voted for it.



Long term delegation to not over-ride flexi task settings – Customer Feedback for Nintex (uservoice.com)


Reply