cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
sacheu
New Member

How can I create a Dictionary data structure in MS Flow?

In my flow, I need to make a http call and it returns an array of JSON objects as response.

And I need to loop thru the response and count how many entries which the same name.

 

For example, 

 

{
  "Team": [
    {
      "name": "Tom",
	"task": 1345
    },
    {
      "name": "Robert",
	"task": 1346
    },
    {
      "name": "Robert",
	"task": 1246
    },
 	{
      "name": "Mary",
	"task": 1366
    }
  ]
}

 

And in my flow, i need to count, Mary , Tom has 1 task, and Robert has 2 tasks.

And the name in the json reponse is unknown before hand.

 

I am thinking to create a dictionary and loop thru each element in the json response. 

But i don't see a way for me to create a dictionary in ms flow.

 

Does anyone has any other idea?

 

Thank you.

 

1 ACCEPTED SOLUTION

Accepted Solutions
manuelstgomes
Super User II
Super User II

Hi @sacheu 

 

Nope no dictionary. You need to do a "For Each" in each element in the Team and have 2 arrays. One for the "keys" (the people) and another for the "values" (your count of tasks).

 

Then you need to find the index in the keys array and use that index in the values array.

 

I know this is not a dictionary, but this is the only way I can see that you can achieve what you need.

 

Hope this helps

 

If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

Cheers
Manuel

View solution in original post

3 REPLIES 3
manuelstgomes
Super User II
Super User II

Hi @sacheu 

 

Nope no dictionary. You need to do a "For Each" in each element in the Team and have 2 arrays. One for the "keys" (the people) and another for the "values" (your count of tasks).

 

Then you need to find the index in the keys array and use that index in the values array.

 

I know this is not a dictionary, but this is the only way I can see that you can achieve what you need.

 

Hope this helps

 

If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

Cheers
Manuel

View solution in original post

Thanks for your answer.

 

Regarding `You need to do a "For Each" in each element in the Team and have 2 arrays. One for the "keys" (the people) and another for the "values" (your count of tasks).`,

 

Assume i have the foreach loop to find the index of the key array, I can't find a way in which in can increment an element in my values array.

MS flow only let me pick the whole array variable, not an elment of that array variable.

 

 

chris_l
Regular Visitor

I need to do exactly the same thing. I have a bookings file by location - I need to count how many bookings I have on each location, ideally by date (although I can make that part of the key). In other software I would check the dictionary for the key: if it doesn't exist, add it, if it does, increment it.

Helpful resources

Announcements
MPA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

MSFTBizAppsLaunchEvent

Experience what’s next for Power Virtual Agents

See the latest Power Automate innovations, updates, and demos from the Microsoft Business Applications Launch Event.

New Super Users

Meet the Power Automate Super Users!

Many congratulations to the Season 1 2021 Flownaut Crew!

Power Platform ISV STudio

Power Platform ISV Studio

ISV Studio is the go-to Power Platform destination for ISV’s to monitor & manage applications post-AppSource publish.

Users online (67,291)