Start of Content Area

Background documentation Modification-Free Enhancements  Locate the document in its SAP Library structure

In many cases, it will be necessary to change or enhance applications delivered by SAP or ones that already exist. Unstructured changes to the source code or layout of an application are called modifications. Modifications can cause conflicts when a new release of the application program is imported. To avoid such conflicts, you can create enhancement implementations for existing applications that were implemented using Web Dynpro for ABAP. These enhancement implementations are independent development objects that are managed separately from the respective original object. They are part of the enhancement concept that was integrated in the ABAP Workbench in Application Server ABAP Release 7.0. The original objects they are based on are not changed by this enhancement and can therefore be updated usually without any problems whenever there is a release change. You can find information about special cases where an adjustment is necessary in Adjusting Enhancements After an Upgrade.

Enhancement Implementations for Web Dynpro for ABAP

ABAP source texts in a Web Dynpro application can be enhanced using BAdIs. For this purpose, explicit anchor points (called enhancement options) are implemented in the source code at suitable points during the development of the application. Using these options, you can insert a separately developed BAdI later on into the flow of the program. Each BAdI is therefore an explicit enhancement. An implicit enhancement, on the other hand, does not need any advance implementation through the application development department.

In addition to the source code enhancements described above, you can also perform enhancements to individual sections of a Web Dynpro component. For example, you can insert UI elements into a view or hide them, or you can insert new nodes in a controller context.

Creating an Enhancement Implementation

To create an enhancement implementation, first open the required component in the object list in SE80. With double-click, you open the view or the controller in which you wish to perform the enhancement in the editor.

This graphic is explained in the accompanying text

You can find the icon for the function Create/Change Enhancement Implementation in the icon toolbar of the Web Dynpro Explorer.

Note The function Create/Change an Enhancement Implementation will only be available to you if the original component is available in display mode. If you switch from display mode to change mode, the original component itself will be ready for change, so therefore no enhancement implementation can be created or changed; the icon is grayed out.

By clicking the icon, you open either a creation dialog for a new enhancement implementation or you get a list of all the enhancement implementations that exist for this component.

Note It is good practice to add a namespace prefix to the name of the enhancement implementation. The names of objects that you create in this enhancement implementation should also begin with this namespace prefix.

Example:

If you create a pushbutton in the enhancement /myCompany/myEnhancement_1, you could call it /myCompany/button_1.

This helps to prevent name conflicts with objects from the original component.

You can find more information about Namespaces and Naming Conventions for development in Creating Namespaces for Developments.

As soon as you complete the dialog, you can then execute the enhancement or enhancement changes you have created.

Enhancements in a View

Enhancements in a Controller

Enhancements in a Window

 

Note  As a rule, several enhancement implementations, all independent of one another, can be created for a component. The individual changes can be edited only in the implementation in which they were created.

 

 

End of Content Area