cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
cooper33 Resolver III
Resolver III

SharePoint: Send email to unique addresses Created By with a count of times they appear

I am trying to build a Flow that gives the user a summary of requests they submitted. I am storing items in a SharePoint list but since users often add many items, I don't want to send an email On Item Add because they'd get too many emails

Instead I want to send a summary email. At a high level, each day the flow would run and build a unique list of email address that have been added to the list in the last 24 hours. Each time the same email address appears in the query then a total would increment by one so that the email body to each user would say something like You added X items on [Today]

I can get the unique emails by building an array and then using Contains to only add unique users. I am assuming I shouldn't use an array data type if I want to store a number.

Can anyone explain how I can accomplish this?

1 ACCEPTED SOLUTION

Accepted Solutions
cooper33 Resolver III
Resolver III

Re: SharePoint: Send email to unique addresses Created By with a count of times they appear

I got this to work by building the same array with unique emails. After building the array, I loop through each and use the Get Items action to find items created in the past 24 hours where Created By email = current email in array

Created ge '@{formatDateTime(addDays(utcNow(),-1),'yyyy-MM-dd')}' and Author/EMail eq '@{items('Apply_to_each')}'

*Note the casing of EMail above is not a typo*

Then I used compose to get the length of get items and added it to the body of my email

 

Still feeling like this isn't the most efficient solution so if anyone has other ideas I'd love to hear

View solution in original post

1 REPLY 1
cooper33 Resolver III
Resolver III

Re: SharePoint: Send email to unique addresses Created By with a count of times they appear

I got this to work by building the same array with unique emails. After building the array, I loop through each and use the Get Items action to find items created in the past 24 hours where Created By email = current email in array

Created ge '@{formatDateTime(addDays(utcNow(),-1),'yyyy-MM-dd')}' and Author/EMail eq '@{items('Apply_to_each')}'

*Note the casing of EMail above is not a typo*

Then I used compose to get the length of get items and added it to the body of my email

 

Still feeling like this isn't the most efficient solution so if anyone has other ideas I'd love to hear

View solution in original post

Helpful resources

Announcements
firstImage

New Ranks and Rank Icons released on April 21!

The time has come: We are finally able to share more details on the brand-new ranks coming to the Power Automate Community!

firstImage

Now Live: 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!

sixthImage

Community Summit North America

The top training and networking event across the globe for Microsoft Business Applications

Top Solution Authors
Users online (7,275)