1. What is the major difference between a BAPI and and RFC?
2. How do I find BAPIs in SAP?
3. How do I determine errors made from BAPI/RFC calls?
1. An RFC (Remote Functional Call) is any remotely enabled function module either provided by SAP or created by a developer. The key to an RFC is a flag set in the Function Builder (SE37) under the attributes tab called "Remote-Enabled Module". When this flag is set, the SAP application server allows this function module to be called by an external program or service.
A BAPI (Business Application Programming Interface) is a remote enabled function module that provides access to a specific SAP business object. BAPIs allow an external program or application to act on SAP business objects through a safe, published interface. When integrating with SAP, you should always use BAPIs to interact with specific SAP business applications.
2. The easiest way to find a BAPI in SAP is by using the BAPI browser: Tools -> Business Framework -> BAPI Explorer. You can also navigate directly to the BAPI explorer by using the transaction code BAPI.
You can also search for BAPIs directly in the Function Builder (SE37). The simplest way is to search using "BAPI*". The wildcard will return any function module containing BAPI as a prefix. However, SAP has begun to move away from this naming convention, so you are probably better off using the BAPI Explorer.
3. Most BAPIs with support a RETURN structure that contains all success and error indicators. RFCs are a little trickier in that they are not require to use a BAPI RETURN structure. In an RFC these errors will be part of a specific changing table and will have "ERROR" as part of their name.
Dig Deeper on SAP ABAP
Related Q&A from Austin Sincock
How to provide an SAP R/3 4.5B application server with a Web service interface Continue Reading
A reader wants to know how to consume a Web service from an SAP 4.6c R/3 application server. Continue Reading
Are you a Java/J2EE developer interested in SAP? This expert tip lists the most relevant SAP modules and technologies for you. Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.