cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
AllanMartins
Advocate II
Advocate II

Dynamic Approval workflow based from a Share Point list

Hey there,

 

I do have two lists in Sharepoint:

 

List A

[Requisition];[Status]; [Date]

Req-01;Pending;2017-05-04

Req-02;Pending;2017-05-05

Req-03;Pending;2017-04-04

 

and another

 

List B

[Requisition]; [Approver];[Order]

Req-01;myname@email.net;1
Req-01;anapprover@email.net;2
Req-01;superapprover@email.net;3
Req-02;myname@email.net;1
Req-02;anapprover@email.net;2

 

Basically, I would like to send an email for each Approver (from List B), where each recipient would get an O365 Approval Email (in the order: so, the 1st approver would get, and routes to the 2nd after his approval, and so on, if anyone rejects, the process is suspended and will not proceed to the next person), at the of the process, it just updates the List A with either "Approved" or "Rejected".

 

can anyone think in a smart way to get it to work?

 

 

I have been using Flow/PowerApp for a while, so I could manage to get it working by creating a "cascading/nested", but in this case I had to create every single action for all the scenarios (I did for the case of 3 approvers, not more than that), so I did a first Select Case, where if it is 1 approver, where updates the SP List with his response

 

In case of two approvers, if the first Accepts, sends to the 2nd for response, and then updates the SP accordingly finishing the process.

 

For the 3 approvers, the same thing, but adding another step of case boxes above.

 

However... I would like to give it some flexibility as this could have up to 10 approvers! surely, I could just go, design the flow, add a first set of 10 cases boxes and design each nest case by case, but on the 3 approvers solution, the flow just became too slow to Edit, and it crashes the browser constantly - check the size it gets!! I could even expand it more...FlowCapture.PNG (I believe this could be due to the ammount of variables) so I assume this idea is not very appropriate, and plus, would give a lot of headache when trying to make any change on it.

 

Any help on this case is much appreciated!!

 

3 REPLIES 3
v-micsh-msft
Community Support
Community Support

Hi @AllanMartins,

 

I think the point here is the flow need to send Approval Email based on the previous Approval Email Action result.

There are some limitations within the current flow:

For example,  the Approval Email can't be added within an Apply to Each,  an Apply to each can't be nested with another Apply to each.

So the proper way here is what you have done, select one Approval after another.

Regards,

Michael

 

Community Support Team _ Michael Shao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Anonymous
Not applicable

Good day ,

 

Can you perhaps send an example of how to do it please? I need to create a Flow with 3 approvers (if 1 approves it goes to the 2nd and 3rd etc)

 

many thanks

 

That is how I managed to do it:

First, created a Sharepoint List where all Items are store, one of the columns I have a unique ID to make sure I keep track of it. Let's call it "MainList"

Then, I created a second Sharepoint List, where it contain all the approvals handling, we'll call it "Approvers"

It would be something like that:

MainList
- PKUniqueID
- Type
- Total

 

Approvers
- FKUniqueID
- TriggerFlow
- ApproverOrder
- ApproverName
- ApproverEmail
- Status

 

 

 

The MainList contains all relevant information, while the Approvers has the referenced approvers information. The benefit of this solution, is that I managed to have a "dynamic" Approvers list that will suit any quantity of Approvers, having just one or even 20 (I tested!) it simply works.

Here is a sample of the data for these two Sharepoint Lists

 

EXCEL_2017-11-12_20-43-11.png 

Now, the Flow portion of the process:

I created a flow where the trigger is "When a Sharepoint Item is changed", and indicated the Approvers list. Now, everytime a item is created or changed, it runs the process, and now it's the most complex part of it and I will try to explain it:

1. Trigger Checks if the flow is to be run, or not (this is useful as a lot of data is added or changed on that list)
 1.1 If is set to false, then it does nothing and stop the flow
 1.2 If is true, then move to the next step (2)...

 

2. List all the Items from that same list, which has the same FKUniqueID: this will generate a list of all the Approvers associated to that process. Ordering then by the ApproverOrder, and counting only those where the Status is blank is important to make it work properly

 

3. Then, it takes the first item from the previous list, that item will indicate the recipient of the approval: if it is the first run of this process, then it should email the ApproverEmail value from the ApproverOrder = 1. It emails the indicated address prompting for the input (either Reject or Approver, or any other action you define)
 3.1 If the Approver Rejects, it updates the item's TriggerFlow value from TRUE to FALSE (the same that Triggered the Flow), Status to "Rejected", and then it wont run anything else, Recommend to send the user a notification so he knows the status
 3.2 If it is Approved, it updates the item's TriggerFlow value from TRUE to FALSE (the same that Triggered the Flow), and Status to "Approved", then move to the next step (4)...

 

4. Check if this just changed item Order equals the Quantity (based on Count) of Items generated on the item 2, it will indicate if this is the last Approver or not
 4.1 If the ApproverOrder = Count, then it was the last Approver, then it finishes the process (indicating it was approved!)
 4.2 If the ApproverOrder <> Count, then there are still Approvals pending for this Requistion, so it move to the step (5)...
 
5. Based on the query generated on the item 2, it takes the next Item (Where ApproverOrder = ApproverOrder+1) and change it's FlowTrigger value from FALSE to TRUE: it will run the same steps for the next Approver.
 (So, if it was the first Approval (ApproverOrder = 1), out of 3 approvers, it will update the item of the next Approver (where ApproverOrder = 2))

Here is a simply diagram I did for that, please, note it is simple and follows no standards:


 ApproverFlow.jpg
 

Some important notes for that:

- make sure to always check the flows, if you use a "O3365: Send an Approval Email" service, responses can be only given within 7 days, if not, the flow will fail (you can manage fails, but you should handle how it can adjust for your requirement)
- I recommend to generate any portion of the body (of the Approval Email) by using a Compose, it is handy! Then, you just add its output to the reffered action
- The trigger you design for this process will be executed for EVERY change on the Approvals Sharepoint List, make sure you change any item's TriggerFlow value to FALSE before making any "manual" change on it, otherwise, the recipient will get messages for any change done on this item...

 

I hope this can help you and bring a light to whatever you need to do. This was the only way I figured out to manage these approvals, otherwise, I would have to design a huge flow, with nested actions and handling all of these multiple approvers (I managed to do it with up to 5, but it just become too hard to make any change on it, the page crashes, takes a lot to do anything, and if you keep insisting, you end up corrupting your flow)

Helpful resources

Announcements

Super User of the Month | Chris Piasecki

In our 2nd installment of this new ongoing feature in the Community, we're thrilled to announce that Chris Piasecki is our Super User of the Month for March 2024. If you've been in the Community for a while, we're sure you've seen a comment or marked one of Chris' helpful tips as a solution--he's been a Super User for SEVEN consecutive seasons!   Since authoring his first reply in April 2020 to his most recent achievement organizing the Canadian Power Platform Summit this month, Chris has helped countless Community members with his insights and expertise. In addition to being a Super User, Chris is also a User Group leader, Microsoft MVP, and a featured speaker at the Microsoft Power Platform Conference. His contributions to the new SUIT program, along with his joyous personality and willingness to jump in and help so many members has made Chris a fixture in the Power Platform Community.   When Chris isn't authoring solutions or organizing events, he's actively leading Piasecki Consulting, specializing in solution architecture, integration, DevOps, and more--helping clients discover how to strategize and implement Microsoft's technology platforms. We are grateful for Chris' insightful help in the Community and look forward to even more amazing milestones as he continues to assist so many with his great tips, solutions--always with a smile and a great sense of humor.You can find Chris in the Community and on LinkedIn. Thanks for being such a SUPER user, Chris! 💪 🌠  

Tuesday Tips: Community Ranks and YOU

TUESDAY TIPS are our way of communicating helpful things we've learned or shared that have helped members of the Community. Whether you're just getting started or you're a seasoned pro, Tuesday Tips will help you know where to go, what to look for, and navigate your way through the ever-growing--and ever-changing--world of the Power Platform Community! We cover basics about the Community, provide a few "insider tips" to make your experience even better, and share best practices gleaned from our most active community members and Super Users.   With so many new Community members joining us each week, we'll also review a few of our "best practices" so you know just "how" the Community works, so make sure to watch the News & Announcements each week for the latest and greatest Tuesday Tips!This Week: Community Ranks--Moving from "Member" to "Community Champion"   Have you ever wondered how your fellow community members ascend the ranks within our community? What sets apart an Advocate from a Helper, or a Solution Sage from a Community Champion? In today’s #TuesdayTip, we’re unveiling the secrets and sharing tips to help YOU elevate your ranking—and why it matters to our vibrant communities. Community ranks serve as a window into a member’s role and activity. They celebrate your accomplishments and reveal whether someone has been actively contributing and assisting others. For instance, a Super User is someone who has been exceptionally helpful and engaged. Some ranks even come with special permissions, especially those related to community management. As you actively participate—whether by creating new topics, providing solutions, or earning kudos—your rank can climb. Each time you achieve a new rank, you’ll receive an email notification. Look out for the icon and rank name displayed next to your username—it’s a badge of honor! Fun fact: Your Community Engagement Team keeps an eye on these ranks, recognizing the most passionate and active community members. So shine brightly with valuable content, and you might just earn well-deserved recognition! Where can you see someone’s rank? When viewing a post, you’ll find a member’s rank to the left of their name.Click on a username to explore their profile, where their rank is prominently displayed. What about the ranks themselves? New members start as New Members, progressing to Regular Visitors, and then Frequent Visitors.Beyond that, we have a categorized system: Kudo Ranks: Earned through kudos (teal icons).Post Ranks: Based on your posts (purple icons).Solution Ranks: Reflecting your solutions (green icons).Combo Ranks: These orange icons combine kudos, solutions, and posts. The top ranks have unique names, making your journey even more exciting! So dive in, collect those kudos, share solutions, and let’s see how high you can rank!  🌟 🚀   Check out the Using the Community boards in each of the communities for more helpful information!  Power Apps, Power Automate, Copilot Studio & Power Pages

Find Out What Makes Super Users So Super

We know many of you visit the Power Platform Communities to ask questions and receive answers. But do you know that many of our best answers and solutions come from Community members who are super active, helping anyone who needs a little help getting unstuck with Business Applications products? We call these dedicated Community members Super Users because they are the real heroes in the Community, willing to jump in whenever they can to help! Maybe you've encountered them yourself and they've solved some of your biggest questions. Have you ever wondered, "Why?"We interviewed several of our Super Users to understand what drives them to help in the Community--and discover the difference it has made in their lives as well! Take a look in our gallery today: What Motivates a Super User? - Power Platform Community (microsoft.com)

March User Group Update: New Groups and Upcoming Events!

  Welcome to this month’s celebration of our Community User Groups and exciting User Group events. We’re thrilled to introduce some brand-new user groups that have recently joined our vibrant community. Plus, we’ve got a lineup of engaging events you won’t want to miss. Let’s jump right in: New User Groups   Sacramento Power Platform GroupANZ Power Platform COE User GroupPower Platform MongoliaPower Platform User Group OmanPower Platform User Group Delta StateMid Michigan Power Platform Upcoming Events  DUG4MFG - Quarterly Meetup - Microsoft Demand PlanningDate: 19 Mar 2024 | 10:30 AM to 12:30 PM Central America Standard TimeDescription: Dive into the world of manufacturing with a focus on Demand Planning. Learn from industry experts and share your insights. Dynamics User Group HoustonDate: 07 Mar 2024 | 11:00 AM to 01:00 PM Central America Standard TimeDescription: Houston, get ready for an immersive session on Dynamics 365 and the Power Platform. Connect with fellow professionals and expand your knowledge. Reading Dynamics 365 & Power Platform User Group (Q1)Date: 05 Mar 2024 | 06:00 PM to 09:00 PM GMT Standard TimeDescription: Join our virtual meetup for insightful discussions, demos, and community updates. Let’s kick off Q1 with a bang! Leaders, Create Your Events!  Leaders of existing User Groups, don’t forget to create your events within the Community platform. By doing so, you’ll enable us to share them in future posts and newsletters. Let’s spread the word and make these gatherings even more impactful! Stay tuned for more updates, inspiring stories, and collaborative opportunities from and for our Community User Groups.   P.S. Have an event or success story to share? Reach out to us – we’d love to feature you!

Tuesday Tips: Community Blogs--A Great Place to Start

  It's TUESDAY, so it's time for an all-new TUESDAY TIP.    This ongoing series of posts is our way of communicating helpful things we've learned or shared that have helped members of the Community. Whether you're just getting started or you're a seasoned pro, Tuesday Tips will help you know where to go, what to look for, and navigate your way through the ever-growing--and ever-changing--world of the Power Platform Community! We cover basics about the Community, a few "insider tips" to make your experience even better, and share best practices gleaned from our most active community members and Super Users. Make sure to watch the News & Announcements each week for the latest and greatest Tuesday Tips!   THIS WEEK: COMMUNITY BLOGS One of the highlights of the Power Platform Community is the very active Community Blog. Whether you're working mostly with Power Apps, creating flows in Power Automate, unlocking the power of Copilot Studio, or building websites with Power Pages, each Community has its own, dedicated blog that is written by--and for--our Community members!When you have a question and aren't sure how to ask it, or when you're looking for a solution to a particularly vexing problem, what you're looking for may already have been written about by someone who has faced the issue--and found an answer! Our blogs are written by both Super User pros and by low-code rookies, because it doesn't matter how long you've been part of Power Platform or the Community. What matters is whether or not you have a solution that can be shared to people who really need the help.   With new blog posts released several times a week, you never know what answer you will find. And the blogs are a great place to discuss what works, share what you may have found yourself, and build connections with other Community members facing similar questions or concerns! We are so grateful for the awesome group of bloggers who share their tips, knowledge, and skills. It's been exciting to see so many new Community members join the blog since last fall.Check Out the Community Blogs Today: Power Apps Community BlogPower Automate Community BlogCopilot Studio Community BlogPower Pages Community Blog There's so much more you'll discover in the Community Blogs, and we hope you'll check them out today!  Interested in blogging? Click here & message your Community Managers today to get started.

February 2024 Community Newsletter

Welcome to our February Newsletter, where we highlight the latest news, product releases, upcoming events, and the amazing work of our outstanding Community members. If you're new to the Community, please make sure to follow the latest News & Announcements and check out the Community on LinkedIn as well! It's the best way to stay up-to-date in 2024 with all the news from across Microsoft Power Platform and beyond. Are you ready to "Leap" in to all we've got to share today?   COMMUNITY HIGHLIGHTS Check out the most active community members of the last month! These hardworking members post regularly, answer questions, kudos, and provide top solutions in their communities. We are so thankful for all your great work in January, and we can't wait to see who will be our most active members next month!   Power AppsPower AutomateCopilot StudioPower PagesWarrenBelzWarrenBelzPstork1saudali_25LaurensMPstork1stephenrobertLucas001AARON_ClbendincpaytonSurendran_RANBNived_NambiarMariamPaulachanNikhil2JmanriqueriosANBJupyter123rodger-stmmbr1606Agniusstevesmith27mandelaPhineastrice602AnnaMoyalanOOlashynBCLS776grantjenkinsExpiscornovusJcookSpongYeAARON_CManishSolankiapangelesPstork1ManishSolankiSanju1Fubar   There was a lot of activity in the Community in February! Did you miss anything? Here are just a few of the announcements and updates we shared: Super User Season 1 is HereFebruary 2024 User Group Update: Welcoming New GroupsCelebrating a New Season of Super UsersCheck out the February 2024 Dynamics NewsletterAnnouncing Copilot Cookbook GallerySuper User of the Month D. PoggemannTuesday Tips: Getting Started in the Community The best way to not miss them is to make sure you're subscribed to your community's News & Announcements. Subscribe today and don't miss anything next month! Power Apps News, Power Automate News, Copilot Studio News, Power Pages News Copilot Cookbook for Power Apps The all-new Copilot Cookbook is now available in the #PowerApps Community - offering a wide array of best practices on how to use Microsoft Copilot to develop and create in Power Apps.   The #CopilotCookbook is your new go-to resource when you need inspiration (or when you're stuck!) and aren't sure how to best partner with Copilot. So, whether you're looking for the best prompts or just want to know about responsible AI use, you can visit the Copilot Cookbook for regular, high-quality content that you can rely on. Our team will be reviewing posts using the new "Copilot " label to ensure we highlight and amplify the most relevant and recent content, so you're assured of high-quality content every time you visit. If you share a post that gets featured in the curated gallery, you'll get a PM in the Community to let you know!   The curated gallery is now ready for you to experience, so click the image below and check out the all-new Copilot Cookbook for Power Apps today. We can't wait to see what you "cook" up! 👨🍳       Power Platform Dev Weekly Celebrate 200th Episode Congratulations to Danish Naglekar, Anwesha Sharma, Matt Beard, Mark Carrington Carl Cookson and the team, as they celebrated the 200th episode of Power Platform Dev Weekly in February!   Click the image below to check out this landmark episode, featuring content from the likes of Nati Turtledove, Matthew Devaney, Inogic, Mohamed Ashiq Faleel, Mike Hartley, Nishant Rana, James Yumnam, Carl Cookson, Yannick Reekmans, Deepesh Somani, and many more.       "Get Started With" Power Platform Shorts Series This month we launched our new 'Get Started With' series on YouTube - a selection of sweet snapshots to keep you in the loop with all the latest Copilot trends that you can try out through advice at Microsoft Learn. Click the image below to check out the entire playlist so far, and don't forget to subscribe to our YouTube channel for all the latest updates.     UPCOMING EVENTS Canadian Power Platform Summit - Vancouver - 16th March 2024 Check out the first ever Canadian Power Platform Summit, which takes place at Microsoft Vancouver office on Saturday 16th March 2024! Get ready to immerse yourself in the ultimate Power Platform experience at the #CPPS24. This event is tailored for makers, developers, students and tech enthusiasts eager to explore the depths of Power Platform technologies. With sessions ranging from beginner-friendly to advanced-intermediate, this event offers a diverse range of insights for attendees of all levels.   There's a great range of speakers, including the likes of Lisa Crosbie, Matthew Devaney, Ulrikke Akerbæk, Oleksandr Olashyn, Mark Smith, Jake Harvey, Manju Gurjar, Adam Tobias, Mats Necker, Natasza Kosakowska, Linn Zaw Win, Salim Adamon, Tomas Prokop, Maxim Nikonov, and many more.   Great work by Chris Piasecki, Éric Sauvé, Nick Doelman, Scott Durow, Victor Dantas and the team for putting this amazing event together. So, whether you're a seasoned pro or a rising star, click the image below to join the Microsoft Community in Canada to gain practical insights, discover real-world examples, and take away actionable skills to boost your expertise.   Business Applications Launch Event - Virtual - 10th April 2024 Registration is now open for the Microsoft Business Applications Launch event which kicks off at 9am PST on Wednesday 10th April 2024. Join Microsoft product leaders and engineers for an in-depth look at the latest news and AI capabilities in Power Platform and #Dynamics365, featuring the likes of Charles Lamanna, Sangya Singh, Julie Strauss, Donald Kossmann, Lori Lamkin, Georg Glantschnig, Mala Anand, Jeff Comstock, and Mike Morton.     Microsoft Fabric - Las Vegas - 26-28th March 2024 Exciting times ahead for the inaugural #MicrosoftFabric Community Conference on March 26-28 at the MGM Grand in Las Vegas! The conference will cover all the latest in analytics, AI, databases, and governance across 150+ sessions, with guest speakers including Arun Ulag, Amir Netz, Jessica Hawk, Eric Boyd, Kim Manis, Adam Saxton, Patrick LeBlanc, Bob Ward, Wangui McKelvey, Wee Hyong T., Justyna Lucznik, Priya Sathy, Mehrnoosh Sameki, Rachel Shepard, Karthik Ravindran, Jason Himmelstein, and many more.   On-site there will be a special Community Lounge, interactive learning labs, plus you'll be able to 'Ask the Experts' all your questions to get help from data, analytics, and AI specialists, including community members and the Fabric Customer Advisory Team. Click the image below to find out more about the ultimate learning event for Microsoft Fabric!   If you'd like to learn how the latest advances in AI and how #MicrosoftCopilot can help you streamline your processes, click the image below to register today!       LATEST COMMUNITY BLOG ARTICLES Power Apps Community Blog Power Automate Community Blog Copilot Studio Community Blog Power Pages Community Blog Check out 'Using the Community' for more helpful tips and information: Power Apps, Power Automate, Copilot Studio, Power Pages

Users online (4,172)