Awesome, I would like to do that. How do I set that up? I know how to create a list, a choice column, and a referenced Managed Metadata. But I don't know how to connect the them or how to reference that in the "Assigned to" box. I also don't know how to output the data into a multi-line field you referenced. I am a little tech savvy, but not an IT professional; just so you know my level of experience.
A good practice/test of what is being captured following the approval is to output every dynamic content option to a multi-line field somewhere until you're comfortable on what is being passed through.
To connect the list of approvers to your document library you just need a Flow that 'Gets items' from the approvers list and updates the current document if the approver fields are blank. I've had to put a delay into it to retry the update if the file is locked for editing (a simple 'Do until' action until the approver name is not empty).
For the 'Get Items' action to look at the approvers list, you would need to put a 'Filter Query' in the advanced options, for example:
Title eq 'Service Desk'
Logically thinking there might only be one entry in the list that has the name(s) of people who would be those approvers.
As for outputting all the captured 'Approval' information - simply create a new column (call it what you want) but specify it as a multi-line column. In the flow, after the approval, simply update/create a list entry with the multi-line field in it with all the Dynamic Content you want to see from the Approval action - you might see a lot of garbage, but it helps see the information coming out of the action. The only way is to test the flow run and expand the 'Approval' action - the data is all captured there too, but not so easy to read maybe - it's what your most comfortable in reading out examining really...
Could you be so kind to print the flow to set up this different approval based on the field "approval type"? I've tried but it is not working....
After getting the opportunity for some training from my database administrator, I am much clearer on this subject. The first thing we needed to do was to create custom columns as the above people suggested.
In my test library, I created a column called "Edit Type" (in your case "Approval Type") and made it as a choice menu within the column options. I also created a column called "Approver" as my approvers change depending on the document.
What this did for me in the flow was create dynamic content which I could reference in my approvals.
I then went to my flow creation and started with a blank flow. I placed my trigger as "When a file is created or modified (properties only)". My IT person then suggested using a switch control; I entered the newly available dynamic content based on my columns called "Edit Type Value". I was then able to tell the flow which path to take, based on which choice someone made; in my case they could choose either minor or major update.
For the minor case1 I told to send me an email with the below format.
For the Major case 2, I told the flow to look at the approver column. If the Approver column was a certain file type, and fit another custom parameter (in this case contained a semicolon) then the flow select YES - which I then had it start and wait for an approval. If those parameters were not met, it was to select NO and send me another email.
If neither of my specified cases fit the switch parameters, I just told the flow to send me an email.
My biggest confusion was how to set custom dynamic content, and the column creation does that for you. So if you create a column called "approval type", microsoft flow will automatically create dynamic content labelled "Approval Type" and "Approval Type Value". Then you can utilize it anywhere in that flow to reference that specific column for that specific Document library.
You would have to create the custom column in each library where approvals are necessary.
I hope this helps you as much as it helped me!
Well done @cphelps - looks and sounds like you've made some excellent progress, and learning new things as you go along. Keep going! Well done.
thanks a lot! After setting a specific parameter in my office 365 account and library that I was working on, the dinamic content "approval type value" was released and I could make it!
your flow is very interesting and helpful for others uses .. I might use in the future!
thanks again for your spending your time!
Thank you Scott! this worked beautifully though i would like to make it look better. Also if you want the response to show up as soon as one of the approvers makes them you need to put the update action inside of the loop
I'm in France and I trie to use your solution. My flow is OK but the formula doesn't work (tag <br>).
Maybe the version of Flow or formula isn't the same between US and France.
Could you help me about this problem.
Bonjour Camille, ça va?
When you say the formula doesn't work, do you mean the 'concat' function in the compose action? If so, try by deleting and carefully re-type the single quotes ' in the formula as these will often get replaced/changed to the wrong type of quote format that the application wont recognise.
Yep it's this formula :
concat('Valideur : ',item()?['responder']?['displayName'],' - Commentaires : ',item()?['comments'],'<br>',variables('AllResponses'))
I think that it's the quot <br> wich wrong. The information "Responder" or "Comments" are OK but in my SharePoint list the comments dont appear like this :
I tried to delete or shift the single quote ' but an error message appears saying that the formula is not valid
I tried all three forms of balise </br> <br> <br/> but none of them work like I want.
@CamilleB - I've checked a workflow of mine doing this previously and I found a simpler option that is clearer to understand. Instead of composing the responses all within the same expression line, I broke it down - the first one into HTML output, and the second to join them all together. The example below shows the correct formatting of the line break also - hope that helps!
The expression I'm using is:
Also note in the expression - the join is on the custom name from the previous 'Compose' action - ie: it is bespoke to what I've named the action - if that's not instantly clear what is going on? 😉
This is my flow (in french sorry), i repeat this 3 times because i have 3 approvers.
So i tried your solution but i cannot because i have successive approval and i use string in the "Initialize the variable".
@CamilleB - thanks - are you saying you're repeating that loop 3 times? If there's a reason to do that, then thats fine, but in my Flow/Automate I've parsed all of the users email addresses into a variable, and used that variable in the approval. It's more efficient than running around the same task 3 times.
The names are little hard to understand, but I think I can get the action icons. I can't see what's inside the 'Do Until' loops, so it's hard to give an answer that will help I'm afraid. The one thing I can see that you're not doing is any kind of condition on approve or reject - is that lower through the Flow?
Sorry if this doesn't help much.
We are excited to announce the launch of Power Virtual Agents Community. Check it out now!
We've updated and improved the layout and uploading format of the Power Automate Cookbook!
Fill out a quick form to claim your user group badge now!