‎2008 May 11 5:09 AM
Hi Gurus..
Could you please tell me the differences between RFC and BAPI...?
Pls give explanation for those differences...
Thanks and Regards
Nagarjuna
‎2008 May 11 5:28 AM
Hi,
Please find the comparisons below
BAPI stands for Business Application Programming Interface.
It is a library of functions that are released to the public
as an interface into an existing SAP system from an external
system.
RFC is the protocol used to call functions in an R/3 system
by a caller external to R/3 or to call programs external to
R/3 from an R/3 system.
Functions can only be called via RFC, if they are tagged as
RFC functions in the SAP development workbench. They are
then called RFC function modules. BAPIs are complete sets of
(BAPI) function modules that model a business application.
In other words: A BAPI function is a function module that
can be called remotely using the RFC technology.
eg:
An RFC, or Remote Function Call, describes an external interface to a system function module available in SAP. For example, getting the system parameters is a system function available via RFC. use transaction se37 to view an RFC,in the atrribute tab of a function module if " Remote Enabled module" is selected in the "processing type" it is an RFC
A BAPI, or Business Application Programming Interface, is an RFC-enabled function module that provides external access to an SAP business application such as creating a sales order.
use transaction se37 -> put bapi* and press F4 to view bapis
Almost all BAPIs are enabled as RFCs which can be seen in the attributes tab in se37 .....
Regards
Byju
‎2008 May 11 5:28 AM
Hi,
Please find the comparisons below
BAPI stands for Business Application Programming Interface.
It is a library of functions that are released to the public
as an interface into an existing SAP system from an external
system.
RFC is the protocol used to call functions in an R/3 system
by a caller external to R/3 or to call programs external to
R/3 from an R/3 system.
Functions can only be called via RFC, if they are tagged as
RFC functions in the SAP development workbench. They are
then called RFC function modules. BAPIs are complete sets of
(BAPI) function modules that model a business application.
In other words: A BAPI function is a function module that
can be called remotely using the RFC technology.
eg:
An RFC, or Remote Function Call, describes an external interface to a system function module available in SAP. For example, getting the system parameters is a system function available via RFC. use transaction se37 to view an RFC,in the atrribute tab of a function module if " Remote Enabled module" is selected in the "processing type" it is an RFC
A BAPI, or Business Application Programming Interface, is an RFC-enabled function module that provides external access to an SAP business application such as creating a sales order.
use transaction se37 -> put bapi* and press F4 to view bapis
Almost all BAPIs are enabled as RFCs which can be seen in the attributes tab in se37 .....
Regards
Byju
‎2008 May 11 7:05 AM
Hi,
BAPIs are RFCs, the only difference is that BAPIs usually encapulate some complete business object. For example, creating a sales order, the BAPI would do all of the steps required to create a sales order.
Regards
Kiran Sure
‎2008 May 12 7:03 AM
Hi,
BAPI:
BAPI is an API method of a business object which intern is a RFC enabled function module. Business objects are objects in their own sense which involve with a business process.
BAPI (Business Application Programming Interface) is an API method of a business object which intern is a RFC enabled Function Module.
Business Objects are the Objects which has business sence associated to it. Ex. Sales Orders, Purchase Orders etc.
The Properties of BAPI are:
Every BAPI name should start with letters 'BAPI'.
It is an API method of a Business Object.
it does not contain a internal COMMIT statement in the Function Module.
It does not contain "CALL TRANSACTION" statements.
BAPI do not raise 'EXCEPTIONS'.
a RETURN structure is defined as an interface parameter of a BAPI which is used to log all the errors, warnings and the successful processes tha are triggered in the course of execution of a BAPI.
A successful execution of a BAPI requires the data to be commited and this process of performing a COMMIT is achieved by calling the BAPI_TRANSACTION_COMMIT' explicitly if there are no errors logged in the RETURN structure.
There are two types of BAPI's: Instance Dependent & Instance Independent.
BAPI provides an access to the SAP system for external applications to have the business data processed in the form of web services. When BAPI's are used to post the data in SAP system these are used as Function Modules.
RFC:
Remote Function Call (RFC) is a call to a function module running in a system different from the caller's. The remote function can also be called from within the same system, but usually caller and callee will be in differene system. RFC allows for remote calls between two SAP Systems (R/3 or R/2) or between an SAP System and a non-SAP System.
Reward point if useful..
‎2008 May 14 1:45 PM
Hi nagarjuna reddy ,
in simple way we can tell as
BAPI'S are created using RFC.
i.e all BAPI'S are RFC
but all RFC are not BAPIS.
Hope this may solve your problem.
Please reward points if found correct.
thanks and regards,
Rajeshwar.
‎2008 May 16 3:07 PM
Hi Reddy!!
What is the difference between a BAPI and an RFC?
BAPI stands for Business Application Programming Interface. It is a library of functions that are released to the public as an interface into an existing SAP system from an external system. RFC is the protocol used to call functions in an R/3 system by a caller external to R/3 or to call programs external to R/3 from an R/3 system. Functions can only be called via RFC, if they are tagged as RFC functions in the SAP development workbench
kindly reward points if helpful.
‎2008 May 19 11:24 AM
BAPI has object oriented concept.
BAPI are a particular kind of RFC.
In BAPI u cant have CALL TRANSACTION or CALL SCREEN.