cancel
Showing results for 
Search instead for 
Did you mean: 

integration scenarios from scratch --> idocs or enterprise service bundles

Former Member
0 Kudos

Hello,

We are starting a SAP PI implementation for a new SAP ECC 6.0 system. The implementation is from scratch, so we don't have to consider any historical issues or decisions. One of the first business processes to be integrated with business partners is the Procure-to-Pay process. The old way of implementing this B2B scenario was with idocs (e.g. ORDERS05 and INVOIC03), but nowadays the enterprise service bundles also contain services for this scenario. Should I choose idocs or enterprise services as a technique to get the information send to SAP PI or send the information to SAP ECC? What are the advantages and disadvantages of both techniques? Does anyone have experience with the implementation of the enterprise services for Procure-to-Pay?

Thanks for your response!

Kind Regards,

Mark

Accepted Solutions (1)

Accepted Solutions (1)

former_member750652
Contributor
0 Kudos

Hi Mark,

I think you can also suggestions ,if you post the same question in ServiceOrientedArchitecture forum too.

Thanks,

Ram.

rosh
Participant
0 Kudos

Personally I'd always go for the services as to my mind IDocs are different in monitoring, mindset and functionality. At Teched however I was told that SAP is not converting existing PI content to use business services instead of IDocs at the moment. Also an IDoc might be in advantage in terms of size and processing time in the connected systems and existing experience.

I'd love to hear more advantages of both approaches in this thread.

Former Member
0 Kudos

Hello Robert,

I have a question about your following remark:

"At Teched however I was told that SAP is not converting existing PI content to use business services instead of IDocs at the moment."

Do you mean that the idoc functionality is not the same as the Procure-to-Pay service functionality? The service use cases describe a B2B scenario which exchanges orders, order reponses, despatch advices and invoices. These are exactly the same objects which you can send via idocs (orders05, invoic03, etc..). What would be the differences between the service and the idoc in this case? It looks like the service is the new interface functionality for the idoc.

Kind regards,

Mark

rosh
Participant
0 Kudos

Hello Mark,

> idoc functionality is not the same as the Procure-to-Pay service functionality

I've never seen the procure-to-pay services and am not competent to say whether they are sufficient to build a procure-to-pay service - however I'm quite sure they do

What I wanted to say is that when you use PI content delivered by SAP in any other scenarios you will still encounter IDocs - so you might not be able to do a full switch to services.

When using the existing enterprise services you get a well defined document structure with documentation and readable names. Opposing to that an IDOC is a general purpose text-only chunk with nodes as E1EDK05, E1EDKA1 and PACKVORSCHR.

From a PI Perspective that's no problem if you just want to pass the messages through, but if some processing is needed things get harder.

dries_guth
Explorer
0 Kudos

Hi Mark,

here are my 2 cents to your very interesting disussion.

The IDOC was designed to customize EDI data distributions between SAP Systems via messagetypes and transaktioncodes (Vorgangscodes) in the partnerdetermination which itself is mapped (the "Vorgangscode") to functional modules to do "something". The complete customizing of IDOC distribution might sometimes seems to be complex (and we both know it is more than that but it is FULL CUSTOMIZABLE from a consulting point of view.

The Enterprise Service (my personal view multiplied with the last TechEds and RampUp Delta courses) have another focus. An Enterprise Service is (mostly) some entity which is consumable from the outside world such that they are implemented with Request-Response patterns. When you only want to distribute information why will one use something like Request Response Patterns? One could argue to get back any response, any confirmation or something else....but this is also possible with IDOCs and their acks.

Another argument against to use an ES for P2P outbound scenario is, if yet not seen any ES which is triggert while create a purchase order in its related transaction. Is the BADI for such Transaction triggering the ES while the save event has been processed? If you could find out this fact and if the BADI (or some new kind of user exit for transactions) is implemented and fully supported from SAP I would choose the ES in the P2P processs. Otherwise why using the ES instead of the IDOC when using a PI as Middleware which is converting the source message type (ES or IDOC) into its proparitary legacy system format. Please let me know when you found such userexit/BADI for ES.

Please don't missunderstand my point of view, I would really throw away these IDOCS and using a couple of ES instead but what is the fully supported STANDARD from a customizable and manageable point of view. When you are familiar with proxy technology you know how easy to implement, monitor and manageble theses technology is - BUT - you always have to code some (maybe not release independent) proxy method and you maybe have to invest some knowledge for error handling, rollbacks or additional commit works - all of these stuff will be handled (mostly ) by the SAP standard delivered functions.

Last but not least - if there is any standard out there to trigger an ES from a transaction without coding I would rather use the ES instead of the IDOC. If there is no such standard I would discuss the functionality with the customer (if to complex implement an inbound or outbound proxy=ES) or extend the IDOC or use a BAPI (and extend the BAPI if needed) - mostly the proxy will the be the easiest choice if the needed field count is not to much (<30).

So long, let me know about your findings and your decision.

Regards,

Dries

Former Member
0 Kudos

Hi Dries,

I've participated in a SAP SRM project where we created an B2B interface in SAP PI. The standard functionality in SRM for a Purchase Order message to SAP PI is the asynchronous Enterprise Service PurchaseOrderRequest. So when a purchase order was created in SAP SRM, we received a PurchaseOrderRequest via the XI protocol in SAP PI. There was also a BADI in SAP SRM where we could create some ABAP code for this service. I think this should work the same for an SAP ECC system?

regards,

Mark

Former Member
0 Kudos

Hello Robert,

Concerning your remark about replacing idocs with services:

"At Teched however I was told that SAP is not converting existing PI content to use business services instead of IDocs at the moment."

In the service description "Maintain Inbound Delivery based on Despatched Delivery Notification" of Procure to Pay I found the following text:

This service replaces the EDI message processing of IDOC DESADV, the Advanced Shipping Notification (ASN), with function module IDOC_INPUT_DESADV1.

It seems that SAP is really converting idocs to services in their Enterprise Service Bundles...

regards,

Mark

Answers (0)