The user exit has been around for a long time, in effect a user exit is an impact point in standard SAP coding that can be filled in with custom coding. Hence customer exit may have been a better name. Consider them as plugs that can be implemented, or they can be left alone. Implementing a user exit is done as follows:
- An SAP application is available and SAP has chosen where user exits can be implemented. In actual coding this can be recognized by
CALL CUSTOMER-EXIT 001.
. - The call is very similar to a function module call, with parameters. These parameters are very important, they control/explain what can be done with the user exit.
- On the system a function module is available with the following naming convention:
EXIT_SAPMV45A_001
, theEXIT_
is standard and the_001
indicates the exit number. The middle bit is an 8-character (old style) main program name. - This module contains a single line of coding in the form of an include:
INCLUDE ZXVVAU04.
- To start using the exit, double click on the include. If it is the first time it is used, the include will be created. So in reality: this is where the Abap syntax check allows an include statement with an non existing include.
- The user exit is implemented by adding coding in an Z-include.
The idea is to use the user exit only for it's purpose. The purpose is defined by the user exit parameters. Some user exits are set up to determine a default value - others to check user input. An Abap developer can find ways to do other things as well - but they shouldn't. If a user exit doesn't answer the requirement, try to find the user exit that does.
So where can user exits be found ?
In Abap coding: look for the CALL CUSTOMER-EXIT
statements in SAP's coding.
Check the CMOD
and SMOD
and find your exits as part of projects.
Need a project for your exit module ? As example if you found a user exit called EXIT_SAPFP50M_002
and you want to activate or deavtivate it, simply go to transaction CMODE
and press F4 on the input field for "Project". The searchhelp popup displays a few fields, but not all: press the Icon with the small arrow pointing right and the "+" (third from the right in my example). More search fields are shown. Paste the function module name in the field "Enhancement component" and press enter - the project will be looked up.