Owing to the dynamisms of a business landscape, it makes the requirement of a flexible system invariably an important requirement of any business organisation. So is the case with SAP. Often it is witnessed that the standard SAP code requires customization in order to cope up with customer requirements suiting all business functionalities.

SAP ABAP development gives a window to meet these requirements like the user-exits, enhancement-spots, append structure, etc. However, what is to be remembered here is the choice of service totally depends upon the kind of prerequisites, maintenance and suitability factors.

Thus, moving further into the enhancement options that SAP renders to its consumers, let’s first try to understand what enhancement in its whole exactly means?

Enhancement: A broad overview

The enhancement framework is SAP’s pioneering technology, a methodology that streamlines source code units without modification. Often the mechanism follows a process where the so called enhancement options function like ‘hooks’ where you can attach you’re the enhancements.

The major advantages of SAP ABAP enhancements over modifications:

Enhancement in SAP ABAP brings a lot many advantages.

  • Unlike modifications, enhancement process require far less working hours.
  • Enhancement ports objects in their own right that can be stored in packages of their own.
  • SAP ABAP Enhancement are far more robust during upgradations.

The major types of enhancements:

SAP ABAP Enhancement comes in various types.

User exits:
Also called form exits, these enhancements are available only in form of user exits. These are empty subroutines where you can easily add your own source code.

Customer Exits:
Available in specific programs (function module), screens and menus within standard SAP applications, customer exits are available in SD module. These are also termed as function modules that have a custom empty include program. Here, you can add your own functionality.
All customer exits initiates with CALL CUSTOMER word.


  • Do not affect standard SAP source code.
  • Do not affect software updates.

The key difference between user exit and customer exit in SAP ABAP systems

While deciding on the type of enhancement to implement in your business system, it is very important to match your business niche requirements with what SAP offers you with. Thus, in order to have a conspicuous idea it is always recommended to know the key differences of the services.

Difference Between User Exit and Customer Exit


Implemented in the form of Sub routine Implemented as: function exit
Screen exit
Menu exit
Field exit
Accessibility to all data in case of perform Limited access to data only to import, export, altering and tables parameter of function module
It is often considered to be a modification instead of enhancement It is truly categorized as an enhancement


Looses changes in case of upgrades It successfully overcomes the shortcomings of user exits
Access key required No need of access key


Enhancement options:

Broadly speaking, enhancement options are positions in repository objects where enhancements are possible. They may be provided explicitly by a developer or by a framework.

Explicit enhancement options:

Defined in a central initial system, enhancements are made in follow-on systems. Explicit enhancements are carried by the following methodologies;

  • Explicitly flagging source code segments can be supplemented by source code plug-ins.
  • Adding business add-ins in ABAP programs by object plugins with predefined interface.

Implicit enhancement options:

Implicit enhancement options are all provided by the framework. They always exist. Thus do not require enhancement spots. Implicit enhancement options are:

  • Specific options that can be enhanced by source code plug-ins.
  • 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.
  • Enhancement of a web dynpro object offers variety of options by the framework.

1. UI elements
2. Pre and post methods of web dynpro methods
3. New methods
4. New navigation paths
5. New actions
6. New attributes
7. New nodes that hold data for UI elements

Enhancement spots: A brief discussion

Enhancement spots can be defined as containers that carry information about the positions at which enhancement options were created.

Simple and composite spots:

Simple and composite enhancement spots are repository objects that establishes a tree-like structure that branches out to represent simple and composite enhancement spots respectively. A simple enhancement spot is always assigned to exactly one enhancement technology. A composite enhancement spot on the other hand, is used for semantic grouping of composite enhancement spot contains either one or more simple enhancement spots of the related type.

At Apprisia, we take special care to cater to end-to-end SAP ABAP Development Service to our customers for establishing the best possible customized SAP ABAP system. Some of the many services and products we serve our clienteles with are:

  • ABAP HR, Payroll, etc.
  • Switch framework
  • Document routing, auditing and archiving solutions
  • ABAP Webdynpro browser based SAP transactions
  • Object oriented ABAP(OO ABAP)

Start your SAP ABAP venture with the dependable assistance of Apprisia today!


– Pankaj Jain