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

Sending reminder email on the last (working) day of the month?

I'm new to Power Automate, and trying to set up what should be a simple flow. I need to send two reminder emails to managers to check and approve timesheets.

 

The first is every other Friday, the last day of a pay period. This was easy to create using a recurrence and mail.

 

The second is on the last working day of the month, for the close of the fiscal period. Timesheet approvals done outside of a fiscal period cause havoc in our ERP system. This is where I'm running into problems. While tools like Outlook calendar can do recurrences on the last day of the month, this isn't available in the PA recurrence feature.

 

I've searched and found references to code that determines the correct day, but because I'm new at this, I'm not even sure how or where to use that code. Any help with a step-by-step would be greatly appreciated. Thanks!

10 REPLIES 10
Hardesh15
Super User II
Super User II

@EJack 

 

After daily recurrence, use this condition-

Hardesh15_0-1600870542817.png

 

if last and previous last day of month is saturday and sunday then it is not last working day.

 

Thanks

Hardesh

@Hardesh15 

 

This sort of worked. The problem is the email will be sent every day on the 27th, 28th, 29th, 30th and 31st as long as those days aren't a Saturday or Sunday. I only want it to send once, on the last workday of the month.

 

So... if the 31st is a Sunday, the email would send on the 29th, but not the 28th or 27th.

@EJack 

I found some exceptions in this , will post you complete solution after testing.

 

Thanks

Hardesh

Michal
Advocate V
Advocate V

@EJack 

Do you need to take into consideration holidays?

@Michal 

 

I hadn't thought of that. Yes, I suppose I should. But at this point, I'll take the flow with or without holidays as long as I can get the email sent on the last working day of the month otherwise.

@EJack 

 

Here is your solution. i have considered all permutation and combination.

Hardesh15_0-1600974633602.png

Hardesh15_1-1600974663627.png

Hardesh15_2-1600974692033.png

Hardesh15_3-1600974715635.png

Hardesh15_4-1600974744022.png

Hardesh15_5-1600974783020.png

 

My Logic- for 31 days month like Jan,March etc if 31st is not saturday and sunday then it is last working day. And if 29 & 30 of 31 days month falls on friday then it is last working day. Same way i did for 30 days month and feb as well.

 

Thanks

Hardesh

 

 

 

 

 

 

@Hardesh15  Let's take it from another side. I found this solution as inspiration and decided to put it into the Power Automate frames. 

 

@EJack , So in short, let's take the 1st day of the next month and count it backward, day by day until you get a working day (dayOfWeek(variables('Date') is not equal 0 or 6). Here is the explanation of the dayOfWeek.

And if you finally get such a day check if this is today. 

Simple, isn't it? 😏

 

I thought so, but end up with a pretty complex flow. 

Here are some pictures. If you need details - let me know. 

Michal_0-1600983258624.png

 

Michal_1-1600983450115.png

The Date variable is initialized with this formula:

 

addDays(startOfMonth(addToTime(utcnow(),1,'Month')),-1)

 

 The Date-1:

 

addDays(variables('Date'),-1)

 

And DayofWeek:

 

dayOfWeek(variables('Date'))

 

 Condition at "Do Until" loop is advanced:

 

@or(not(equals(variables('DayOfWeek'), 0)),not(equals(variables('DayOfWeek'), 6)))

 

And the rest should be pretty straightforward. 

 

Let me know if this works? I have tested a bit with November, as the 1st of November is Sunday, and it looks working. But I might do wrong conditions, so better test different scenarios and don't take it for granted.  

@Hardesh15 

Thanks! There's a lot to this. I'm also wondering what happens when you get to leap year with Feb having 29 days.

 

@Michal 

Thank you as well! I think I like the idea of counting backwards from the first day of the next month. That would seem to work regardless of what month it is an if it was a leap year or not. I haven't had a chance to play with this yet, as it takes my non-programmer brain a little while to wrap my head around it.

 

Is your example sharable? If you have more details on how to recreate those frames, I won't say no. 🙂 

Hi @EJack 

I have built, checked, and published the flow. You can download and use the flow from here

Happy flow! 🙂

Wonderful job Michał, just used it!

Helpful resources

Announcements
MPA_User Group Leader_768x460.jpg

Manage your user group events

Check out the News & Announcements to learn more.

V3_PVA CAmpaign Carousel.png

Community Challenge - Giveaways!

Participate in the Power Virtual Agents Community Challenge

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.

R2 (Green) 768 x 460px.png

Microsoft Dynamics 365 & Power Platform User Professionals

DynamicsCon is a FREE, 4 half-day virtual learning experience for 11,000+ Microsoft Business Application users and professionals.

Top Solution Authors
Users online (1,097)