cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
bdomzalski
Frequent Visitor

Cancel approval in CDS and "Wait for an approval" action

Hi,

Is there a way to programmatically cancel an approval in a way that it will make an action "Wait for an approval" detect it and move forward (get the result)?

I have an approval process that spans across multiple departments. There are multiple people within each department there are responsible for the approvals. Only the first response from department matters. If any of the departments reject I want to cancel all the other departments pending approvals.

For canceling I use the CDS connector action "Update a record" as in the picture below but the other flow is still hanging at "Wait for an approval" action.

Spoiler
Cancel approval using CDS updateCancel approval using CDS update

 

Regards,

Bartosz Domżalski

2 REPLIES 2
v-litu-msft
Community Support
Community Support

Hi @bdomzalski,

 

Could you please share the end of the first Flow and the start of second Flow?

 

If you are using HTTP request to pass these value to second Flow, you could pass Identifier of the Updated item, then create a branch as below:

 

Initialize an array variable to store these StageValues, then wrap Get record and delay actions, create a loop to check the status, if it contains "Complete", means there is already responded by a user or updated by you. Then do next steps.

Annotation 2020-06-10 163920.jpg

 

Annotation 2020-06-10 163954.jpg

 

Annotation 2020-06-10 164003.jpg

 

Best Regards,
Community Support Team _ Lin Tu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Hi @v-litu-msft,

 

My design was to have one flow (Department approval) which handles each approval separately and stores responses at SharePoint list and the second (Finalize department approval) which decides if the whole approval process is completed and based on the result executes proper actions.

Below are simplified (maybe even oversimplified) versions of those flows.

Spoiler
Department approvalDepartment approvalFinalize department approvalFinalize department approval

If I understand your solution correctly actions which should be done when we got approval response followed by "Terminate" must be repeated in both branches: after "Wait for an approval" and CDS "Get record". Otherwise even if we detect completion of approval we would still need to wait for action in the other branch (wait or delay) to end/timeout.

Or you suggest to completely replace "Wait for an approval" with the "manual" checking for status using CDS?

Or maybe there is a way to continue common steps (single action/path for both branches) as soon as the quicker of the parallel branches execution ends?

 

Kind regards,

Bartosz Domżalski

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

Welcome Super Users.jpg

Super User Season 2

Congratulations, the new Super User Season 2 for 2021 has started!

Carousel 2021 Release Wave 2 Plan 768x460.jpg

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

Top Solution Authors
Users online (2,214)