Good evening all,
I'm hoping you can help me, I'm trying to build an approval flow which has 4 stages of approval, at each stage if the list item is rejected I need the approval to move back to the previous stage.
I don't have any good screen grabs of the flow but this is how it works.
initialise integer at 0
do until int is greater than 4
//--- 1st stage ---\\
do until not equal to 0
stage one approval
approved increase int to 1
rejected maintain int at 0
//--- 2nd stage ---\\
do until not equal to 1
approved increase int to 2
rejected decrease int to 0
//--- 3rd stage ---\\
do until not equal 2
approved increase int to 3
rejected decrease int to 2
//--- stage 4 ---\\
do until not equal to 3
approved increase int to 4
rejected decrease int to 3
The approval flow works fins forwards but the only time it steps back to the previous stage is between stages 3 and 4, the other two stages move on to the next stage when rejected (i.e. stage 2 rejected starts approval process or stage 3).
Any help would be most appreciated.
Cheers
Solved! Go to Solution.
Thanks for the advice, I worked on the problem some more and came up with the following solution.
I have also set the comments as string variables so that they can be passed between approval states.
@Ben_C - I think you have exactly similar requirement that I am currently dealing with. Flow does not have stages like SharePoint Designer and It is a much much needed feature. Needed like day before yesterday.
You need to generate stage behavior using Do until loop. Fortunately for me, I don't have 2nd approvals going to 1st. Below is my logic. I need to reassign task if document is not attached to ListItem. So Inside the Approve = Yes, I am checking if attachment is done or not. If attachment exist, I mark loopback as false to exit the loop. If attachment does not exist I mark assigned task to true so that it assigns again else it does not and keeps waiting for approval. You need to do something similar and play with Variables to generate loop. One more thing, do until runs on iterations so add a delay in each iteration, say 30 mins and set iterations to like 500 so that action does not time out until around 10 days during which approver can hopefully take action.
I am trying to explain concept so that you can build on top of that.
Like and Mark this as a solution if this resolves your issue.
Thanks for the advice, I worked on the problem some more and came up with the following solution.
I have also set the comments as string variables so that they can be passed between approval states.
Great. Glad you manage to put that up. Its really a complex thing and we definitely need stage feature urgently.