Questions regarding queue

Hi! I just finished studying in level 2 - Orchestrator 2018.3 lesson and these are some questions that poped into my head. I’m currently working in RPA field, using BluePrism, but I’m quite new to UiPath.

  1. Is there a way to set item’s status back to “New” once it’s turned to “In Progress”?
  2. Do queue items have custom status or something like tags(in BP)?
  3. If my project involves many processes that run at the same time but the job is sequential, is there a better way than processA get data from queueA and once finish put the data in queueB for processB to pick up?

Hi @chas

Welcome to the community!!

You have a good set of questions…

Yes. You can set the status back to new or any other allowed type. To do this, you can use Set Transaction Status activity to set the status of an item

You cannot have custom status types. There are few allowed types as you may already know

  • New
  • In Progress
  • Complete
  • Failed
  • Abandoned are some of those.

However, you can have a value tag in the queue values which you can use as a custom identifier.

In UiPath, we use a Robotic Enterprise Framework for these kind of processes. We actually build them as two separate REFramework solutions. We call them dispatcher and Performer
Dispatcher - we get some data extracted and include in a queue for the other process to continue
Performer - gets the data from the queue and do the next set of processing. These processes are sequential though they are developed as separate solutions.

Why have them as separate solutions is to maintainability, reduce complexity and manageability.

This concept is covered in academy level 3 training
So yes… it is possible :slight_smile:

Did i answer your question?

If this help, please make sure to mark the answer as the solution too so that it can help others too :slight_smile:


Thanks @Lahiru.Fernando for your kind answers.
I’m still very new to this so i may need more details.

In the [Set Transaction Status] property, I can see only Failed and Successful option.
Could you guide me step-by-step how to do it?

The situation is:

systemA is only accessible from machineA and systemB is only accessible from machineB (by my company’s security rules) so we need to seperate the performer process, one to run on machineA/robotA and another to run on machineB/robotB.

Now let’s say I have 2 performers processes. These 2 performer processes use the same data so I think using only 1 queue would be a better solution but I think if robotA already read the transaction item from the queue, robotB won’t be able to retrieve it anymore.

Hence comes these 3 questions.

Hi @chas

If you want to access queue items with different status’s, you can easily use the Get Queue Items activity


Assume you want to get the failed transactions, and add them back to the queue. you can use this activity to get the failed items. then use Add Queue Item activity to add them back as new items

SO, for the situation you described, I guess the two queues would be the ideal solution for you. Because one transaction item will be processed by one robot and the other will not have access to it. So, having two queues would solve your problem.

Does this answer your question? or do I need to explain more?

Ah, I got it.
Thanks a lot @Lahiru.Fernando.

1 Like

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