Write and read Queue Item 'Output' arguments problem

Hey Guys!

I ran into two problems related to the manipulation of a queue item’s ‘Output’ argument set.

Business need (background):

I run multiple .xaml-es in a REFramework to process several queue items from an orchestrator queue (e.g. transactions) and at the end of each processing cycle I set a number of Booleans to record if all processing activities were carried out successfully (OR failed during processing).

I need this info (succesful/failed Boolean values) in order to pass them on to the queue items retried by Orchestrator (in the retry run I would like to redo only the failed processing parts to save time and avoid redundant robot work!).

The idea is to pass the Boolean values to the ‘Output’ arguments of the Transaction Item so they would be copied to the newly created (retried) queue items.

The first problem:

The Set Transaction Status activity only lets me write to ‘Output’ if the transaction is Succesful, so I cannot write to Failed items (which would be the purpose!). I tried to circumnavigate this limitation by first setting the item to Succesful status, passing the Boolean values to ‘Output’ and then setting the item’s status to Failed (all this by Set Tr Status activity).

The Transaction Item in the above scenario will be retried, but when Orchestrator creates the retried item (as ‘New’ item) the previously recorded ‘Output’ data is gone.
Is it at all technically possible what I try to achieve?
Is there any solution to transfer the ‘Output’ content to the ‘New’ item?

The second problem:

When I try to read the ‘Output’ arguments of a (succesful) Transaction Item (to which I passed values in the very preceeding step!), it throws “Object reference not set to an instance of an object”. I am using the QueueItem.output("{field defined}") command.

Is there a syntax error here?
What else can I try to get the ‘Output’ arguments?


Could anybody please give any hints about my questions?