cancel
Showing results for 
Search instead for 
Did you mean: 

Agentry - Transaction Error Handling

Former Member
0 Kudos

I'm trying to determine the best way to handle transaction errors within my Agentry app.  The requirements are to try to transmit the transaction once but if it fails just leave the client object on the device without trying the transaction again.  How would I accomplish this in Agentry?  I already have a button where the user can retry the transaction as long as the client object is still on the device.    Currently it is retrying the failed transaction until the user does a reset their client or the transaction succeeds.  I looked into transaction error handling steps but they require a step to determine if the transaction failed.  I don't currently have a way to determine if the transaction failed external to the app.  Thanks in advance for any help!

Accepted Solutions (0)

Answers (1)

Answers (1)

jason_latko
Advisor
Advisor
0 Kudos

Christopher,

You can use transaction merging to allow the user to correct the transaction data that is causing the error before they try the transmit again.  Edit transactions have a merge setting on the main tab that defaults to "Never merge".  Change it to one of the other settings.  Then when the user edits the bad data on screen on saves it, the new data will merge with the existing bad transaction data already on the client.  Now upon transmit, the new data will be sent up, rather than the old.

Merging works as long as:

1. All transaction properties in transactions being merged point to an actual object property and not to "None".

2. All transaction properties in the second merged transaction also exist in the 1st transaction you are trying to merge into.

Jason Latko - Senior Product Developer at SAP

Former Member
0 Kudos

Thanks for the reply Jason!  That does help some but I really need help dealing with error fatality.  I want to set up the transaction to just try it once and if it fails to continue processing other data (treat it as error level more than fatal).  I also don't want it to retry that transaction again.  The users already have a way to retry in the app.

bill_froelich
Product and Topic Expert
Product and Topic Expert
0 Kudos

In this case you need to enableTransactionFailureHandling and also the enableFailedTransactionLogging.  With these enabled when your transaction fails the user can be prompted to stop (allowing for edit / retry) or continue which will then skip that transaction and remove it from the device.  The contents of the transaction will be logged to the server as an xml file for review and manual disposition.

Please be aware that if you skip a transaction it may lead to multiple failures if subsequent transactions assume the first one has succeeded.

The product team is also introduced inbound transaction management as a feature in the latest Service Manager 4.3 release that also helps with this situation.  They are looking to also bring that capability into Work Manager in a future release.

--Bill