cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Highlighted
Frequent Visitor

Flow: get multiple values from sharepoint column for CSV table

I have created a flow using the following options:

Get Items (Sharepoint List)

Fiter Array

Select

Create CSV Table

Send Email.

 

For the select option - I have selected various fields from my sharepoint list including one which is a multiple selection field.

 

The flow works and exports to CSV - however the output for the multi-selct field is a long string which includes the value retrieved i.e

 

[{"@odata.type":"#Microsoft.Azure.Connectors.SharePoint.SPListExpandedReference","Id":0,"Value":"Main Hall"},{"@odata.type":"#Microsoft.Azure.Connectors.SharePoint.SPListExpandedReference","Id":1,"Value":"Dining Room"},{"@odata.type":"#Microsoft.Azure.Connectors.SharePoint.SPListExpandedReference","Id":3,"Value":"Kitchen"}]

 

What I would like is to receive the values seperated by a comma or semi colon to make this more user friendly. for example in the output above it should ideally read: Main Hall; Dining Room; Kitchen

 

Any suggestions as to how I can do this by either manipulating the output string as an additional step in the flow or changing the way I collect the data for this column.

 

Thanks in advance

 

Amit

2 ACCEPTED SOLUTIONS

Accepted Solutions
Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

okay, i had to rethink this csv export. so i do the csv export in two steps:

  1. export and convert the multi-selected-values into a separate single-line of text field of the list-item
  2. use the csv-export-action with the single-line of text field

it's a little bit messi and the flow is now slow, but it works.

View solution in original post

Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

like:

step 1 for each choice-field:

load all items

loop through all this items

     load per each item the multiselectvalue (choice-field) collection into an array variable

     loop though the array-values

         append each multiselectvalue to a string variable concatenated with your "separator"

     update listitem with the string value (which contains all separated values)

 

step 2:

load all items

create csv

 

 

View solution in original post

18 REPLIES 18
Highlighted
Community Support
Community Support

Re: Flow: get multiple values from sharepoint column for CSV table

Hi @amitlathia,

 

Could you show me a screenshot of your flow configuration?

 

According to your description, I created a simple flow likes below. In the Select action, configure the Choice column (multiple selection enabled field) with the following expression:

last(item()?['Choice1'])?['Value']

In the email body, the choice value would be ideally read.

1.PNG

 

Please take this for a reference and try it on your side.

 

 

 

Best regards,

Mabel Mao

Community Support Team _ Mabel Mao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

Hi Mabel ( @v-yamao-msft),

 

Please see attached my flow now including your suggested string. This works to the extent that only the value shows in the resulting CSV file, however what I would like is all the values showing not just the very last one. For example if 2 rooms are booked, it would show "Main Hall; Kitchen". At the moment only "Kitchen" would appear.

 

Is there any way of expanding the expression so as to collect the multiple values?

 

Thank you for your help with this.

flowimage.PNG

 

 

Amit

Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

Hi Mabel @v-yamao-msft

I was wondering if you have had a chance to look at my reply and can suggest a solution?
Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

Thanks in advance!
Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

Hi @v-yamao-msft Just wondering if you have had any further ideas as to how I can retrieve all the values out of a multi-select sharepoint column. I would imagine I am not the only one with a use case for this so any help would be great to me and others.

 

Thanks once again

 

Amit

Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

I am also having this issue and cannot figure it out for the life of me!

Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

do you found a solution for that?

Highlighted
Anonymous
Not applicable

Re: Flow: get multiple values from sharepoint column for CSV table

Any solution ? Smiley Sad

Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

okay, i had to rethink this csv export. so i do the csv export in two steps:

  1. export and convert the multi-selected-values into a separate single-line of text field of the list-item
  2. use the csv-export-action with the single-line of text field

it's a little bit messi and the flow is now slow, but it works.

View solution in original post

Highlighted
Anonymous
Not applicable

Re: Flow: get multiple values from sharepoint column for CSV table

Can you provide a screenshot please ? I didn't get how you export the multi values field into single value

 

Thank you Smiley Happy

Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

like:

step 1 for each choice-field:

load all items

loop through all this items

     load per each item the multiselectvalue (choice-field) collection into an array variable

     loop though the array-values

         append each multiselectvalue to a string variable concatenated with your "separator"

     update listitem with the string value (which contains all separated values)

 

step 2:

load all items

create csv

 

 

View solution in original post

Highlighted
Helper I
Helper I

Re: Flow: get multiple values from sharepoint column for CSV table

Any solution on this ? 

Highlighted
New Member

Re: Flow: get multiple values from sharepoint column for CSV table

Can you please share the screenshot of your approach

Highlighted
Microsoft
Microsoft

Re: Flow: get multiple values from sharepoint column for CSV table

You can use the following expression for your multi-select column:

xpath(xml(json(concat('{"root":{"choices":', item()?['Officers'] , '}}'))), '/root/choices/Value/text()')

 

**My SP column (multi-select) field is called "Officers". Change yours accordingly.

 

Overview.png

 

Result:

overview-result.png

@Rathiya@amitlathia@Babalaul@kayaking@Roger365 

Highlighted
Regular Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

@lindquiswi 

 

Thank you 🙂 Your solution worked for my problem where i wanted to fetch only values of multiple choice.

 

Can you help to explain the expression.

 

Highlighted
Microsoft
Microsoft

Re: Flow: get multiple values from sharepoint column for CSV table

@NirajA

My colleague @svarukala is the real hero here. He helped me with this original issue and has provided us the following explanation:

Start here: item()?['Officers']

The should be in json format but incomplete, without a parent and root element to enclose the items.

 

concat('{"root":{"choices":', item()?['Officers'] , '}}')

This concats the missing parent/root to it.

 

xml(json(concat('{"root":{"choices":', item()?['Officers'] , '}}')))

Then use json() to convert this string to JSON object. Then convert JSON obj to XML object.

 

xpath(xml(json(concat('{"root":{"choices":', item()?['Officers'] , '}}'))), '/root/choices/Value/text()')

Now that the XML structure is good, we use xpath to select all the values within the choice options.

Highlighted
Regular Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

Highlighted
Frequent Visitor

Re: Flow: get multiple values from sharepoint column for CSV table

@lindquiswi

@svarukala

 

I'm trying to use the same expression in "Select" operation, but getting the below error. Any idea what might be wrong?

 

'The template language function 'json' parameter is not valid. The provided value '{"root":{"choices":}}' cannot be parsed: 'Unexpected character encountered while parsing value: }. Path 'root.choices', line 1, position 19.'. Please see https://aka.ms/logicexpressions#json for usage details.'. 

 

Thanks

Amir

Helpful resources

Announcements
firstImage

Super User Program Update

Three Super User rank tiers have been launched!

firstImage

Power Platform 2020 release wave 2 plan

Features releasing from October 2020 through March 2021

firstImage

Join the new Power Virtual Agents Community!

We are excited to announce the launch of Power Virtual Agents Community. Check it out now!

firstImage

New & Improved Power Automate Community Cookbook

We've updated and improved the layout and uploading format of the Power Automate Cookbook!

thirdimage

Power Automate Community User Group Member Badge

Fill out a quick form to claim your user group badge now!

Top Solution Authors
Top Kudoed Authors
Users online (6,890)