@SL42 The reason you have nested apply to each actions is that your columns are storing multiple user profiles which will output an array. You need to convert the array of profiles to a string of email addresses.
In addition to this, I would recommend using a Filter Array action or a Filter Query in the Get Items action to filter out items where the Next Reminder Date is equal to Today first before looping through them with an Apply to Each action. Currently, the way your flow is set up is that it will return all the items first and loop through each item to check if the Next Reminder Date is today.
Instead, by filtering out the items that meet your criteria first you can add a condition that prevents the flow from running unnecessarily. The condition should check to see if there are items returned from your Filter Array action or the Get Items action (that contains a Filter Query). If no items have returned, no additional actions need to take place. If there are items, you can run through all the rest of the actions in your flow. You can also save time in your flow run by only looping through those that met your criteria.
To learn more about how to use the Filter Array action, please refer to this recent YT Tutorial I uploaded.
Remove Send an Email Action
While you are building and testing your flow. I would recommend removing the Send an Email action till you've been able to confirm the dynamic content necessary for the Send an Email action. It will make running tests for your flow a lot more efficient. Once you've confirmed the dynamic content you can add that action back into your flow.
Select Emails
Add a Select action to your flow. Tip: Rename your actions to keep things organized!
Insert the dynamic column of the Remind Who or CC column to the From field. In my example below I have an Assigned To column.
Click on the icon to switch from Key value to Map mode.

In the Map field, insert the email dynamic content for the dynamic content column you inserted into the From field. Important: Power Automate will automatically nest the Select action into an Apply to Each action. The Apply to each action IS NOT NECESSARY.

Pull the Select action outside of the automatically added Apply to Each action. Delete the Apply to Each action. You should just be left with the Select action.

This will return the email addresses only from the selected profiles in an array.
Convert Email Array to String
Add a Join action to your flow. This action will convert the array to a string, separating each array item with a separator that you specify.
In the From field, insert the Outputs from the Select action above.

In the Join with field, insert a separator. In this case, use a semi-colon since you'll be using the string in the To and CC fields of the Send an Email action.

Run a test.

The input of the join action is an array, the output is a string of text. The outputs from this Join action can now be used in a Send an Email action.
Repeat this step for the CC column. Run another test to confirm. You can then add back the Send an Email action and give that another test.
Hope this helps!
If I helped you solve your problem—please mark my post as a solution ✅. Consider giving me a 👍 if you liked my response!
|