SAP ABAP - Customer Exits - Types & How It's Different From User Exits.



Customer exits are basically hooks created by SAP within many standard programs, screens and menus on which abapers can “hang” custom functionality to meet business requirements.


Initially these exits do not contain any functionality. Hence it’s said that they simply acts as a Hook. We can hang our own add-on functionality onto these hooks.


Customer exits are nothing but a include program present in a function module which starts with CALL CUSTOMER-FUNCTION keyword. One can fill it with his/her own source code. Technically this is an enhancement.


User exits generally refer to SD module while customer exits refer to all modules like MM, SD, PP, FICO etc.


The best part of customer exits is it does not affect standard SAP source code plus these exits do not affect software updates.


Types of Customer Exits available are:

1) Function Module Exits.
2) Screen Exits
3) Menu Exits.


Difference between User Exits & Customer Exits?


- USER EXITS are FORMS and are called by SAP standard programs using PERFORM whereas CUSTOMER EXITS are FUNCTIONS and hence they are called using CALL FUNCTION (or more exactly CALL CUSTOMER FUNCTION).


- User exits are basically designed for SD module where as Customer exits are available for all the modules.


- User exits doesn't have any classification but customer-exit is classified as function-module exit, screen exit and menu exit.


- Inside the form (user exit) you can read and change almost any global data from host program but inside a function (customer exit) you can only access your import/export/changing/tables parameters.


- User exits are more flexible because you have more information to use in your code but on the other hand, it is very easy to manipulate erroneously global data and lead the standard program to a dump or even to make database inconsistent where as Customer exits are more restrictive as you have access only to Import/Tables parameters.


RELATED POSTS:


- USER EXITS - Introduction, Importance & How To Find Them.

- Difference Between BADI & ENHANCEMENTS?

- Customer Exits - Introduction, Importance & It's Types.

- Difference between User Exits & Customer Exits?

- Function Module Exits (Customer Exits) - Introduction & How To Find Them.


- Finding Customer Exits - CALL CUSTOMER-FUNCTION Keyword.

- Finding Customer Exits Via SMOD Transaction.

- Finding Customer Exits Via SE81 SAP Transaction.

- Difference Between CMOD & SMOD SAP Transaction Codes?

- Implementing Customer Exits / Function Module Exits - With Example.


- Finding Project Name & Enhancement Name Of Function Module Exit & Vice-Versa - Sample Porgram With Example.

- Sample Program On Implementing Customer Exit - Step-By-Step.



Your suggestions and comments are welcome in this section.

Please mail all your contributions to administrator@abapmadeeasy.com We request you to mention your Name, Designation, Experience & Organization you are working for. Your posts will be verified and posted in this site with your name.