web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Automate / Microsoft Form - Uses ...
Power Automate
Answered

Microsoft Form - Uses Case - Status Update for Orders

(0) ShareShare
ReportReport
Posted on by 27

Hi all,

 

I have a SharePoint list in which orders for contractors are stored. I would like to retrieve the status of each order using PowerAutomate.

I was thinking that maybe Microsoft Form would be applicable here.

My idea: I would like that as soon as an order is entered in the SharePoint list, that an email with a Microsoft Forms survey is sent to the contractor concerned, confirming to me, for example, that he has accepted the order.

Once he has answered the Microsoft Forms surveys, I would like the answer to be added back to the affected job in my SharePoint list and updated.

Does anyone have any idea how I can set up such a flow? Is it even possible to do it this way? Best regards
Oktay

Categories:
I have the same question (0)
  • wskinnermctc Profile Picture
    6,519 Moderator on at

    I think all of that is possible, but the most difficult part will be to get the Contractor's form response to go directly to the affected job in the SharePoint list. The reason is due to needing a key/link/id or some way to reference the sharepoint list item to the contractor's form response.

     

    For example, lets say you have a SharePoint list item for a job. The list item id is the number 8, which is the automatic ID applied to sharepoint list items. An automatic email flow is sent from ListItem 8 to go to the contractor.

     

    You could send an email to the contractor with the ID number in the email and a link to the form. In the form, there would be a question about, "What ID number of the item from the email?" Where the contractor would put the number 8 in the form. Then when the flow is triggered off that form response, it could look up the list item ID 8 and then update that specific item.

     

    I think you can see how prone to error that would be. It would be great if every contractor put the correct Item ID number from the email, but that's wishful thinking.

     

    You would need some kind of ID/Reference to be input by the contractor on their form that could be used to lookup the specific item and then update it.

     

    The flow/s are relatively simple, but the issue will be linking back to the item since you are dependent on a form response input.

  • Oktay Profile Picture
    27 on at

    @wskinnermctc 

    Thank you for your reply.

    I think there is only the way that the contractor manually enter the ID number. Assuming I would want to go this way, what would a flow look like for this?

    There are some videos in your the reception and the data transfer is described. But the start of the process in a flow I could not find until now.

  • Verified answer
    wskinnermctc Profile Picture
    6,519 Moderator on at

    Alright @Oktay  I made an example.

     

    This has 2 flows. Flow 1 triggers when an item is created in the orders SharePoint list and sends an email to the contractor. Flow 2 triggers when a form is submitted and will verify the submission information and then update the item in the orders SharePoint list.

     

    Flow 1 - Create Email - OverviewFlow 1 - Create Email - Overview

    Flow 1 is pretty straightforward. It just needs to send an email when the item is created. In my example I added some variables that can be used to format the hyperlink that is in the email.

    Flow 2 - FormResponse UpdateItem - OverviewFlow 2 - FormResponse UpdateItem - Overview

    Flow 2 may seems more complicated, but it is really just using some Condition actions to double check what the contractor submitted in the form. 

     

    First I am starting by showing my Orders SharePoint list and the info that I have in the columns. Primarily the OrderID is a text type column where it can be a unique identifier for the order. There should be no other orders in the list with the same OrderID. 

     

    The column ConfirmationStatus_Choice is a choice type column that is default to "Pending", but can have the options for "Confirmed" and "Decline". These choice responses match the options that will be on the contractor's confirmation form.

    SharePoint List - Confirmation Choice ColumnSharePoint List - Confirmation Choice Column

     

    The column Confirmation_DateTime is a datetime type column and will be filled in with the time that the contractor submits their form. So it is blank when an item is created. 

    SharePoint List - Confirmation DateTime ColumnSharePoint List - Confirmation DateTime Column

    The automatic ID number column for the SharePoint list is what I will be referring to as OrderNumber.

    OrderID = unique text type identifier for an order such as "AB1234"

    OrderNumber = SharePoint Automatic ID number column

     

    So I created my first item/order in the SharePoint list

    SharePoint List OrdersSharePoint List Orders

     

    This will trigger the Flow 1 which sends an email to the contractor.

    Flow 1 Overview - Send EmailFlow 1 Overview - Send Email

    Here are the individual actions.

    Flow 1 Actions DetailFlow 1 Actions Detail

     

    The first action - Initialize Variable - is where you will copy and paste the link to the form that the contractor will submit.

    The second action - Initialize Variable 2 - is where you will type the text that you want the hyperlink to the form to say in the email. If you want the form hyperlink to say "Click Here for Form" then you will just type that text into this variable.

    The third action - Initialize Variable 3 - Is the variable that you will put into the email. It uses the previous variables to format the HTML link. To format a hyperlink in an email you have to use the html format:

    <A HREF = "{link}">{hyperlinktext}</A>

    I have put the variables into the {link} and {hyperlinktext} spaces. So you don't need to do anything with this variable. It will work exactly like the example.

     

    The fourth action is Send an Email (V2) - this is the email that will go to the contractor. You can edit the text however you want obviously. 


    Below is an example of the email received:

    Email to ContractorEmail to Contractor

     

    The contractor will follow the hyperlink to complete the submission form.

     

    I made an example submission form below. 

    Example Confirmation FormExample Confirmation Form

     

    The main parts of the form are the first question which is a text response for them to put the OrderID. The second question which is a number response for them to put the OrderNumber which is basically the SharePoint list item number. And the last question which is a choice for them to Confirmed or Decline the order.

     

    When they submit the form, the second flow will trigger.

    Flow 2 Overview - FormResponse UpdateItemFlow 2 Overview - FormResponse UpdateItem

     

    The first part of the second flow is to get the form response and put the OrderID and OrderNumber that the contractor submitted into variables. These variables will be used throughout the flow.

    In the first Initialize Variable OrderNumberFormSubmission this is an integer type variable. The form response must be put into the int() integer expression so that the value will be an integer. (I don't know why the MS Form will have a number response that goes into Power Automate as a string, but we have to convert the string into a number using int() expression.)

     

    The second Initialize Variable 2 OrderIDFormSubmission is a string variable that will hold the OrderID that the contractor typed into the form. If you wanted to wrap this in a trim() expression to remove any spaces you could, but I didn't in the example. 

    Flow 2 - Detail 1 - FormResponse Initialize VariablesFlow 2 - Detail 1 - FormResponse Initialize Variables

     

    The second part of Flow 2 will be to Get Items from the Order SharePoint list while using a Filter Query with the OrderID from the form response. This is used to check if there even is an OrderID that matches what the contractor wrote in their form. You can use the variable OrderIDFormSubmission or the dynamic content from the form response, but in the example I used the form response dynamic content.

     

     

    The Condition - Check Results from Get Items will check how many items were returned from the Get Items action by using the length() expression on the values of Get Items. If no values were returned, that means the contractor put in an incorrect OrderID and the length() of the Get Items will be 0 zero. 

    So if the contractor put in the incorrect OrderID, it will send the condition to Yes which is an action to send You an email to go double check the issue.

    Flow 2 - Detail 2 - Get Items Condition CheckFlow 2 - Detail 2 - Get Items Condition Check

     

    The third part of the flow is based on the Condition - Check Results of Get Items which checked the length of the Get Items. So if no OrderID is found in the SharePoint list you can send yourself an email or something to go doublecheck the issue.

    If the length of Get Items is not 0 zero; then some item or items were found with the same OrderID that was written by the contractor. 

    So there is a Get Item step which uses the variable OrderNumberFormSubmission as the Id for the Get Item. This will return the item with the same number.

     

    The next step is to compare the item that was just pulled from Get Item and the OrderID for that item with the OrderID that was submitted by the contractor. This condition compares the two OrderID to determine if it is the same that matches the OrderNumber (ItemID). 

    Flow 2 - Detail 2 - Get Item Compare OrderIDFlow 2 - Detail 2 - Get Item Compare OrderID

     

    NOTE: There is a option ... on the Condition which is Configure Run After. Select this option and set the configuration to Is Successful AND Has Failed. This is so that if the contractor puts in an OrderNumber that doesn't exist, it will still send an error email instead of failing the entire flow at the Get Item action.

    Condition Configure Run AfterCondition Configure Run After

     

    The final part of Flow 2 will update the item with the Confirmation Status choice from the form response question the contractor selected and the Confirmation Datetime with the form response submission date. 

     

    If the OrderID from the Get Item and the OrderID from the form response variable do not match (or the Get Item failed due to non-existent Id number), you can send an email to yourself to check on the issue.

    Flow 2 - Detail 4 - Update ItemFlow 2 - Detail 4 - Update Item

     

    When the flow is successful and the OrderID and the OrderNumber match correctly then the item in the SharePoint list will have to ConfirmationStatus_Choice and Confirmation_DateTime columns updated accordingly.

    SharePoint List Item ConfirmedSharePoint List Item Confirmed

     

    Your flows do not have to look exactly like mine, but I wanted to add the option for using OrderID and OrderNumber as a way to confirm the contractor used the correct information. 

     

    If this helps please mark this as a solution to your post, and if you have any specific questions or issues please ask them, but also include screenshots with whatever error you are having.

  • Verified answer
    Oktay Profile Picture
    27 on at

    @wskinnermctc Thanks for the great solution. I will try to implement it in the next few days. I noticed that I can't send a Microsoft Form outside my organization. I still need to clarify that with our IT department.

     

  • Verified answer
    wskinnermctc Profile Picture
    6,519 Moderator on at

    Do you not have the option in the MS Form Settings to select "Anyone can respond" so that people can fill out the form with the link? 

    MS Form SettingsMS Form Settings

     

    Also @Oktay , can you mark the response I previously made with all of the instructions as the solution to this your post?

    Right now the post solution is showing as your reply response. Marking my response as the solution helps other people looking for solutions to get directly to the answer and most importantly it gives me those sweet sweet fake internet points 🏆

  • Oktay Profile Picture
    27 on at

    @wskinnermctc 

     

    thank you again for your support. I still have a question about the 2nd flow. I have a date field in my sharepoint list that I use to query the scheduled activity on the part of the contractor. I have added a date field in Forms as well for this query. However, if the contractor does not add a date because, for example, he has not yet scheduled the execution, I get an error in my flow because he cannot update the expected date value in Updat Item.

    How can I solve this?

    Would be great if you could give me another tip.

     

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Users!

Kudos to our 2025 Community Spotlight Honorees

Congratulations to our 2025 community superstars!

Congratulations to the April Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Automate

#1
Vish WR Profile Picture

Vish WR 957

#2
Valantis Profile Picture

Valantis 847

#3
Haque Profile Picture

Haque 609

Last 30 days Overall leaderboard