Multiple reports to run in different time - Design solution

Hi - I have a scenario where I need to automate around 15 reports in which some has to run in same time and some on different time - is it possible to do all these reports in same BOT in which I can restrict the and have trigger in different schedule and have to code for based on time and date ? is it possible to do this way?

@monishanair2010

Add Input arguments to your main xaml …then those would be exposed to you in orchestrator…And while creating schedules depending on the time set true or false to the Arguments from Orchestrator on whether to run a particular report or not…

use these argument values in your code in the if conditions and on then side have the code to run the report for each type of report …so depending on the input sent it would run or leave

Hope this helps

cheers

Yes, and the easiest way to do this is via a transactional processing model such as the reframework to handle the actually automating of the report and then a ‘dispatcher’ to make the Queue Items for processing.

In the dispatcher have the logic for what date time each report should be done and add that to the the ‘Postpone’ value when you make that queue item.

After that your performer bot will pick up the items as they become available. Simple.

@Anil_G - yes this helps, but is it always we need to give the code manually in orchestrator every time when we try to run the report ?

@monishanair2010

If you are creating a schedule/trigger…then only when you create the trigger once you need to set true or false depending on the time of the trigger…

If you are running adhocly then everytime
You run …you have to provide values as per the time you run again

You can as well add default values…so when you dont give any input those values are used…

If your requirement is something else then let me know we can find a different solution

Cheers

Okay, I give you an example - I have 4 reports which runs monthly but different day and different time may be same month

001 - First Working day , 8 am
002- 2nd working day
003- First Working day , 2 pm
004- First working day - Twice

like I have multiple combos, so trying to understand if there is an effective way, I was think each workflow start I should be giving a condition but trying to understand if any other way.

@monishanair2010

As mentioned earlier you can do that…

like create only one process

001 - Create a trigger with first working day at 8 AM and select yes for report 1

Similarly you will create triggers for remaining reports and change yes or no as per the time

This is not repeating a lot…as the schedule you need cannot be created with one trigger…we need to use multiple trigger approach…so anyways you are creating multiple triggers…so for each trigger input can be different

One more way is to check the date of run and time of run in the process and let the process choose which to run and which not to run…The problem with this approach is …if anytime you want to rerun or change the report type on a different day or a different time then the bot would not work as expected…as the reports are tightly coupled with date and time of run…

Eg: say bot is triggered on first working day around 2:20 PM then it will run report 3…as we will use condition on checking if today is first working day and if time is between 2 and 3…then we set yes for report 3 in the bot itself…but you cannot run other reports at same time using this approach as bot runs only report 3 at that time and date of the month

Hope this helps

cheers

@Anil_G - It works, Thank you for explaining in detail. :slight_smile:

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.