When I am trying to record the Microsoft Form single choice response to the SharePoint list choice (dropdown) column throw flow I am getting bad request error.
Where as if I save into signle line text field it works fine.
From the flow response I see the request has been formated wrong for the signle choice column.
"testchoice": { "Value": "Yes" }
I am not sure is this going to be handled internally before insert to SharePoint. But throws BadRequest error.
It sounds like issue is updating SharePoint choice column through Flow.
Is there any work around?
Thanks,
Venkat Konjeti
Has there been any formal solutions to this query at all? Again this would be really helpful for something I am working on, tried the magic formula and I can't get it to work...
@Basic_User007 I agree, doesn't seem to work (at least as of now).
@efisher @npatelAU Is this still working for you guys?
I myself had a solution but it does require more steps to do and requires an array.
@v-xida-msft Do you think you guys might change something that will break any of these workarounds?
@Basic_User007, here is my version of the workaround.
A flow that works needs to have these core steps:
Where Initializing an array variable:
Removing extra symbols from MS Forms string output:
replace(replace(replace(body('Get_response_details')?['r5beb9c2e9e4849129d94468e3db92b7a'],'","','|'), '["',''), '"]','')
Splitting the previous compose into an array:
split(outputs('Format_form_output'),'|')
Appending to array variable using a formula:
Creating an item (in a Create Item step a Switch to input entire array option must be selected for that very multi choice field):
Please note that if you don’t work with Microsoft Forms and already have an array of values, then the steps are just initializing an array and appending to array variable using a formula. That’s it!
For more details and my thought process please visit my new blog, thanks!
https://365basics.com/microsoft-flow-populate-a-multi-choice-field-in-sharepoint/
Thanks for sharing.
I am trying your suggestion and getting this errorr:
The template validation failed: 'The template action 'Set_variable' at line '1' and column '3409' is not valid: "The template function 'body' is not expected at this location.".'.
Is the first variable in the flow (the initialize variable)?
Thanks for your help!
Duane
Also - I am using this expression:
replace(variables(replace(variables(replace(body('Get_response_details')?['rcd59c8f4f5ef43f886bda229d6f06d73'],'","',';#')), '["',';#')), '"]',';#')
I replaced the rcd59xxxxxxxx - with my ID for the Multiselect form field.
@DuaneAlleman I think you are overcomplicating the flow with another variable from what I can see here:
replace(variables(replace(variables(replace(body('Get_response_details')?['rcd59c8f4f5ef43f886bda229d6f06d73'],'","',';#')), '["',';#')), '"]',';#')
The only reason and the only place I use a variable is for an array, that's it. Note how my code doesn't have anything about "variables":
replace(replace(replace(body('Get_response_details')?['r5beb9c2e9e4849129d94468e3db92b7a'],'","','|'), '["',''), '"]','')
So if your case is getting info from Microsoft Forms and saving it into SharePoint, then make it simple (check my post above).
I know it is possible to add a variable but why doing it? 🙂
To work around the problem, we need to Convert the individual items as an array element and pass it to our SharePoint Control.
You can find the complete solution in my blog post: https://clavinfernandes.wordpress.com/2020/08/06/record-microsoft-form-choice-response-to-the-sharep...
Dive into the Power Platform stack with hands-on sessions and labs, virtually delivered to you by experts and community leaders.
Watch Nick Doelman's session from the 2020 Power Platform Community Conference on demand!
User | Count |
---|---|
15 | |
10 | |
3 | |
3 | |
3 |