I’m new to the RE Framework and i’m just curious if it works for a process that does not handle any data.
So, i have a process that mainly just requires me to login and type some predefined text/parameters into certain field. After doing so, a file would be generated and the file has to be sent to a couple of people.
I was wondering for the process above, is RE Framework still suitable? Since from what i have seen so far, most RE Framework examples/use case requires an input data and transactional data which in my case, neither of them are available.
I have referred to this thread: REFramework without Queue but the answer was still not satisfactory.
Thanks in advance for any opinions.
It is a tricky and a controversial question!
As a solution designer, I would use the RE Framework. I would think of how this process may be used by others in the organization and suddenly blown with number of cases. That is when I would realize, I should have maintained a queue and updated the queue to know everything that is happening is under control and scalable.
As a developer, I would make a robust simple workflow with good exception handling at the workflow level and a global handler. My defense would be stating that this process will seldom be scaled and therefore a lot of time is saved in understanding the RE Framework and setting things up.
If need be in the future I can wrap this workflow in a RE Framework, making it scalable as well.
My personal pick is still to use the RE Framework, because once you start understanding what is going on in it, it is very easy to modify and to suit any process.
Thank you for your opinion. So even though no input data is present, it is still possible to use RE Framework? If so, can you link me any tutorials or forums on this? I would be really grateful for it.
@wasd If your process is :
- Does not need to track each and every transaction or does not involve multiple iterations.
- Does not handle any data.
Then there is no need for using REFramework and make the process unnecessarily complicated. The full form is robotic enterprise framework so unless you interact with many applications and do many transactions, using REFramework adds no value as per my understanding.
You can create simple logs by writing log text to text files.
You can throw errors and terminate workflow based on logical demands.
I see. I see. Thank you very much. So from my understanding, what you’re saying is that RE Framework is mainly used for processes that interacts with multiple applications and when data are exchanged frequently and in large amount right?
Yes not just that if you do not need to repeat same process multiple times for different sets of data then don’t use REFramework.
What if i need to perform a process multiple time i.e. enter a field, press generate, repeat for 4-5 times with different parameters. Do i still avoid RE Framework in this scenario? Since it is still a small process, however, i need to repeat it for different parameters/data.
I am also curious as to how RE Framework can work without an input data i.e. excel file.
no if it is just 4-5 times, you don’t need REFramework.
Yes RE Framework can still be used without getting Transaction Data from Orchestrator. In short, you just consume work items from your custom workflow and forward it to the process.xaml.
The best tutorial I can suggest is the advanced course on UiPath Academy. In this course, one of the assignments is to perform a process using RE Framework without using Orchestrator Queues.
Hi @wasd, I would like to suggest you go for REF.
As @jeevith suggested you can use RE Framework without even any transactional data(Queue item/Data row). I think using REF would reduce your work though, coz you don’t need to add up any additional exceptional handling, maintaining logs etc as you mentioned yours’s is not a complicated workflow so basic predefined Exception handling would suffice your requirement. Better maintenance of Input data from Config file.
You need to make some minimal changes in GetTransactionData.xaml, SetTransactionStatus.xaml and Change some Variable Datatypes (i.e from the queue to required type)
Oh, i also forgot to state that i cannot access any internet resources due to company restrictions when running the scripts/job. Is REF still applicable?
Is the example/tutorial you mentioned, the one where it’s goal is to “generate yearly report”?
About internet access
Once you do the necessary updates to REF as suggested in the course/@ManiPrajwal_K, technically you will not need any connection to the internet. This however might be not a scalable solution because, your robot execution logs will never be sent to a central orchestrator nor can you run robots remotely via the orchestrator. Logs will still be available in the Logs folder for every robot execution.
If you want to trigger robots in a restricted network without orchestrator, you can use the UiRobot.exe. Usually found in “%UserProfile%\AppData\LocalUipath\Version” folder. All you have to do is write one line .bat script with following (Quotes if your paths contain spaces between characters):
"yourpath\UiRobot.exe" execute --file "yourpath\yourProcess.xaml"
Running this .bat file will start the process. Further you can schedule to run this bat file via Windows Task Scheduler using Powershell or CMD. You can trigger any UiPath .xaml file using this approach.
It is the first exercise in Advanced Course: Calculate Client Security Hash. The data in this exercise is a table scrapped from the test-acme site, but you can use an excel sheet or text file to consume data and define the workitem as you see fit.
Wow! Thank you so much for your help! But i still have one last question,
I was still wondering if there was a more relevant example than the one in the advanced course as the process i am doing does not involve any data scraping.
The process i am doing mainly revolves around logging in, entering parameters in a given field, clicking a “Generate” button and thereafter, send the generated file to specific people.
Is REF still possible in this scenario? And if possible, could you please link me any example similar to my case above?
Thank You Very Much for your help so far!
@wasd… Yes it is pretty much possible… I’m not sure where to find such kinda examples. But I’ll try to explain you the process.
As you have mentioned the process should run only once and it don’t have any iterables(Queue Items/Data rows).
For these scenarios, as I have mentioned in my previous comment you need to change
Remove first activity which is used to retrieve data from queues, next change If condition to
in_TransactionNumber < 2. In then block you can assign
out_TransactionItem = isNot Nothing. in else block keep
out_TransactionItem = Nothing.
- In Process.xaml
Place the actual process flow.
Remove the Queue related activities in Success, BE, SE sequences. And you can add extra code to track the process and customize your retry mechanism.
P.S. Opening/Logging applications in your Working Process should be in the OpenApplications.xaml file and to close all the opened applications Use CloseAllApplications.xaml file
I think this will suffice your requirement with REF!!
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.