Flow Designer: Multiple Approvals at the Same Time

A_Nelson
Kilo Expert

Hello!

I am attempting to create a Request that a user can select multiple software from a list collector. If a user selects 3 different Software Models, I want it to send to all 3 of the Product Owners at the same time. As I currently have it, the approval only goes one software at a time and requires one Software Model Product Owner to approve before it will kick off for the next Product Owner. 

I tried moving the Approval out of the For Each loop, but once the loops is done, it says "not run" but I am also thinking that I am doing that completely wrong.

Any help is appreciated!

----------------------------------------------------

find_real_file.png

----------------------------------------------------

find_real_file.png

9 REPLIES 9

Hansolo
Tera Contributor

I think you might need to use "Do the following in Parallel. I'm not sure if you will be able to do the for each inside of here, but you can use this to have multiple approval types at the same time. i.e. 1 approver from this list or 2 approvers from this list. Hopefully this helps.

find_real_file.png

Mitch7
Tera Contributor

I have a somewhat similar situation. I have three options in the catalog item to update three fields on a record. Each of them need to be approved by different managers. I got it set up with the Parallel logic in Flow Designer so all three Approvals show up at the same time.

The issue I have now is that once one of them approves it, it gets approved for all of them. I need each one to approve their part before any update is actually done. I can't have one of the three approve and then all three fields get updated.

Is there anyway to make the Flow wait for all of the approvals to be either accepted or rejected?

Edxavier Robert
Mega Sage

Hi, I have the same issue. Did you find a solution for this?

I actually ended up using a script to populate the required approval rules. The requirements were:

1. Only 1 of the "approvers_one" list of users needs to approve.

2. OR 2 of the "approvers_two" list needs to approve.

3. OR ALL of the "approvers" list need to approve.

This was the code I used to populate the "Rules" field in the "Ask for Approval" flow activity.

 

 

var approvals = '';
if (fd_data._3__look_up_record.record.approvers_one) {
    approvals += 'ApprovesAnyU[' + fd_data._3__look_up_record.record.approvers_one + ']';
    approvals += 'OrRejectsAnyU[' + fd_data._3__look_up_record.record.approvers_one + ']';
}
if (fd_data._3__look_up_record.record.approvers_two) {
    if (fd_data._3__look_up_record.record.approvers_one) {
        approvals += 'Or';
    }
    approvals += 'Approves2#U[' + fd_data._3__look_up_record.record.approvers_two + ']';
    approvals += 'OrRejects2#U[' + fd_data._3__look_up_record.record.approvers_two + ']';
}
if (fd_data._3__look_up_record.record.approvers) {
    if (fd_data._3__look_up_record.record.approvers_one || fd_data._3__look_up_record.record.approvers_two) {
        approvals += 'Or';
    }
    approvals += 'ApprovesAllU[' + fd_data._3__look_up_record.record.approvers + ']';
    approvals += 'OrRejectsAllU[' + fd_data._3__look_up_record.record.approvers + ']';
}
return approvals;

 

Most of the time, there aren't any records in just "approvers" so we end up with something similar to this as the rules string:

ApprovesAnyU[sys_ids]OrRejectsAnyU[sys_ids]OrApproves2#U[sys_ids]OrRejects2#U[sys_ids]

Hopefully this helps someone else.

Drew Carpenter
Tera Expert

I'm up against this same roadblock - is there any progress on OP's original issue?

User requests addition to 1 or many groups...
Approval is required for each group, not the entire RITM. 
All approvals need to be generated at the same time.