IDocs or Enterprise Services in message exchange between systems

I am trying to get some qualitative and quantitative answers to the comparison of Enterprise Services or IDocs as a choice of interface technology when exchanging messages via PI with external systems.
The external systems are probably going to have their own message format, so this would concern the nature of the interfaces of the ERP system interfaces to the PI system.
I have seen one other posting in this forum related to this, but no definitive answer.
Does anybody have any system performance comparisons using the two technologies, such as message throughput / hour? Not easy to compare I know.
Does anybody have an opinion as to the suitability of Enterprise Services for such a task? Is the technology stable enough to be trusted yet?
When comparing status messages of IDocs, do the Enterprise Services have a similar way of easuly seeing the delivery status of the message using the Enterprise Service?
Would anybody or has anybody actually been brave enough to use Enterprise Services in this way yet?
Are Enterprise Services appropriate for mass messaging?
All answers very much appreciated!
Kind Regards,
Tony.

Hi Michal,
Thanks for the reply. I try to respond to your questions precisely:
if you want to compare IDocs to services then I assume
we're talking about async services right?
(and most services - just like bapis - are sync messages)
so you compare two different things
Yes, I know. What if the message scenario was asynchronous, and you chose not to handle the response message of the Enterprise Service? You could still do that, right? Then the problem becomes how do you trace the status of the Enterprise Service transaction.
IDocs have the advantage of a status message, and a good message monitoring system, but I am not sure if the visibility of errors seen with Enterprise Services if treated asynchronously would be as obvious. My knowledge of the runtime of the Enterprise Services is currently a bit limited.
The whole reason for me asking about the use of Enterprise Services is that there are so many now that could be used for message exchange, if they were suitable for the task.
Also, what about creating Asynchronous/Synchronous bridges in PI to handle the response message? Then the response is always traceable, correct? Even if the customer doesn't want the response message, the content could always be found in the PI message monitor.
Additionally, there is a transaction in ERP that wraps a BAPI into an IDoc (don't have a system in front of me at the moment and cannot recall the transaction, maybe OM69 or something similar). Now, that is taking a synchronous 'service' (the BAPI), and converting it into an asynchronous IDoc. So if this is such a bad idea, why do SAP provide the transaction? Therefore, by extension, wouldn't it be possible to do the same thing for Enterprise Services, at least from a philosophical point of view? I mean, why would SAP imply you could do this for one kind of synchronous service (the BAPIs) but not others (the Enterprise Services)?
if you're talking about migrations etc I don't believe services
will be used with LSMW but BAPIs are on the other hand
No, I was talking about high volume message scenarios, sorry for the ambiguity. I guess if the performance of Enterprise Services is comparible to that of well written BAPIs, the answer is 'yes', correct?
Kind Regards,
Tony.

Similar Messages

  • Integration scenarios from scratch -- idocs or enterprise service bundles

    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

    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

  • Idocs or enterprise services?

    Hello all,
    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

    This should be more of strategical decision rather than a technical decision. If your entire organization actually desires to adopt the SOA backbone, then it should start with servicizing the scenarios and in that case, it would be good to choose the Enterprise Bundles.
    However, if there is no such plan in near future, and all your existing business processes follows the earlier techniques only, then it would be better to go for idocs to have a standard configuration throughout the landscape.
    Technically, it would be easire for you to implement Idoc related scenario as per the availability of resources and SAP support availabale. SOA implementation being relatively new in market, would be a bit difficult to implement however, managing it in future would anytime be better than any other technical implementations like with Idocs.
    Regards,
    Prateek

  • Integration scenarios from scratch: idocs or enterprise service

    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

    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

  • Enhancing Enterprise Service - Input Message Enhancement

    Hi
    I am using a standard Enterprise Service and have successfully Enhanced the Output Message (Created a Data Type Enhancement in PI), did the BADI Implementation and mapped the Outgoing Response in Outbound Processing of BADI Implementation and able to get the new added fields in the Response from the Service.
    Now need to understand, how to Enhance the Input Message (have gone through the Enhancement Guide) and as I understand need to Enhance the element in Inbound Processing of BADI. I can see the enhanced Data Type which I created in ESR and then Implemented the Proxy for Data Type Enhancement,  nevertheless unsure what I can do with the data type in INPUT parameter/structure. As I need to map this to another Changing type parameter to be able to validate this in Outbound Processing., although I cannot create a new parameter in the Method.
    Can someone guide in steps how to do Input Message enhancement - what to do I code in Inbound Processing-Method to make that available in Outbound Processing(Need to do validation based on this field to send the response back).
    Thanks
    Swetank

    Have managed to do the same. Declared the Enhanced Input variable in public section of the class and was able to refer to the same in Outbound processing.

  • Cannot "Complete" Service Desk Messages in External System

    Hello Solution Manager Experts!
    I have an issue where we had two Solution Manager Service Desks and needed to consolidate into one.  As part of that exercise, we set up an external service desk relationship between the old service desk (call it SID OLD) and the new service desk (call it SID NEW).  When sending the service desk messages from OLD to NEW via the action (Send to External Service Desk) we can only set the status to "Accepted", and the status "Completed" is grayed out for the service desk message that resides in the NEW system.  In the NEW system, under the Transaction Details-->Transaction Analysis there an error indicating that the message can only be closed by the external system (OLD).  However, in the OLD system, the original message is already set to "Complete", and I am no longer able to do anything with the original service desk message.  Even if I make another copy of the message in the OLD system and resend the copy to the NEW system (as status "new"), I still cannot mark the service desk message "Complete".  In the OLD system, even of this copy of the service desk message is something other then Complete, I cannot mark it complete and synchronize with the new system.  I get an error in the old system that says that "The problem message is locked in external system SM_NEWCLNT030_SERVDESK", which is obviously a reference to the RFC destination for the new external service desk.
    How can I go back into the NEW system and change the message to "Complete"?  Additionally, even if I could close the message in OLD and synchronize with NEW, I am curious how I would get around this issue if the OLD Solution Manager service desk needed to be decommissioned, and was no longer available, this would still be an issue of closing out service desk messages to a status of "Complete".  Is there some kind of program I can run agains certain service desk message numbers which will "break" that relationship with the OLD service desk so I can set those messages that originated in OLD to be "Complete" in NEW?
    Any service desk messages that are created directly in NEW can be closed out to "Completed".  This is an issue that is only a problem with  messages that originated in OLD.  I hope this makes sense. 
    Your input is greatly appreciated.
    Thanks!

    I found a workaround by going into the status profile in the NEW system, double clicking on the CONF status, changed "To be distributed"  to "allowed" and "set".  Then I backed up one screen so I could see all my status's; and then in the last column of the CONF status in the column labled "Trans.", I set it to RELE instead of FINI.
    This enables me to set the "completed" messages from my legacy (OLD) system to "completed" in my (NEW) system.  Once I have all the status's set, I'll set the status profile entry for CONF back to the way it was.

  • Error creating Service Desk Message in Satellite System

    Hi all
    We have two satellite system from which I want to create a Support Message. With my current profile/role and can do it from one system and not from the other system. I get "Error in local message system, message xxx not complete". I dont think it is an Authotization fault, but not sure.
    How should the Number ranges be setup for more than one satellite system?
    Thanx
    Jaco Snyman

    Hi Tina
    This was my answer in a previuos thread:
    Hi all
    I also struggled with this for 2 weeks. But the problem is fixed.
    Do your "normal: config from the IMG and then:
    1) Make sure that you have selected for the system NOT to check for the User in SolMan
    tr: DNO_CUST04, Go to Detail, Select the field NO_USER_CHECK, "X", this is very important, otherwise you will have to create a username for everyone on the satellite system... far too timeconsuming.
    2) In your satellite system under OSS_MSG: Col1:Application: OSS_MSG, Col2: + : W. Col3: RFC Destination: SM_"SOLMANRFC"_BACK. Col4: + : CUST620. COl5: + : 1.0
    In the Solman side you maintain Col3 as "NONE".
    3) Make sure that ALL users in the satellite system has the following roles: SAP_SUPPDESK_CREATE and SAP_SV_FDB_NOTIF_BC_ADMIN.
    4) Make sure that you have TRUSTED RFC to and from your Satellite system and Solution Manager.
    The main one to be sure of is: SAP_ALL for all SOLMANxxx user in the Solution Manager system for every satelite system, because the standard roles from SAP does not work.
    This should have your Service Desk Messaging working.
    Jaco Snyman

  • Accessing the service desk message from satellite system

    gurus  ,
    after creating a creating a service desk message to solution manager system via HELP->CREATE SUPPORT MESSAGE ,
    how does the message creator from satellite system will view/change the message created by them at late point of time ?

    Susin,
    the problem is a commonly asked one that I get when I present the Solution Manager to customers. There is always the question: How can the user see the status of the ticket?
    From my point of view you can give them access to the worklist but I guess it is really a pain for the user to log on to SolMan and to access the information from there through a complex transaction.
    Alternatively to provide the user with access to the ticket system, you could consider sending out an email on (all or only critical) status changes from the system bei assigning an activity to the status change. That might be much easier for the user (and for you).
    After looking at and working with work centres I think it would be worth to install the neccesary patch level. It is really beneficial, for the user reporting a problem, as well as for your help desk monitoring their issues.
    Since it is a very common question, and Ruediger seems to be close to the source, can you (Ruediger) maybe provide some information how SAP is going to handle that in the future? Is SAP purely focussing on the work centers in Solution Manager, or is SAP planning on a track & trace possibility within the satellite system for the users?
    I guess there is no easy solution to your problem, but maybe I was able to provide some ideas how to provide more funtionality.
    Cheers
    Markus

  • Message exchange between oracle and external system

    I had posted my query before. I woull appreciate if anyone could guide me that for exchange of messages bwteen Oracle and external system which AQ programmatic environment is preferred -
    1. PL/SQL
    or
    2.JMS
    hello
    WE have an Oracle database 9i. we want to use JMS ( Java messaging service ) for sending XML messages from one oracle system to other external system.
    we are reading and creating XML files in Oracle database, but to send messages externally in forms of a XML file generated from Oracle could ayone tell me how that can be done or suggest some usefulk links
    Also how to configure Oracle with JMS, could anyone tell me any useful links where i can find more information or any suggestions on this would be fine
    thanks
    kb

    I'm not sure I understand how this question differs from the one I answered yesterday
    Re: using JMS and Oracle help urgent..
    Are you looking for alternate answers? Or looking for some specific bit of information?
    Justin
    Distributed Database Consulting, Inc.
    http://www.ddbcinc.com/askDDBC

  • Message Exchange between XI's

    hello everybody,
    because of company politics I need to exchange messages between two XI's, the actual landscape is as follows:
    R/3 Coporate <-> XI Corporate <-> R/3 Regional,
    now with new politics needs to be like this:
    R/3 Coporate <-> XI Corporate <-> XI Regional <-> R/3 Regional,
    like I told you before is because company politics reason this changes, now the question is how can I exchange messages between two XI's, and what should be the steps to this interfaces migration and the standard adapter to use maybe XI Adapter in communication channel????, thanks in advacne for your answers.
    Regards,
    Julio Cesar

    Do it like a normal B2B scenario, using XI adapter (XI 3.0 protocol).
    http://help.sap.com/saphelp_nw70/helpdata/en/01/d9d43fb9490c65e10000000a114b1d/frameset.htm
    You could even use XI 2.0 protocol in case of compatibility with older versions of XI.
    Best regards,
    Henrique.

  • Enable WSRM (Web Service Reliable Messaging) in sap system

    Hi All,
    Can any one provide document to enable wsrm in sap pi system.
    your help is much appreciated
    Thanks,
    Narendar.

    Hi,
    Please check below link it will help you.
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/107256c4-d4c4-2d10-fca1-d1676081892b?QuickLink=index&…
    Best Regards,
    Atul

  • Enterprise Services and Persistence

    Hi All,
    One of the useful things about IDocs is that their processing involves 2 steps: 1) persisting the IDoc to a database 2) processing the document. Persisting IDocs is very useful since it allows you to edit and resend them.
    I would like to know if SAP asynchronous Enterprise Services can/do provide persistence as well. Knowing this would help us decide between using IDocs or Enterprise Services in future developments.
    Your help is very much appreciated.
    Cheers
    Gerard

    Dear Gerard
    SAP's asynchronous Enterprise Services uses proxy technology which provides persistence in the local integration engine. It is similar to IDocs, whereby the message data is persisted prior to processing by the application logic.
    Additionally, SAP-delivered Enterprise Services uses Forward Error Handling (FEH) framework to enable error handling capabilities like editing and resending. Together with Error Conflict Handler (ECH) and Post-Processing Office (PPO), this enables capabilities similar to IDoc error handling.
    For more info on FEH/ECH/PPO, you can check the below wiki and blog post
    Error and Conflict Handler (ECH) - ABAP Connectivity - SCN Wiki
    Michal's Tips: SXMB_MONI vs FEH/ECH vs AIF
    I've also blogged about development of custom asynchronous proxies utilizing FEH/ECH/PPO. You can check the blog below for an example of how persistence in the integration engine is, as well as the editing and reprocessing features.
    Custom proxy framework with FEH/ECH
    Rgds
    Eng Swee

  • E2Open interfaces built using enterprise services

    We need to build purchase orders related interfaces with E2Open and discussing on using IDOC vs ESOA services that were provided by SAP with Ehp4.  We need to extend these services to get our custom data and using IDOCs would save time.  There is web methods/software AG server (middleware) that will translate SAP structure into OAG structures.
    Any suggestions/pros & cons on IDOC vs ESOA?

    Hi Rajani,
    My personal opinion:
    I think that you need to think more long term, using IDOCs would save you time now but significantly reduces your flexibility. You should also factor into consideration business goals & strategy (where the company is headed towards).
    If you have an ESR (Enterprise Service Repository) in your landscape (it comes shipped with SAP Netweaver CE or SAP PI), there's nothing stopping you from extending the standard SAP Enterprise Services to cater for your custom data. If you don't, an option would be to create custom Abap programs that wrap the enterprise service functionality & cater for your custom data. You could then web service enable those custom programs.
    I'm personally not a big fan of IDOCs because I think that they are too cumbersome to use but they also work well. You need to ask yourself, some questions like:
    - What if a business process changes, what would the impact be if you choose IDOCs over enterprise services?
    - What if you at some stage need to orchestrate provisioning interfaces to cater for changing business / market / regulatory conditions?
    - How much is SAP investing in Enterprise Services vs IDOCs?
    - How agile is the approach of using IDOCs vs Enterprise Services?
    - Does using IDOCs give you an egde over competitors & if there is a business opportunity that needs to be capitalized on, how quickly can you adapt the IDOC scenarios to take advantage of it?
    - What about skill levels (developers etc.) for IDOCs & Enterprise services?
    - Budget constraints?
    These are just some questions...
    On the whole, I think that Enterprise Services would work better but it depends on your specific circumstances & SAP is investing significantly more on Enterprise Servies than IDOCs so you would get that added benefit.
    Regards, Trevor

  • Enterprise Services Vs BAPI

    Can you plz let me know the advantages and disadvantages of Enterprise Services over BAPI..
    Help needed urgently..

    Hi,
    In addition to what Gilles said, use BAPI in scenarios where communication is between SAP systems and it is predicted that both systems are going to remain that way for considerable long time, and use Enterprise services if communication is between SAP and any other system and it is predicted that communication and system can change in future where you need to avoid interoperability issue with other systems all the time.
    ES is also useful for seamless integration with other tools and very useful in extending existing functionality.
    Another advantage of service over BAPI is open standard.
    Regards,
    Gourav

  • Service Desk Message - Sold-to Party and Reported by

    Hi Team,
    The Sold-to Party, Reported by are automatically populated in CRMD_ORDER whenever I create Service Desk Message from Satellite Systems, But when I create Support Message in Solution Manager, these does not get populated.
    Thanks,

    Hi NIshkam ,
    If you are creating the support message from help->create support message in solution manager
    Please check the following
    1. Whether the solution manager is set up in the I-Base in transaction IB52.
    2. Check if your ID is maintained in the identification tab of Business Partner for the    solution manager server.
       (path : transaction- BP -> enter the login ID ->Select change in BP role as Business Partner (Gen.)
                -> Select the Identification tab.)
       your ID should be maintained as below for the solution manager:
    ID Type              System - Installation Number - Client - BP ID
    CRM0001             zzz   - xxxxxxxxxx          -   999  - login ID.
    if these are done then system should be able to recognize the reported by and sold to party.
    if you are using CRMD_ORDER trasnaction for the creation of the support message, then the reported by field, SAP Component field and I-Base are entry fields and are not automated. On entering these and save the reported by , support team and Sold to party will be determined base on your configuration.
    check if this of help,
    regards,
    Srinivas
    Edited by: Srini24 on May 4, 2010 9:06 AM

Maybe you are looking for