I want to generate a summary of a robot run. When getting all items from a queue it seems i can get start time by using item.StartTransactionTime. However i cannot find a way to get the end time (outside the orchestrator). item.lastprocessedon returns the same value as item.StartTransactionTime. Any ideas?
The End time is not exposed. It cannot be retrieved outside of Orchestrator.
I will check with QA team if this is a bug and get back to you.
Thanks for your patience,
Thanks! The use case is that the process owner will often want to know an expected endtime of a process. To calculate this i need to get the endtime.
while waiting for UiPath’s response you could do it manually in the workflow. In the end of transaction handling just add:
(Now - startTime).ToString("mm\:ss")
Also the workaround does not scale well. I want to run one workflow to generate a summary when all my robots are done with the same flow. Also i want to run one workflow to generate an expected final endtime before the bots run. i have a general dislike for storing the same information in multiple places
I’m not really seeing the point why you would need a separate process to create a summary.
For scaling you could have a setup where all the bots have some shared location, network drive for example. Then i.e. use Append Line to populate each transactions processing times to the same file. I’ve used CSVs for this and have not yet had any concurrency issues.
@topi i can see how each bot could log to the same place and that would solve the issue. I would normally use a database of some sort for that. However it would effectively also duplicate the orchestrator queue which seems suboptimal. Furthermore i would need to adjust all my workflows to log in this way. With the solution i’m proposing i can run a workflow on any queue and it will tell me how everything went during the last run, how many items are left, and how long they will take to run. All this without adjusting any current workflows or using a log outside orchestrator. the only thing i need for it to work is that in the same way we have UiPathCore.QueueItem.StartTransactionTime we should also have UiPathCore.QueueItem.EndTransactionTime.