Hello Community - Is there any way to Delete a Transaction Item which is In Progress?
I find it very tedious having to wait 24 hour before deleting it. Especially, if the Queue has Unique Reference. Furthermore, a small feature such as being able to remove (not just delete) a Transaction Items completely from a Queue would be awesome!
Not exactly sure if you are looking for this. There is a workaround, which we use both on development and production queues. It works like a charm. There is no official function with orchestrator or in the studio connected to the orchestrator to delete in progress items.
We use the attended robot as developers to quickly delete in progress items. In production, we run this by providing the required queue name to an unattended robot.
I think the Postpone Transaction Activity help in this case,
Postpone Transaction helps to postpone the queue item then by which we can delete the queue items using Delete Queue items activity.
We looked at this thread and we want to help with a workaround. Our approach is -
Get Queue Items : Get all your queue items with status “InProgress” - Inumerable output
For each QueueItem (Inumerable) - Set Transaction Status to “Failed” with a given Reason in properties tab
Get Queue Items : Get all your queue items with status “Failed” - Inumerable output
For each QueueItem (Inumerable) - Delete Queue Item
It does not matter if we use Postpone or any other status which allows us to delete the item within the context of the proposed workflow because, we know we want to get only in-progress items and that we want to delete the item by either setting the item to failed, postponed or new status in Step 1 and 4 respectively.
An improvement to the proposed approach would be a using a time filter to ensure that the queue items being retrieved are for a given time window which have in-progress as status.
Example : Lets say a process runs at 6 AM and has multiple items in-progress and we run the process again at 12 Pm and has 2 more failure and in progress items. It on the developer to correctly use the time filter when getting queue items with in-progress status.
As I mention in the linked post that we should be aware of the business process itself. Do not use this approach when a robot is running. My experience with this method has been nothing but positive. When we have multiple thousand of transaction every day it is very crucial to keep the queue clean and tidy.
I hope UiPath will make this feature officially available to all orchestrator instances somewhere down the line.
This page Managing Queues in Studio indicates changing the deadline on an item is way to set its status to New. So by setting the deadline in the past and the postpone in the future with the Postpone Transaction Item activity, transactions can be set back to ‘New’.
If you then do a second pass, and get all these queueItems again, that you set to ‘New’ status you can now use the Delete Queue Items activity to delete them.
However Get Queue Items activity has a 100 item limit (rollover Pagination >> Top) so if your deleting lots you may need to add some pagination.QueueCleaner.zip (6.8 KB)