How to use Queue Unique Reference?

I’m trying to load a queue with some items, and I am trying to store the reference as the ID number of the transaction so that I can use that reference in the future, to know if the Queue already has that item. How do I store the ID Number as the reference. I am totally confused overall about the Queue reference, so any explanations would be appreciated.

A nice picture, explaining in detail how the queue reference works would be awesome. I already have my Queue set up for Unique references in Orchestrator.

2 Likes

Hi,

  • Reference - The reference of the added QueueItem. The reference can be used to link your transactions to other applications used within an automation project. Additionally, this feature enables you to search for certain transactions, in Orchestrator, according to the provided string.

This property is available starting with v2017.1.

Additionally, references are not compatible with the 2016.2 or lower versions of Orchestrator or Robot.

From https://activities.uipath.com/docs/add-queue-item

You can find it in the Add queue item activity as in the screenshot below.
Maybe you are using 2016.x version of the Studio?

If you have it available on the activity, you just have to pass a string with the ID to the input argument.

image

Cheers

3 Likes

So for example:

Foreach row in arrayOfRows

  • add Queue Item

  • set reference to: row(0) … (which is like…the ID number of that row item)

Is this correct?

Or what’s a good example, so I can understand this really well. Anyone have a good example I can examine?

3 Likes

This is a good example that you are mentioning.

image

Another good example, assuming that you have a customer ID and that you do not want to add queue item more than once a day.

row("CustomerID").ToString & " - " & Now.ToShortDateString

Now.ToShortTimeString will return the date such as 08/30/2018 or something similar depending on your Windows settings. So in combination of the CustomerID, it will prevent it to be added more than once a day to the queue.

Cheers

3 Likes

I have added a unique reference to my queue transactions, so they are now going in as “filename.ext\date and time”. However I’m now facing the issue that the first step of the process opens the file with the name of the reference, filename.ext, but I seem unable to manipulate the string to get back to just that, any help would be great!

QueueItem.ToString.Split(“\”) - says it can’t convert String to Character?

I have changed to split(QueueItem,“\”).ToString, but this gives me “system.string” rather than “filename.ext”, any ideas why as QueueItem is a string, not an array?

From orchestrator:
image

In studio:
image

1 Like

For reference, I was able to solve this with QueueItem.Substring(0,QueueItem.Length - 21)

I won’t mark as solution as this was a tag on.

4 Likes

use the ascii value Chr(92) = “/” the problem is you are using a string in the parameter that is expecting a character

Adding to that, if your reference change from DateTime to something else or the total length just change. You’d have to change this substring manually.

I’d recommend using:
QueueItem.Split(""c).FirstOrDefault()

So, forcing the "" cast to char, and then getting the first item of split or empty if split returns nothing.

I would also like to see the ability to utilize Wildcards for Searching within Orchestrator or when getting a Queue Item via Activity.

1 Like

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