Show TOC

 Enhancement OptionsLocate this document in the navigation structure

Definition

Enhancement options are positions in repository objects where enhancements can be made. These options are either explicitly defined (by a developer) or are provided by the framework.

Explicit Enhancement Options

Explicit enhancement options are defined by a developer in a central initial system. Enhancements are made in follow-on systems. Explicit enhancement options can currently be defined by:

  • Explicitly flagging source code points or sections in ABAP programs. For an enhancement, these can be enhanced or replaced by source code plug-ins.
  • Including Business Add-Ins (BAdIs) in ABAP programs. These programs are then enhanced by object plug-ins with predefined interfaces.

Explicit enhancement options are managed by enhancement spots and enhanced by enhancement implementations.

Implicit Enhancement Options

Implicit enhancement options are provided by the framework. They always exist and do not require enhancement spots. They are also enhanced by enhancement implementations. Implicit enhancement options are:

  • Specific options in ABAP programs - such as the end of the program - which can be enhanced by source code plug-ins. There are implicit enhancement points at the beginning and the end of each form, function module, method (of a global or local class) and the end of a report or include and each local structure. As for methods of local classes, you can enhance parameters of all types. There are also implicit options to add something in a defining section of a global class or to add the whole section (for example, a protected section) if it does not exist.
  • Parameter interfaces of function modules which can be enhanced with new optional parameters.
  • New methods, attributes, and events, which can be added to global classes. Each method of a global class offers pre-, post- and overwrite exits and options to add new optional parameters.
  • Enhancement of a Web Dynpro object you have a lot of different implicit enhancement options offered by the framework. There are enhancement options for:
    • UI elements
    • Pre- and post-methods of Web Dynpro methods
    • New methods
    • New navigation paths
    • New actions
    • New attributes
    • New nodes that hold the data for the UI elements.
      Note

      You can even add new views to a component as enhancements. Another strong advantage is that you can delete every UI element in the enhancement mode. This way, the relevant elements are still available as transport objects, but are not compiled at runtime.