Sunday, March 2, 2008

BAPIs vs. IDocs for Web-to-SAP interfaces, what are the differences?

We are building custom Web-to-SAP interfaces and I would like to know if it is better to interface the data from our Web site via BAPI calls or by use of IDocs. I understand the advantages and disadvantages of both.

However, are IDocs still a viable long-term option with SAP? I have been told that SAP is moving away from IDocs in favor of BAPIs. In other words, use of IDocs the old way to interface data and the new and preferred way is via BAPIs. Is there any truth to that?

IDocs are still a viable long-term option! The decision between BAPIs and IDocs depends on who will bear the burden of error handling.

BAPI error handling needs to be done by the calling application, while IDoc error handling can be done through BD87, etc. By the way, IDocs are also received through a BAPI: "IDOC-INBOUND_ASYNCHRONOUS." Still, I have no overall preference of BAPIs over IDocs or vice versa. However, if communication can be done asynchronously -- so the caller does not need an answer back right away -- then the IDoc solution is the safer and easier way of doing the work.

What are the basics of SAP NetWeaver in a nutshell?

What is the basic purpose of ALE, IDoc & NetWeaver technologies? Where it can they be used? Can I get some basic information?

In a nutshell, NetWeaver is the common brand name for all the SAP products that follow the SAP R/3 ERP software. NetWeaver delivers two completely independent (and incompatible) development frameworks. The SAP ABAP engine and the SAP WebDynpro J2EE engine. Most current SAP products are mostly written in ABAP, while Java applications on the J2EE engine gain some popularity.

IDoc is the data format used to exchange data with SAP systems. ALE is called a suite of tools used to control and monitor the flow of IDocs in and out the SAP systems.

I recommend to read the great SAP Netweaver for Dummies book. The book is based on the curriculum of the basic SAPTEC course of the SAP academy and gives a very good overview how the NetWeaver landscape is built and how it evolved from the celebrated SAP R/3.

How do I analyze a failed IDoc?

How can I analyze a failed IDoc when the status is "51" and the message is " application document not posted"?

In table EDIFCT there is the combination of message type and IDoc type assigned to a function module to processs the IDoc. Find this function and put a break-point in it. Then reprocess the IDoc with BD87 (or the ABAP RBDINPUT to save an extra step) and debug from where the procedure stops. From here, you are in the application and can to see what goes awry.

Can you give me an introduction to SAP NetWeaver?

Can you give an introduction about SAP NetWeaver, ITS, BSP and SRM? What are the relationships between these?

NetWeaver is the common name for all the later products by SAP AG, basically saying everything that is not R/3 is NetWeaver. ITS (Internet Transaction Service) used to be a Web server proxy to allow Internet access to an SAP system. ITS is now integrated in the SAP WAS (Web Application Server) and is only used as a proxy for the SAPGUI for HTML. BSP (Business Server Pages) is SAP's version for dynamic Web pages written in the SAP WAS, in analogy to Microsoft ASP (Active Server Pages) and Jave JSP (Java Server Pages). SRM is Supplier Relationship Management and it is the NetWeaver module for procurement.

What types of user exits are there in SAP?

What user exit should be used to supress the line item netpr field in production purchase order, if the items have an Info Record? The field is MEPO1211-NETPR.

There are three kind of user exits. You can search for them by looking for: - The string "userexit"
- Customer-function (in case of CMOD/SMOD)
- exithandler (in case of a BAdI, see SE18/SE19)

How do I move into the SAP industry from IT tech support?

I want to change careers in the SAP industry. I have been in the IT field in tech support for more than 10 years. I do not have a forte for programming so I want an easy transition into SAP...so what is your advice in this?


The demand in the SAP arena is for programming consultants or consulting developers. If you want to enter the SAP markets, I only see a realistic chance through the development area. There are some niches for real experts that have special skills when it comes to integrating this technology into SAP as we ask for in EAI or SOA circles, but they are traditionally tied to development as well. You may want to post the question in Jon Reed's column again, who is the career expert rather.

What is the process of costing in SAP?

What is the process for costing in SAP? I assume each material has to have a cost. Top-level of material will add all sub-component to final product. Is this right? Then it will be update the field planned price window in costing 2 of MM03 screen?

Costing is a special topic for the SAP MM/SD consultants. You need to check with them your special case. Your scenario is one out of many possibilities but there are also pricelists, price from last procurement, average price etc… as well as bottom-up calculation compared to retrograde top-down prices …




What standards should I use to compare integration tools?

What are the various factors that can be used for comparing integration tools?

Currently we are evaluating between SAP XI(SAP PI) & microsoft BTS 2006. The hub of the landscape is a mainframe application that is being expected to be replaced with SAP Shop. As a mainframe is used, files are prevalantly used in integration. The source system sends flatfile & target system parses the file.

What are your recommendations?




It is always difficult to give a general recommendation for middleware use. The decision may vary depending on the nature of the satellite applications. If you plan to continue using files, probably any middleware will do.

If you ask for a recommendation one should look at the following items:

  • Put a message queue in place.
    It is the only way to guarantee stable operation of complex communication and it also reduces monitoring efforts dramatically. If you ran XI on a Windows box, you could make use of the MSMQ preinstalled with Windows, BIZTALK will use it anyway.
  • Measure the time and effort it takes to change scenarios and interface mappings multiple times.
    This will be the killer criterion eventually. Interfaces are living objects; they tend to change and normally there specs are rather fuzzy. The features of middleware do not differ much between different offers, but their handling is widely different, so a quick and powerful graphical mapping editor and visual workflow ("Business Process") monitor tool are worth gold.

Can you give complete details on how I can get connected from SAP ABAP to Java? What's the configuration from the Basis point of view, and how do I ca

There is not much to say. The connection between SAP and Java is done via RFC or HTTP. For RFC there is the Java Connector, a set of Java libraries that allow you to write your own RFC server in Java that you can call from R/3. The same JCo also builds an API for making RFC calls from Java to R/3.

Our company is currently running R/3 release 4.6C. I am researching what it would take for our company to start using SAP XI. Is it possible to instal

EXPERT RESPONSE
XI will run as a separate instance. It is a middleware product that plugs in right between your current systems. Installing XI does not impact your SAP releases at all; it won't touch them.

So the question "does it need own boxes?" should be answered "Yes!" (actually it can run side by side on the same box as R/3, but as a separate instance, which is just like an own box).