2007 Jan 25 10:32 AM
Hi All,
can any body plz explain diffrence between Bapi and RFC .
can any body plz explain diffrence between Bapi and Badi .
and where we will use bapi and badi 's ...
thanks in advance ,
Aravind.
hi
1.Bapi's are nothing but RFC enabled function module....... and the main difference b/w RFC & BAPI is that BAPI is maintained in BOR(business object repository)...
2.RFC can have only one instance whereas BAPI can have many.
BAPI:
A standardized programming interface that facilitates external access to business processes and data in the SAP System.
You define Business Application Programming Interfaces (BAPIs) in the Business Object Repository (BOR) as methods of SAP business objects or SAP interface types.
BAPIs offer an object-oriented view of business components in the SAP system. They are implemented and stored as RFC-enabled function modules in the Function Builder of the ABAP Workbench.
BADI
A location in a program defined by the developer where software recipient layers such as industries, partners and customers can insert additional code without modifying the original object.
Business Add-Ins enable you to distinguish between enhancements that can have no more than one implementation and those that can be actively used by any number of customers at the same time. You can also define Business Add-Ins that depend on a filter value.
You can create Business Add-Ins at every level of a multi-level system infrastructure.
You edit Business Add-Ins in the BAdI Builder.
rgds
2007 Jan 25 10:36 AM
hi aravind,
a BAPI is something like a Function, just in a bigger context.
while RFC is a "remote function call" means this function is able to be called from another System (even a legacy system). To achieve that your function has to be RFC-capable.
a BADI (Business Add Inn) is a enhancement option which enables you to implement code without modifying.
2007 Jan 25 10:37 AM
Hi Aravind,
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
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.
Badi......
BADI(Business Add-In) is the object oriented method of user exits...
Each BAdI has a definition and more than one implementation. The definition means the methods(in class concept) that are used for performing various functions. The BAdI definition can be viewed in SE18 transaction(for standard ones) and user-defined BAdIs can be created in the same transaction as well.
When you create a BAdI definition, an class interface will be automatically created and you can define your methods in the interface. The implementation of the methods can be done in SE19 transaction
Check these links for info about badi..
http://help.sap.com/saphelp_erp2005/helpdata/en/73/7e7941601b1d09e10000000a155106/frameset.htm
http://support.sas.com/rnd/papers/sugi30/SAP.ppt
Intro.....
http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm
Hope this helps.
Regards,
Priyanka.
2007 Jan 25 10:45 AM
hi
1.Bapi's are nothing but RFC enabled function module....... and the main difference b/w RFC & BAPI is that BAPI is maintained in BOR(business object repository)...
2.RFC can have only one instance whereas BAPI can have many.
BAPI:
A standardized programming interface that facilitates external access to business processes and data in the SAP System.
You define Business Application Programming Interfaces (BAPIs) in the Business Object Repository (BOR) as methods of SAP business objects or SAP interface types.
BAPIs offer an object-oriented view of business components in the SAP system. They are implemented and stored as RFC-enabled function modules in the Function Builder of the ABAP Workbench.
BADI
A location in a program defined by the developer where software recipient layers such as industries, partners and customers can insert additional code without modifying the original object.
Business Add-Ins enable you to distinguish between enhancements that can have no more than one implementation and those that can be actively used by any number of customers at the same time. You can also define Business Add-Ins that depend on a filter value.
You can create Business Add-Ins at every level of a multi-level system infrastructure.
You edit Business Add-Ins in the BAdI Builder.
rgds
| User | Count |
|---|---|
| 6 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |