What is the difference between BAPI, BAdI, enhancement and modification?

21.5k views Asked by At

What are the differences between a BAPI (Business Application Programming Interface), BAdI (Business Add-Ins), customer enhancement and customer modification?

2

There are 2 answers

0
icbytes On BEST ANSWER

A BAPI is an API, which is either designed by you or a simple function module offered by SAP. You can use this API for "business" operations.

BAdI's (Business Add-Ins) are the new form of user exits, designed in form of interface-architecture, where a custom class can implement an interface, and its interface implementation than can be activated to get called before, after or in between sap-standard-procedures. This allows customers to provide custom code and modify data. Usually one uses BAdI's of SAP in a Z-class to add / change some standard logic, which SAP would usually process.

Enhancement's are a possibility to either "contain" BAdI classes or to offer "plain text modification of SAP source codes.

Customer modification is tight bound to enhancements when it deals with coding. With data dictionary objects this simply means the ability of appending Z-structures, for example.

0
neel On

BAPI - It is nothing, but a FM which is used to load the data into SAP system. The data may be from the legacy system.

BADI - They are the enhancement which can be applied to the standard SAP program as per the business requirement. BADI are the newer version of user exits which uses ABAP OOPs concept.

Check this article to find BADI using function module: Find Bapi using funcion module