Design issue- How can we download reports which has two different process

This is a design issue-
I have a scenario where I need to download monthly reports based one specific code - each code has 10 variant in this for example 10 reports downloaded for one code.

e.g -I have 2 codes

001 code has 10 reports
002 code has 4 reports

each code follows different process steps, I don’t want two different BOT to do this process I need to have one BOT which can do this, how we can design efficiently. Any suggestions

Hi Friend.

I suggest to do this:

Use ReF
Add Argument to Main Sequence like in_ReportCode. You can define from the Trigger which report and when you want to execute.

And then you can add many Process_ReportA, Process_ReportB…as you want, using some Swicth Case in that call. Or split Process into Activities inside the Process.xaml

thank you for the response @Mauro_Robertino_Frezzi , but unfortunately I am not getting a clarity about creating trigger ? could you please elaborate if possible.

Hi again monisshanair

You can configure many different Schedules with different Input Values in the Argument.
For ex. 10AM Main Argument “Process A”, 12AM Main Argument “Process B”. So you are working with the same package and same process, but changing the Input Argument, ReF will execute the one that you select at the beginning.

Thank you so much it helps, but if in case BOT fails on that time, and if we need re run does it work ? because we are giving specific time in the code right ?
if possible you have any sample code could you please share ?

Yes, it works :slight_smile:

@monishanair2010 Hope you are using Re-Framework for this

  • Create a different sequence for 001 and same for 002 in a single project
  • Invoke these workflows in Process.xaml based on a switch case condition. Condition should be like below
If(in_ProcessCode.equals("001"), "001", If(in_ProcessCode.equals("002"), "002", "Default"))
  • in_ProcessCode should be an argument in the Main. So that you can pass this value from Orchestrator.
  • That means if you pass the value as 001 the code should process 001 workflow etc
  • Also, you can maintain different schedules to process different codes. For each schedule you can configure in Orchestrator which code you want to process