Hello team. I have created a flow and it is working properly. but the issue is that each 30 days I have to re-run it again. and my question is it possible to run a flow for more than 30 days
Solved! Go to Solution.
@Alito there are some changes you need to make and one important thing to remember about Excel dates.
My Excel spreadsheet looks like this:
Although Excel displays the date in your local format (in my case dd/MM/yyyy) that's not how it is stored or used by the flow, it is stored as an integer. But first your trigger should be a Recurrence schedule which should run every 1 day. Next you need to list the rows in the table in your Excel spreadsheet:
Add an Apply to each and select value from the dynamic content. Then you want 2 Compose controls. The first will take the date from Excel as an integer because that's how Excel saves it:. In the inputs field add an expression of:
formatDateTime(addDays('1900-01-01', add(int(items('Apply_to_each')?['Time']),-2)), 'yyyy-MM-dd')
Some people use '1899-12-30' and then don't take off the 2 days but s a creature of habit I've always done it with the expression above which works well.
Next, in the second Compose control format today's date and make sure the format you use is yyyy-MM-dd so that it's the same format as the first Compose control so the dates can be compared:
Next, add a Condition and select the output from the first Compose is equal to the output of the second Compose. If it is, send the email. If it isn't equal then do nothing:
The next images shows where the dates do not match between the 2 Compose controls:
And the final image shows where the 2 dates DO match so the flow will go down the If Yes green channel and the email will be sent.
So as you can see, there is no Do until and the flow will run every day of the year quite happily.
Rob
Los Gallardos
If I've answered your question or solved your problem, please mark this question as answered. This helps others who have the same question find a solution quickly via the forum search. If you liked my response, please consider giving it a thumbs up. Thanks.
Hello @Alito
Could you provide more information about the flow? Is this an approval flow that is timed-out? Could you share a screenshot so we can help you?
Regards,
Ferran
Thank you for response here is a screenshot:
Hello @Alito
As I understand, is the delay action greater than 30 days then? What is the idea of your flow? Probably it can be done in another way...
Helo @fchopo ,
the propose of the flow is to send reminder email to a particular person based on a column "date" in excel table file. in other words:
When date is XXX send reminder to person 1
when date is YYY send reminder email to person 2
when date is YYY send reminder email to person 3
…...etc
Appreciate you help 🙂
….
Hi @Alito ,
Why are you add the delay in the flow? you don't mention it in the last reply.
Best Regards,
Alice
Community Support Team _ Alice Zhang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @v-alzhan-msft,
I did not find something else to replace the Delay unit.
What I want is to build a flow to send email reminder for particular person based on a date from Excel Table:
Example:
When date is XXX send email to person 1
when date is ZZZ send email to person 2
When date is YYY send email to person 3
the email should trigger based on the date
the current setup is working perfectly for 30 days only. after that I need to re-run the flow. is there anything I can use or change to make the flow more than 30 days.
Thank you
Hello @Alito
If I have understand what you want, you could create a scheduled flow to run daily, and check if the date equals the date column in excel. Have a look at this thread: https://powerusers.microsoft.com/t5/Building-Flows/Flow-to-look-at-Excel-file-and-send-email-if-date...
Hope it helps
Ferran
Hi @Alito ,
What is XXX,YYY,ZZZ that you mentioned?
You still don't explain it well.
You should explain what is the relationship between the date in excel and the date XXX,YYY,ZZZ, does the XXX,YYY,ZZZ is the future of the date in the excel? such as the XXX would be 2 month later than the date in excel?
Best Regards,
Alice
Community Support Team _ Alice Zhang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @fchopo ,
Thank you for response and suggestion.
I have used the filter Array with following:
@equals(formatDateTime(item('Apply_to_each')?['Time'], 'yyyy-MM-dd'), utcNow('yyyy-MM-dd'))
but in this case the flow sends email to all list even if the today's date (UTCnow) does not match the date in excel table, column (Time).
ok let me start from the beginning
I have a table in Excel file. one of the table columns is "Time". The column "time" has dates in this format YYYY-MM-DD for the current year..
I want to have flow to send email whenever the Today's date match the value in column "time"
example
Time ---------------------Email-----------------Subject
2020-06-03----------user_1@AB.com------ Test_1
2020-06-20----------user_2@AB.com-----Test_2
when today's date matches the value in Time column send email to user with subject test
when todays date = 2020-06-03 send email to user_1@AB.com with subject Test_1
when todays date = 2020-06-20 send email to user_2@AB.com with subject Test_2
I have created flow and it is working properly and it meet the expectation but each 30 days the flow stop, and have to run it again.
I am using Delay until because it has timestamp. .
@Alito there are some changes you need to make and one important thing to remember about Excel dates.
My Excel spreadsheet looks like this:
Although Excel displays the date in your local format (in my case dd/MM/yyyy) that's not how it is stored or used by the flow, it is stored as an integer. But first your trigger should be a Recurrence schedule which should run every 1 day. Next you need to list the rows in the table in your Excel spreadsheet:
Add an Apply to each and select value from the dynamic content. Then you want 2 Compose controls. The first will take the date from Excel as an integer because that's how Excel saves it:. In the inputs field add an expression of:
formatDateTime(addDays('1900-01-01', add(int(items('Apply_to_each')?['Time']),-2)), 'yyyy-MM-dd')
Some people use '1899-12-30' and then don't take off the 2 days but s a creature of habit I've always done it with the expression above which works well.
Next, in the second Compose control format today's date and make sure the format you use is yyyy-MM-dd so that it's the same format as the first Compose control so the dates can be compared:
Next, add a Condition and select the output from the first Compose is equal to the output of the second Compose. If it is, send the email. If it isn't equal then do nothing:
The next images shows where the dates do not match between the 2 Compose controls:
And the final image shows where the 2 dates DO match so the flow will go down the If Yes green channel and the email will be sent.
So as you can see, there is no Do until and the flow will run every day of the year quite happily.
Rob
Los Gallardos
If I've answered your question or solved your problem, please mark this question as answered. This helps others who have the same question find a solution quickly via the forum search. If you liked my response, please consider giving it a thumbs up. Thanks.
Hi @Alito ,
Have your problem been solved now?
Best Regards,
Alice
Community Support Team _ Alice Zhang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Thanks for the resolution. much appreciated