I'm working on a project that involves help request management. Here's the idea:
An instructor submits a help request through a form of some kind. A small group of managers review the request and sends it to one or more "faculty mentors" (based on the help category in the request). Those mentors can either "accept" the request or "pass" on it. Once it's been accepted by one of them, none of the others can accept it. A bonus (but not required at this point) would be a way to capture who "passes" each request.
My first thought was to do this with the Approval action using custom responses of "Accept" and "Pass". Also, given the "first come, first serve" factor, I'd use the "Wait for one response". Now, the issue is that if that first response is "Pass", then the Approval is "complete" without it being taken. So, to avoid that, I tried having just one response "Accept". The problem there is that since there is only one response option, it doesn't appear in the Approval message. This would technically work, but would be confusing to the mentors, I think. The "Wait for all responses" option is out because there will be some cases where someone doesn't respond, and we don't want to hold up the entire process due to that.
Really, what I think I need for this (and I'm not sure it's possible) is another Approval completion option like "Wait for first [Accept] response". That is, if an Approver selects "Pass", don't "complete" the Approval, but once an Approver selects "Accept", complete it.
I recall when SharePoint 2013 came out, the "Approval Task" feature in workflows had some capabilities we don't have in Power Automate Approvals. For example, you could wait for a certain percentage of people to act on a task and then define what would happen. So, if a task was assigned to 10 people, wait for 5 responses and then if a majority were Approve, it's approved, or if the majority were Reject, it's rejected. With Power Automate Approvals, it's either "wait for the first response" or "wait for ALL responses" without any options in between. Granted, there are few situations where those two cases aren't adequate, but I'm looking at one of them right now.
@ChadVKealeyYou were on the right path with the Wait for one response approval type. Wait for one response does not necessarily mean wait for first response. You can specifyall the possible responses and use the "Switch" function to specify what actions happen depending on the response gotten. See documentation below.
I've read the documentation. In all of the tests I've done using that option, once someone responds (regardless of the option chosen) the Approval itself is "closed". So, once someone selects Pass, nobody else can respond. Am I missing something?
So, to better explain what I'm trying to do, I built a test flow and recorded this short video. I got the idea to do individual approvals inside an Apply to each loop from Dr. Flow (Serge Luca) in this blog post.
As explained in the video, the issue with how I have this structured is that it will keep resending the Approval to the same Approver over and over until they provide the "right" response. I'm not sure how else to wait/check for a specific response to the Approval other than using a Do until loop.
Dive into the Power Platform stack with hands-on sessions and labs, virtually delivered to you by experts and community leaders.
Watch Nick Doelman's session from the 2020 Power Platform Community Conference on demand!
Check out the community blog page where you can find valuable learning material from community and product team members!