Best practice long running processes

Hi all,

are there any best practises to use the UiPath.Persistence.Activities like “Create Form Task” and “Wait for Form Task to Resume” for an process developed in the Robotic Enterprise Framework?

What process i’m thinking about:

  • Dispatcher: Grabing Data from an application or email, validation of the data, if data is complete add to queue, if not complete create a form task
  • Performer: Grabing queue items and work one by one

Kind regards

Were you able to figure this out and use Persistence activities for bringing-in human interaction ?
Here are few best practices on using this activity pack (specifically wait and resume* activities )


Hi @Liji,

thanks for your answer. No, not really. I can use the Persistence acitivities in an orchestration process, but that doesn’t help me out. As i wrote i would like to use the Robotic Enterprise Framework for Dispatcher and Performer with a queue in between.

I could do it without the framework, but then i will miss the nice features of it like retrying, Exceptionhandling etc.

Any suggestions?

In the latest studio version, you could go to project settings > Support persistence can be enabled for a non-orchestration process as well. But there are some best practices to take care while using persistence activities like 'Wait & Resume* ', particularly about usage of such persistence points only in main.xaml, data serialization pre-requisite of workflow variables in the same scope of such persistence points. Alternative will be to move non-serializable content out of the same scope of wait and resume activities, through invoke workflow or in a different sequence itself.


Thanks @Liji will try that if i can manage to implement the persistance activities into the statemachine of the framework.

maybe you can help me with some other point too. How can i integrate a dynamic data table into a form via the persistance activities? The columns of the data table are fixed, three in total, but there can be a dynamic amount of rows. one column of the data table needs to be editable. the other two must be not editable.

Does that mean Persistence activities cannot be used with in REframework in 2019.10 Studio version

Hi @AnaC,

for me the setting mentioned by @Liji is there at studio version 2019.10.4:

But didn’t test it till now.

Hey, had you been successful at this? Does it mean you can’t put the “create document validation action” workflow in a seperate xaml? We need to put it outside?

By default, Forms designer generates 10 columns in data grid from a data table. But if the RPA developer requires to display more than 10 columns, the following steps can be followed

Drag-drop the child components inside data grid component.

The components inside a data grid can be either:

  1. Auto-generated according to the column’s and their data types OR
  2. RPA developers can drag-and-drop components inside data-grid according to their choice (like a dropdown/email/phone number field instead of a text field). They’ll have to match the field key of such components to be the column names of the DataTable. And in this case, auto-schema generation would not be invoked. So whatever one dragged-and-dropped is what gets rendered in the form.

For example, if we have 12 columns (Col1 to Col12), the text fields could be added inside datagrid component. The keys for each added component should have the field key as the name of the column name of the DataTable.

1 Like

Technically the restriction is for all “wait and resume*” activities that are persistence points in a workflow to be present in the main.xaml . We envision orchestration process as the one that stiches RPA workflows/human actions together. However, if you have scenarios that could be managed by ‘create action’ in secondary xaml but “wait for action” resides in main.xaml should technically work.

got it. Thank you :slight_smile: