cancel
Showing results for 
Search instead for 
Did you mean: 

Suggestions for Routing Failed IDOCS

Former Member
0 Kudos

We are developing an order processing system that receives an order message from a trading partner and creates and ORDERS05 IDOC. When we hand the IDOC to the SAP business system it might go right into the system as a valid order or might fail for any number of business reasons. (out of stock, contract expired, etc)

In the case that an order can not be processed, we will need to send a negative acknowledgment to the trading partner.

What's the best way to generate that negative acknowledgment?

Two ideas have been floated in our team:

(1) Write a program to poll for failed IDOC's and send a message.

(2) Can we find a way to use ALE to reroute an in failed state (say status 51) to XI where I can generate a negative acknowledgment?

Your suggestions and experiences are welcome!

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos
Former Member
0 Kudos

That's a very good document - I've used it before.

I imported the schema for the ALEAUD message into our scenario to see if it might fit our needs. However, ALEAUD is only a "technical acknowledgment" and won't be able to tell WHY a message failed.

I need to get a copy of the bad IDOC. It has the fields that I need to construct an intelligent application-acknowledgment. (Buyer, seller, line item, product description, error message, etc)

It feels like we need some kind of workflow to route a bad idoc to another system for additional processing.

Former Member
0 Kudos

Where detailed acknowledgements were required, we use Bapis as they have a response attached.

For Sales Orders, we use BAPI_SALESORDER_CREATEFROMDAT2.

Former Member
0 Kudos

why not perisist your messages on XI itself,meaning configure 2 receivers,one will point to R/3 system and the other one will point to XI server(use some directory on XI server).i m saying this since its not possible to get a response(sync) from IDOC hence to re-send the IDOC or to compare the IDOC you need to store it somewhere.

once the IDOC has been converted into simple XML(via mapping) you can use it in case any IDOC fails.

Thanx

Aamir

Former Member
0 Kudos

That's a pretty suggestion.

We haven't always had good experiences using BAPI calls. In one scenario during certain times day/evening our R/3 systems have run out of dialog processes (during backups or month end processing) and our BAPI call's would fail. Since they're synchronous, you can't restart them.

I'm going to float the idea to the team and see what they think.

Former Member
0 Kudos

We attached the responses to an email and send it to a central monitoring team for handling errors.