When Approver(s) need to do more than click the approve button
Whether its approving expenses or document control, approval steps can be more complicated than clicking an approve/deny button. I have had several instances where Approvers need to do more than click and Approve/Deny button — several need to contribute data to the original requestor or choose which step is next in the process.
In these cases, you have a choice to create a task list in SharePoint or using the Approval option in Power Automate to navigate approvals, or a Status column in the original request works excellent as well.
When I choose to have a separate list for tasks – I’m probably doing it for the below reasons – (I use a parent-child relationship between the lists and have a column to reference the Request ID)
- Easy to reassign an Approver mid-flow (when you are not the one it is assigned too – think Admins)
- Different Approvers for different items
- Multiple Approvers for a single-stage
- Manually assign approvers
- Capture information history of the flow – Many customers want to maintain a history, and this is the easiest way to keep it up to date for them. Comments
- Time of the Approval
- What type of Approval
- Who approved
- Etc – Whatever you want to capture you can
Getting the Data
Does your Approver need to add additional information to the request?
Say we have time-off requests, and your managers need to be able to add rates of pay, budget codes, etc.
A simple Approve Deny is not enough to complete this stage. How do you make it easy for your requester and Approver to move through each step?
1. Build the columns you need into the original list. (You can hide the columns or not include in the requesters’ forms)
2. Add a deep link to the app in the Approver Email – by using the item id you can have the app load the request dynamically. I have referenced the below post each time I have used this logic. https://powerapps.microsoft.com/en-us/blog/powerapps-deep-linking/
On the form, you can load the current request by parsing the URL and then showing the data cards you need for the Approver.
3. Save the Data
Approve/Deny/Complete the Item
Power Automate Approvals – For some, you can have the ‘Approver’ navigate back to the email to click the approve button using flow approvals
Task List Approvals – Ensure you have the deep link load the task list item as well so that when the requested data is changed to can update the task item at the same time.
Change Status of Request – You can have predefined Status Changes by having the default Status selection already defined in the PowerApp form that was linked to, and you can hide the data card or leave it available for your Approver to change the status manually.
Then once the item is triggered into the Flow – I often use a switch for approvals to ‘funnel’ the automation based on where we are in the process. I have used this to filter based on status or approval type, is this legal, hr, director (tracking this in the approval list)? Filter Approval type and update the request in Power Automate accordingly.
My Power Automate Pro Tip: Flow triggers vary, but often with deep linking apps, I will use a PowerApp button to trigger the flow. (Using a PowerApp button can require more configuration than utilizing the standard created or modified – but the response time is worth it in most cases). Custom applications are becoming more common within organizations because they are getting easier and easier to build.
Need Help Building a Custom Application?
Klarinet Solutions specializes in enhancing system performance, optimizing user experience and developing streamlined processes that support business objectives.
With Microsoft PowerApps, we find we are building all different types of applications – from social apps to business apps paired with Microsoft Power Automate. We implement easy-to-use solutions that can be accessed within Microsoft Teams or SharePoint pages on tablets or mobile phones.
To find out more about our services or if you need help with PowerApps or Power Automate, let’s chat. Contact us today to get started.