Enhancements in SAP ABAP
Enhancements are the means by which we add our own/ modify existing functionality to SAP's standard business applications.
If you try to modify any SAP standard program, it will ask you for access key which you can get from SAP market place by requesting SAP.
But enhancements normally don’t require any special access key and can be implemented directly
There are 4 ways of doing enhancements in SAP:
1. User exits:
These are technically modifications. SAP provides many subroutine with name USEREXIT_ * i.e ex: FORM USEREXIT_001
These are saved in many includes which can be found via SE80 Search for Package VMOD. These are also called as Form exits.
Custom coding can be done in the subroutine. But the main disadvantage of these exits are : It requires Access key and only SD module supports this kind of enhancements.
2. Customer exits:
Technically enhancements. Will not affect the source code of SAP program and hence no problem during upgrade. There are 3 kinds of Customer exits
a) Function exits:
Provided by means of FM's(Function modules) .The code for the function module is written by the developer. You are not writing the code directly in the function module, but in the 'Z' include that is implemented in the function module.
Ex: open any Function module EXIT_* in se37
Ex: EXIT_SAPMF02K_001. but in the SAPMF02K program you will see this as
CALL CUSTOMER-FUNCTION '001'
It will have a Z include file , just edit the file directly . No Access key required.
b) Menu Exits:
Enhances the menu available in standard SAP program. Developer can add his/her own text and logic for the menu. Function codes for menu exits all start with "+".
Format: +CUS (additional item in GUI status)
c) Screen exits:
Used to enhance the screen, add elements in screen etc
Format: CALL CUSTOMER-SUBSCREEN CUSTSCR2
Business Add-Ins may be simply defined as an object-oriented extension of the SAP enhancement technique. Multiple implementation for same BADI can be done as BADI supports encapsulation of data.
4. Enhancement Frameworks:
This is the new kind of enhancement technique provided by SAP. These provides some hooks or places where custom logic can be coded in the standard program.There are 2 kinds of Enhancement frameworks:
a) Implicit and
b) Explicit Enhancements SAP SE (Systems, Applications & Products in Data Processing) is a German multinational software corporation that makes enterprise software to manage business operations and customer relations. SAP is headquartered in Walldorf, Baden-Württemberg, Germany, with regional offices in 130 countries.The company has over 293,500 customers in 190 countries.
In 1973, the first commercial product was launched. It was called SAP R/98 and offered a common system for multiple tasks. This permitted the use of a centralized data storage, improving the maintenance of data. From a technical point of view, therefore, a database was necessary.
In 1976, SAP GmbH was founded, and moved its headquarters the following year to Walldorf, Germany. Three years later, in 1979, SAP launched SAP R/2, expanding the capabilities of the system to other areas, such as material management and production planning. In 1981, SAP brought a re-designed product to market.