‎2007 Jan 08 4:02 PM
‎2007 Jan 08 4:06 PM
BAPI's area FM's used to work mostly with financial operations...
RFC's are FM's that can be used from outside R/3...
All BAPI's are RFC....
Greetings,
Blag.
‎2007 Jan 19 12:05 PM
Hi ,
BAPI is used along with the R/3 application to give the object oriented view to SAP thus enabling integration of third party software . It inside itself uses RFC.
RFC are basically used when one wants to remotely execute a function module on some other R/3 system itself.
Regards,
Sunmit.
‎2007 Jan 19 12:11 PM
Hi
Remote Function Call:
RFC is an SAP interface protocol. Based on CPI-C, it considerably simplifies the programming of communication processes between systems.
RFCs enable you to call and execute predefined functions in a remote system - or even in the same system.
RFCs manage the communication process, parameter transfer and error handling.
http://help.sap.com/saphelp_47x200/helpdata/en/22/042860488911d189490000e829fbbd/frameset.htm.
BAPI
BAPI stands for Business API(Application Program Interface).
A BAPI is remotely enabled function module
ie it can be invoked from remote programs like standalone JAVA programs, web interface etc..
You can make your function module remotely enabled in attributes of Function module but
A BAPI are standard SAP function modules provided by SAP for remote access.
Also they are part of Businees Objest Repository(BOR).
BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects.
You create business objects and those are then registered in your BOR (Business Object Repository)
which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA.
In this case u only specify the business object and its method from external system
in BAPI there is no direct system call. while RFC are direct system call.
Some BAPIs provide basic functions and can be used for most SAP business object types.
These BAPIs should be implemented the same for all business object types.
Standardized BAPIs are easier to use and prevent users having to deal with a number of different BAPIs.
Whenever possible, a standardized BAPI must be used in preference to an individual BAPI.
‎2007 Jan 19 12:13 PM
Hi Prashanth,
Difference between RFC and BAPI
BAPI are RFC enabled function modules. The difference between RFC and BAPI are business objects. You create business objects and those are then registered in your BOR (Business Object Repository) which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA. In this case u only specify the business object and its method from external system. in BAPI there is no direct system call. While RFC are direct system call Some BAPIs provide basic functions and can be used for most SAP business object types. These BAPIs should be implemented the same for all business object types. Standardized BAPIs are easier to use and prevent users having to deal with a number of different BAPIs. Whenever possible, a standardized BAPI must be used in preference to an individual BAPI.
check these links
http://searchsap.techtarget.com/ateQuestionNResponse/0,289625,sid21_cid558752_tax293481,00.html
http://www.sap-img.com/abap/interview-question-on-bapi-rfc-abap-objects-tables.htm
http://www.sap-img.com/fu033.htm
http://www.sap-img.com/abap/ale-bapi.htm
Pls mark if helpful.
Regards,
Priyanka.
‎2007 Jan 19 12:13 PM
Hi Prashant ,
BAPI is a type of RFC , what makes BAPI stand out that each BAPI is assiciated with a business object in the Business Object Repository.
Regards
Arun
‎2007 Jan 19 12:14 PM
Hello Prashanth
BAPIs are technically nothing else but RFC-enabled function modules meaning that they provide us with <b>external</b> access to the SAP system.
However, BAPIs are more than "normal" RFC-enables function modules in that they generally access SAP business objects (like customer, sales order, etc.).
Usually, a BAPI corresponds to a certain dialog transaction dealing with a SAP business object (e.g. BAPI_USER_CREATE -> SU01 to create SAP users).
<b>BAPIs and dialog transaction have in common that they both validate the incoming data very carefully.</b>
For example, you may find a function module that allows you to create a user (SU01) with a wrong title. Althouth this is a minor fault you will get error messages as soon as you want to change this user using transaction SU01. The BAPI BAPI_USER_CREATE will not create a user with a wrong (i.e. not customized) title, like the dialog transaction.
In which scenarios do you use BAPIs? Most obviously, if you have to access a SAP business object but cannot use dialog.
More generally speaking, if you have either a BAPI or a normal function module which gives you the appropriate access to the business object always choose the BAPI because, as already mentioned, the interface of a BAPI is promised by SAP to be stable over several releases.
Finally, BAPIs are by no means restricted to financial operations and they have nothing to do whatsoever with object orientation (OO).
Regards
Uwe
‎2007 Jan 19 12:21 PM
Remote Function Call:
RFC is an SAP interface protocol. Based on CPI-C, it considerably simplifies the programming of communication processes between systems.
RFCs enable you to call and execute predefined functions in a remote system - or even in the same system.
RFCs manage the communication process, parameter transfer and error handling.
http://help.sap.com/saphelp_47x200/helpdata/en/22/042860488911d189490000e829fbbd/frameset.htm.
BAPI
BAPI stands for Business API(Application Program Interface).
A BAPI is remotely enabled function module
ie it can be invoked from remote programs like standalone JAVA programs, web interface etc..
You can make your function module remotely enabled in attributes of Function module but
A BAPI are standard SAP function modules provided by SAP for remote access.
Also they are part of Businees Objest Repository(BOR).
BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects.
You create business objects and those are then registered in your BOR (Business Object Repository)
which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA.
In this case u only specify the business object and its method from external system
in BAPI there is no direct system call. while RFC are direct system call.
Some BAPIs provide basic functions and can be used for most SAP business object types.
These BAPIs should be implemented the same for all business object types.
Standardized BAPIs are easier to use and prevent users having to deal with a number of different BAPIs.
Whenever possible, a standardized BAPI must be used in preference to an individual BAPI.