Help with Approvals in service catalogs

divay
Giga Contributor

Hi All,

I have a requirement to create a variable that allows users to select multiple choices. Based on each selected choice, approval requests need to be sent to different groups. For example, if a user selects choices , approvals should be triggered for the corresponding groups mapped to those choices.

The approval logic is as follows:

  • If any one of the groups approves, the RITM should be approved.
  • If all groups reject, the RITM should be rejected.

To achieve this, I have:

  • Created a Lookup  variable referencing the Question Choice [question_choice] table.
  • Used a For Each loop to process the selected choices.
  • Used a Decision Table to identify the corresponding assignment groups for each choice.

The challenge I am facing is with the Ask for Approval action. When used inside the flow, it waits for each approval request to be completed (approved or rejected) before proceeding. However, my requirement is to send approval requests to all relevant groups simultaneously and then proceed as soon as:

  1. Any one group approves, or
  2. All groups have rejected.

Has anyone implemented a similar approval pattern in Flow Designer or can suggest the best approach to achieve this?

 

 

1 REPLY 1

vaishali231
Mega Sage

Hey @divay 

I would recommend the following approach:

  1. Retrieve all selected choices from the multi-select variable.
  2. Use a Decision Table to identify the corresponding approval groups.
  3. Remove duplicate groups to ensure each group receives only one approval request.
  4. Trigger approval requests for all identified groups simultaneously using an asynchronous approach.
  5. Create a separate Flow to monitor approval responses.
  6. Configure the approval conditions:

                   If any one group approves, approve the RITM and cancel the remaining pending approvals.

                   If all groups reject, reject the RITM.

7. Use the existing sysapproval_approver table to track and manage approval records.

Recommendation: Avoid using the Ask for Approval action inside the For Each loop, as it waits for individual approval responses and can lead to sequential execution.

*************************************************************************************************************************************

If this response helps, please mark it as Accept as Solution and Helpful.

Doing so helps others in the community and encourages me to keep contributing.

Regards

Vaishali Singh
Linkedin - https://www.linkedin.com/in/vaishali-singh-2273361bb