!--a11y-->
Enhancement Framework 
The new enhancement concept of the ABAP Workbench (Enhancement Framework) enables the integration of different concepts for modifying and enhancing development objects. The enhancement concept is supported by the Enhancement Builder tool and ABAP language elements.
In the
long-term, the new Enhancement Framework is to replace or incorporate the
existing enhancement and modification concepts. These are described under
Changing the SAP
Standard (BC).
The previous concepts were separated into modifications – that is, changes to delivered development objects, and enhancements – that is, inserting user developments at points predefined by SAP.
·
Modifications were carried out using the
Modification
Assistant and supported in system upgrades.
·
Before Release 4.6, enhancements were only possible
via
Customer
Exits. As of Release 4.6, function module exits (customer exits for source
code enhancements) were replaced with
Business
Add-Ins.
Problematic aspects of the previous concepts are:
· There is no real upgrade support for modifications and enhancements made in different systems of a transport route – for example, by SAP, to partner add-ons, or to customer developments.
· It is difficult to trace developments made in different parallel systems back to one system.
· In the case of systems in which large amounts of user developments and modifications were made, retracing and testing these developments after an upgrade is a very time-consuming process.
The aim of the new enhancement concept as of Release 7.0 of the SAP NetWeaver Application Server ABAP (SAP NetWeaver 2004s) is to unify all possible ways of modifying or enhancing SAP products (more precisely, Repository objects of the SAP NetWeaver Application Server ABAP), which go beyond the scope of Customizing. The corresponding tool is the Enhancement Builder, which is integrated in the ABAP Workbench.
In the context of the new enhancement concept, the following can be handled as enhancements:
· Modifying a Repository object
· Replacing a Repository object with an identically-named object
· Enhancing a Repository object at a predefined position
· Using a foreign object
The Enhancement Framework knows all information about an enhancement that is required, for example, for an upgrade or for the ABAP runtime environment.
The
enhancements of the enhancement concept can be switched using the
Switch Framework.
This means that an enhancement takes effect when the package in which the
above enhancement components are defined is assigned to a switch of the Switch
Framework and this switch is not deactivated.
For the current release, the enhancement concept only incorporates enhancements of Repository objects at predefined positions called enhancement options.
See also: