cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
mithushalk
Helper IV
Helper IV

Send multiple emails from SharePoint list

Hi, need help in fixing my flow,

I am building a flow to send email to the teams based on the form response. 
I am able to send email, if user chooses only 1 option but when user chooses 2 or more options email isn't processing.
Flow runs successful but mail won't be delivered.

 

Question in the form

mithushalk_1-1622573391348.png

 

My List on the SharePoint

 

mithushalk_0-1622573347219.png

My Flow 

mithushalk_2-1622573540695.png

Filter Query - 

replace(replace(outputs('Project_Collect_Response')?['body/rede014bb885a4ad4b331cd09384a409c'],'["',''),'"]','')


Email To - 
outputs('Get_items')?['body/value']?[0]?['Team_x0020_Email_x0020_Address']
 
Please help me how can I proceed with this?
1 ACCEPTED SOLUTION

Accepted Solutions
PrasadAthalye
Super User
Super User

Create a String variable and inside Apply to each, append email address to that variable using Append to string variable. Then move Send email action outside Apply to each and use string variable.

Please Like and Mark this as Answer if it resolves your Issue.

Power Automate Community

View solution in original post

37 REPLIES 37
tom_riha
Super User
Super User

Hello @mithushalk ,

try to store the result of the replace(...) expression in a 'Compose' action before 'Get items', you'll see why it's not sending anything.

(you're searching for item where Title eq 'Finance,Legal,Privacy' and there's no such item)

Try to use the split(...) expression to split the Forms response by ',' to get an array with the single values. Then you can loop through the values and use 'Get items' for each of them separately, and send the email.

image.png

 



[ If I have answered your question, please Accept the post as a solution. ]
[ If you like my response, please give it a Thumbs Up. ]

[ I also blog about Power Automate solutions even for non-IT people. ]
PrasadAthalye
Super User
Super User

Create a String variable and inside Apply to each, append email address to that variable using Append to string variable. Then move Send email action outside Apply to each and use string variable.

Please Like and Mark this as Answer if it resolves your Issue.

Power Automate Community

View solution in original post

mithushalk
Helper IV
Helper IV

@PrasadAthalye 

I cannot use Initialize variable as it can be used only on top the flow. 

mithushalk
Helper IV
Helper IV

@tom_riha 

I followed the steps.
Can you please confirm what should I use in TO field while sending a mail?

mithushalk
Helper IV
Helper IV

Hi @tom_riha 

mithushalk_0-1622624953509.png

Flow ran successful but email wasn't sent.

Splits - 

split(outputs('Project_Collect_Response')?['body/rede014bb885a4ad4b331cd09384a409c'],',')

Initialize variable on the top of the flow and then use Append to string variable action to append....

Please Like and Mark this as Answer if it resolves your Issue.

Power Automate Community
MinotaurUK
Helper I
Helper I

Could you not use a condition based on each response, when the condition has been met (choice of legal, finance or privacy) then use the get items array ?

mithushalk
Helper IV
Helper IV

@MinotaurUK 

Can you please explain more so I can follow & try with my flow. 

you use the condition control to be triggered when the user chooses one of more of the options, it means having quite a few conditions set up but when a conditions are met then you can set up get the mail groups list to email.

 

I have a flow that has 10 conditions set up, if one of the conditions is triggered it continues the flow...see below:

 

MinotaurUK_0-1622708666670.png

 

mithushalk
Helper IV
Helper IV

@MinotaurUK Thank you. 

I think I can work to get three emails but is there any way to work 10+ emails?

MinotaurUK
Helper I
Helper I

you can set up multiple email message/notifications actions on each condition..e.g if condition A is met then send 4 email notification actions,  if condition B is met send 2 email notification actions etc

mithushalk
Helper IV
Helper IV

@MinotaurUK 
I totally understand the logic but it would become a very lengthy flow. Instead, don't we have any other way like expressions as such?

mithushalk
Helper IV
Helper IV

Hi @PrasadAthalye 

This step is somewhere in between my flow so I cannot go to the top of the flow & add Initialize variable. Please can you tell me an alternative?
Also, it can be of great assistance if you can show me a demo with the same technique.

It does not matter where you use variable. You can declare anywhere in the root of the canvas. For example, under Senduseremail. Then you can use SET variable anywhere you would like to. 

Please Like and Mark this as Answer if it resolves your Issue.

Power Automate Community
mithushalk
Helper IV
Helper IV

Hi @PrasadAthalye 

 

As I am very new to Power Automate, I request you show me a demo so I can follow it.
I built one based on your instructions but I believe I got that wrong so email wasn't out.

@mithushalk - Please find Entire solution below. Hope this helps...

 

  • Add Forms Trigger and Response Actions..

PrasadAthalye_0-1622751910418.png

  • Use Join and provide your question as mapping. Use JSON Function. Add Comma as delimiter in Join. 

PrasadAthalye_1-1622751991607.png

json( outputs('Get_response_details')?['body/r6c6ad0ab931a4a26b0564e655ebd153c'])
  • Now use Compose and Split the output of Join using comma as separator and initialize variable to store emails.

PrasadAthalye_2-1622752062209.png

split( body('Join'), ',')
  • Your array is ready now. Run a loop on this array. Inside loop, Use GetItems to query SharePoint List using Filter. Please note that I am filtering on Title. You should filter on your column. Use Current Item property from the current loop. You will find it in the selector.

PrasadAthalye_3-1622752171527.png

 

  • Now Add Append to string variable and select email property for the person column from Get Items. Reason you see another Apply to each because it is a collection. But it will only run once so no worries. Make sure to append semi colon after email so that it generates semi colon separated email list.

PrasadAthalye_4-1622752293136.png

  • After the end of this, your variable will have all emails. Outside all the loops, now use SendEmail action and use variable. 

 

Hope this helps...

 

 

 

Please Like and Mark this as Answer if it resolves your Issue.

Power Automate Community
mithushalk
Helper IV
Helper IV

Hi @PrasadAthalye 

Thank you for the continuous support.

After following the instructions I was able to build the flow & found this error 
The 'inputs.parameters' of workflow operation 'Send_an_email_(V2)_2' of type 'OpenApiConnection' is not valid. Error details: Input parameter 'emailMessage/To' is required to be of type 'String/email'. The runtime value '".mithushal.kandula@cj.com;;"' to be converted doesn't have the expected format 'string/email'.

mithushalk
Helper IV
Helper IV

@PrasadAthalye 

mithushalk_0-1622837894442.png


The flow is able to pick only one email address but fails whereas in the form I selected all three options (Finance, Legal, Privacy) as shown in the above picture.

Also in my dynamic list Get Items 4 doesn't appear, I have tries multiple times. 

I even tried at a different level of the flow but Get doesn't appear.

There is no Get Items 4. When you add Get Items action multiple times it increments number. Its just Get Items Action only.

 

Can you check why there is a dot before your name in the variable ? Also Send email should be outside all loops on main canvas...

Please Like and Mark this as Answer if it resolves your Issue.

Power Automate Community

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

Welcome Super Users.jpg

Super User Season 2

Congratulations, the new Super User Season 2 for 2021 has started!

Carousel 2021 Release Wave 2 Plan 768x460.jpg

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

Top Solution Authors
Users online (1,225)