cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
SylvieLet17
Continued Contributor
Continued Contributor

Stop flow adding apply to each

Hi all, 

 

I'm building a flow with a Send an Email action, and in the body I am trying to include a few metadata fields from a document 

 

When a document is added to a library, send an email 

email body contains several metadata fields from the document

 

One of the fields is a managed metadata field with multiple selections enabled. 

 

As soon as I add that metadata field, Flow automatically creates a For Each action based on that metadata. 

I am not interested in a For Each action, because I don't want to do anything based on the terms in that field. I just want to display them in an email. 
Any idea on how to get Microsoft to STOP trying to be so helpful?

I need to not have that Apply to Each. 

Thanks!

1 ACCEPTED SOLUTION

Accepted Solutions
v-yuazh-msft
Community Support
Community Support

Hi @SylvieLet17,

 

You could refer to screenshot below to create the flow:

Capture.PNG

 

Best regards,

Alice

View solution in original post

15 REPLIES 15

HI @SylvieLet17,

 

This happens when you add an element form an array. If you want to avoid this then you will have to make sure that you don';t take data our of an array. So for ewxample first collect the right element out of the array and convert it into a simple piece of data before you use it. 

v-yuazh-msft
Community Support
Community Support

Hi @SylvieLet17,

 

You could refer to screenshot below to create the flow:

Capture.PNG

 

Best regards,

Alice

GabrielStJohn
Community Champion
Community Champion

Hello, @SylvieLet17!

Have you had an opportunity to apply @v-yuazh-msft‘s recommendation to adapt your Flow? If yes, and you find that solution to be satisfactory, please go ahead and click “Accept as Solution” so that this thread will be marked for other users to easily identify!


Thank you for being an active member of the Flow Community!

-Gabriel
Flow Community Manager

- Gabriel
Community Manager
Power Automate | Power Virtual Agents
Super User Program Manager



Thanks Alice!

Oh my gosh. After looking around for answers on any number of problems with my PowerApp form and Flow I was getting used to hour long efforts to find answers.  This was perfect and I was able to follow it easily.

David

Anonymous
Not applicable

@Pieter_Veenstra 

what do you do if the whole point of the flow is to take data out of an array then? I was planning on using a do until loop partnered with apply to each, but because of the settings I can't do the do until first. Isn't it a little silly to make someone make a new flow instead of just having an checkbox option to get rid of the automatic apply to each?

@Pieter_Veenstra wrote:

HI @SylvieLet17,

 

This happens when you add an element form an array. If you want to avoid this then you will have to make sure that you don';t take data our of an array. So for ewxample first collect the right element out of the array and convert it into a simple piece of data before you use it. 


@Anonymous , The apply to ewach simply happens when you proces an array. If you know that the array only holds one item you can avoid the additonal apply to each by using the first fucntion on the array, giving you a single item

Anonymous
Not applicable

I have a flow working off of an http request and if there's multiple rows in the array it adds all the array data for each row instance. What can I do to fix this?

how do I do that please? if i've added a filter and then I just want to extract the first item of that filtered array, what's the syntax to use for this? 

Thanks

teddyo
New Member

I'm having the opposite problem. Per this article, I'm expecting Power Automate to automatically generate an "Apply to each," but it doesn't. When I add one manually, it doesn't generate the "List of response notifications Response ID" variable I need to use to populate the "Select an output from previous steps" item.

 

  1. Was the auto-generate functionality removed?
  2. If so, and I manually create it instead, how do I put the variable I need back into it?

OMG. After spending days trying to get rid of nonsense code in the approval emails, this is the solution that resolved everything! Yes! Thank you so much. Now my multi-select form field data appears without garbage code in the email. Managers don't want to see that.

Super grateful!

LloydC
New Member

GENIOUS!  Exactly what I needed to keep the "Apply to Each" monster at bay.  THANK YOU!!!

dallasSchwab
Frequent Visitor

No way to fix, in some instances. Microsoft is just lazy with this product.

I have tried over and over and over and over and over and over and over again with some flows, checking to make sure to dynamic content is NOT an array. But still, the flow just adds it. The product is riddled with bad design and poor engineering, sorry.

@dallasSchwab , I've seen many people complain about this. however I've never sen this not resolvable. If you want to complain then please send us the details of your failing project.

 

I'm happy to help.

@dallasSchwab , I've seen many people complain about this. however I've never sen this not resolvable. If you want to complain then please send us the details of your failing project.

 

I'm happy to help.

binki-dcx
Advocate I
Advocate I

It seems like you could avoid the apply to each using the join() function. If you find using expressions hard, you could use the join data operation. This should work if your array’s contents are exactly what you want to display. For example, if it is a list of string tag names.

 

If the array is “rich” (having multiple subkeys, such as an array of emails from which you only want the subjects), then you would need to somehow apply a map/select over the array to turn it into an array of strings. I do not know how to do that with expressions. But, you can put two data operations in sequence. Insert the Select data operation, switch it to Text mode (the little icon to the right of the Map row). Then follow that by a Join operation (or just use a join expression on its outputs).

Helpful resources

Announcements
Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Difinity Conference 2022

Difinity Conference 2022

Register today for two amazing days of learning, featuring intensive learning sessions across multiple tracks, led by engaging and dynamic experts.

European SharePoint Conference

European SharePoint Conference

The European SharePoint Conference returns live and in-person November 28-December 1 with 4 Microsoft Keynotes, 9 Tutorials, and 120 Sessions.

Users online (3,136)