cancel
Showing results for 
Search instead for 
Did you mean: 

SAP Integration Framework: guarantee message to be processed in original order when error

StefanoCammilli
Explorer
0 Kudos
295

Hi all,

I'm currently working with SAP B1 9.3 and SAP Integration Framework 1.22.12 on SQL server.

My Goal is:

  • migrate a document (Delivery Note for example) from a B1 system to another B1 system.
  • the document will be the same in both system
  • migrate documents in the same order as the original B1 (example: i create Delivery Note 1, 2 and 3 on sender system. I want to be sure that Delivery Note will be posted with same number in receiver system)

What is the best way to achieve this goal and be sure that document are posted with the same order?

I think that a correct way to handle this scenario is:

  • stop processing of following document if an error occur
  • alert user that an error has been raised
  • user have to fix the problem in receiver system
  • user (or system automatically if possibile) have to resend the message
  • error message is re-processed and posted in receiver system
  • all message in queue are processed in original order

To achivie this goal I setted Default Error Handling:

  • Asynchronous Transaction - Processing: set this to "Retrial after 1 minute and stop processing of following messages"
  • Asynchronous Transaction - Outbound: Outbound Error Action: "Keep in Inbound Queue" and "Don't Send To Error Inbox"
  • Overall action: QBlocker Alert

Questions: after user receive email message of blocked queue, he goes to receiver system and fix the problem and:

  • what is the correct way for him to reprocess the message? Is there some setup to let Integration Framework do it automatically? (Is it the automatic resend setup? But in this case it cannot be setted up with "Keep in inbound Queue")
View Entire Topic
StefanoCammilli
Explorer
0 Kudos

Hi Balakumar,

thank you for your suggestion it sounds reasonable to me and it is similar to the workaround we imagined (we thought a similar flow, but on the reciver side) if no "standard" solution are found.

In my opinion it seems strange that you can define a specific behavior when error happens (so this can generate queue until problem is solved) and ther's no mechanism to be sure that messages will be processed in the same order.

I hope someone of SAP B1i team can give us an opinion on standard behavior.

Anyway thanks again for your precious support!!!

Stefano