Skip to Content

Recently, we have encountered an issue wherein, a few Invoices created on the Ariba Supplier Network were not transferred over to our SAP ERP system.

The SAP Netweaver PI  Ariba Network Sender adapter was configured to pick these invoices in cXML format and post them as IDOCs in our SAP ERP system.

However, in this case, there were some issues with the content of the invoices and the SAP PI AN Adapter was unable to pick up from the Ariba Supplier Network,

The default trace files did provide some information on why the sender adapter was unable to pick up the invoice, but the business wanted a more “visible” process of notification of these type of errors.

For other errors like mapping and receiver connectivity issues, we already have the standard alert configuration in SAP PI, but in this case the standard alert mechanism would not be helpful, as there is no message id created at the point of failure.

Error messages look something like this:

[Error Level] 2[Error Code] ERR302[Error Desc] Get Pending Transaction Failed[Error Message] com.ariba.asc.connector.util.fileupload.MultipartStream$MalformedStreamException: Stream ended unexpectedlycom.ariba.asc.connector.exception.GetPendingTransactionException: com.ariba.asc.connector.util.fileupload.MultipartStream$MalformedStreamException: Stream ended unexpectedly

at com.ariba.asc.connector.controller.tasks.PendingDataDownload.downloadPendingData(PendingDataDownload.java:436)

at com.ariba.asc.connector.controller.tasks.PendingDataDownload.processWithNodeLock(PendingDataDownload.java:117)

at com.ariba.asc.connector.controller.tasks.PendingDataDownload.downloadbyChannel(PendingDataDownload.java:59)

at com.ariba.asc.sap.netweaver.xicore.connector.controller.tasks.PendingDataDownloadAction.perform(PendingDataDownloadAction.java:81)

at com.ariba.asc.sap.netweaver.xicore.connector.controller.tasks.ScheduleTaskMgr.run(ScheduleTaskMgr.java:151)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:185)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:302)

Caused by: com.ariba.asc.connector.util.fileupload.MultipartStream$MalformedStreamException: Stream ended unexpectedly

at com.ariba.asc.connector.util.fileupload.MultipartStream.readBoundary(MultipartStream.java:353)

at com.ariba.asc.connector.controller.handler.PendingDataDownloadHandler.processAttachmentsIfAny(PendingDataDownloadHandler.java:456)

at com.ariba.asc.connector.controller.handler.PendingDataDownloadHandler.handleDataResponse(PendingDataDownloadHandler.java:216)

at com.ariba.asc.connector.controller.tasks.PendingDataDownload.downloadPendingData(PendingDataDownload.java:312)

… 8 more

Luckily for us, there is an option that is available to enable e-mail notifications for scenarios that are initiated from Ariba Network . I have found very little help around this topic and hence wanted to share the detailed set-up.

Here are the steps to achieve these notifications.

  1. Edit the sender “AribaNetworkAdapterSAPNetweaver” communication channel.  (I will not cover the remaining configuration steps)
  2. Scroll down to find the check box “Email Notification”.
  3. Provide the  email server host name without the “smtp” prefix. This is important, i made the mistake of including the prefix  “smtp” and took some time to realize that it is not needed 🙂
  4. Provide the Sender and Receiver email address as per your requirement.

Sounds pretty straight forward , eh? Well, on hind-sight , yes!! 😀

Ariba Network Sender Adapter Email Notifications.PNG

To report this post you need to login first.

1 Comment

You must be Logged on to comment or reply to a post.

  1. Rakesh Sharma

    Hi Ravi,

    Very nice blog. Good to know that Ariba comm channel can trigger alert and notify that the cXML has issue that is preventing the cXML from being fetched.

    Thanks

    Rakesh

    (0) 

Leave a Reply