I have a processing rule that calls out to a flow service which posts a document to an internal server. If something goes wrong in that flow service, I would like to change the “Processing Status” attribute within TN to “Error”. The goal is to identify which transactions failed in the TN DB and reprocess in batch at a later time. Has anyone else run into this and found a solution?
In your ProcessingRule flowService that is invoked by TN ,when ever the service/businesslogic error occurs then use the wm.tn.doc:changeStatus service.
This service needs input bizdoc that you have it in the pipeline and also set newSystemStatus=Error (which is the Processing Status" attribute within TN).
It could use wm.tn.doc.changeStatus to update processing and userstatus. But as per webmethods documentation (“Typically you should only change the user status of the document. The processing status is
primarily reserved for internal use by the Trading Networks system.”).
I do agree with you and suggest to change UserStatus rather than Processing Status,but changing processing status would not do any effect in TN though.Since i have seen couple of environments updating the processing status for internal use.
You could, however its better to change userStatus instead, unless you really have to. Use wm.tn.doc:changeStatus newUserStatus param.
Hey Thanks guys. I’m going with changing the User Status. While testing I’ve noticed that changing the Processing Status has unpredictable behaviour. Sometimes it will change to “Error”, othertimes it says “Done”. Seems like a timing issue. Regardless, User Status will do the trick.