Flow designer sequential approvals
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-20-2021 11:34 AM
I am trying to create sequential approvals using the flow designer so that I can have multiple levels of approval on a single catalogue item.
In the legacy workflow, I can create multiple approval steps without impacting the parent RITM record, and I can then set the approve or reject value based on the outcome of those actions.
With the flow designer, when the first approval is approved, the flow sets the approval field on the RITM to "Approved", then changes it back to "Requested" when the next approval in the sequence is generated. I have tried removing the "Approval field" from the action config but this hasn't made any difference. This is of course unacceptable behaviour because we will have multiple updates for approved and requested on the RITM...the RITM approval field should only update once all approvals in the sequence have been approved or rejected.
How can we achieve this behaviour with flow designer?
I have seen this forum post which about the same issue but the solutions in the replies are unfortunately not working:
https://community.servicenow.com/community?id=community_question&sys_id=00d918b1db63941011762183ca96199c
Cheers
- Labels:
-
flow designer
-
Workflow
- 4,616 Views

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-03-2023 12:01 AM
Indeed, flow designer approvals work a bit different then good old workflows. We are aware of that and will update this feature somewhen in the future.
For now you basically have a few options to make it work.
A) Use separate approval fields
The Approval step has a setting which field is storing the approval state. It defaults to the 'Approval' field on task table. You can create additional fields and point every approval step to another field. Like one 'Manager Approval', 'Department Approval' etc. Each step has to configured to use the respective field.
B) Use separate catalog tasks
For each approval create a new catalog task first and run the approval there. This way you basically use the same idea as in 'A', but separate on new records.
C) Combine the needed approvals in one step
Instead of using multiple approval steps just use one step only. You might need to use some scripting in that one to collect all approvers (users and groups) as you need them. Check out this excellent blog on how-to:
Scripted Approvals in Flow Designer with Flow Vari... - ServiceNow Community

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-03-2023 06:33 AM
Thank you for this response, Daniel.
Looking forward for future versions to have a better approach for this.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-05-2023 10:47 PM
Thanks for sharing Daniel 🙂
Regarding option A:
I have tried removing the approval field in the first approval (line manager) so that the RITM would not be updated when the first approval is run - it did not work. RITM still gets "approved" briefly and then moved back to "requested"
Removing the approval field also might have a drawback - what if the first approver (line manager) rejects the approval - then the RITM might not get changed to "Rejected"
Do there always have to be an approval field ? as you state "use another field" - why not just empty the field in the flow ?
Regards
Søren

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-05-2023 11:06 PM
Yes, you do need an approval field - i guess without one it just falls back to the standard internally.
Your logic to stop the process once one 'reject' happened needs to be built into the flow with some if conditions.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-06-2023 07:05 AM
Hi Daniel
I still cannot get it to work.
Below is how my line manager approval is set up:
... but the RITM approval field is still updated when it should not:
strange thing is that my new approval field "LEO Approval" which is just a string field is also updated to "approved" - which I would expect.
Any suggestions ?
Regards
Søren Jarnbo