Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

hi all

Former Member
0 Likes
1,078

hi all

what is the difference between user exit and customer exit ?

hi all

what is the difference between user exit and customer exit ?

7 REPLIES 7
Read only

Former Member
0 Likes
1,043

Hello,

Check out this link

Read only

Former Member
0 Likes
1,043

User exit -> implemented in form of subroutine under includes (starting with any letter other than y or z) so you need the access key to change them.

Customer Exit -> implemented in the form of includes starting with y or z, so you don't need an access key to change them. The developer key is more than enough to change any customer exit.

SMOD -> used to find/create/change existing exits.

CMOD -> create/find/change existing project.

Check these links.

http://www.allinterview.com/showanswers/23629.html

Read only

Former Member
0 Likes
1,043

Historically, before the enhancement concept came in, you had only user-exits to insert customer code in between SAP standard code. These were(and still are) special stub forms that SAP have put in strategic places, that you can fill in to customize the standard processing.

Then after, came the concept of enhancements. These are the CMOD and SMOD transactions. The basic principle is the same but the implementation is differents. You code inside a function instead of a form. In a way, it is also easier to figure out the inputs and outputs since they are the function parameters, as opposed to the user-exits where you have to figure out youself what global data is available to you.

Now in Reality....Real terms

User Exits These are provided only SD module . They are Empty subroutines with naming like USEREXIT_< >. We need to have Access key to implement them.

Customer Exits These are enhancement techniques. There are defined in SMOD and implemented in CMOD

Types of Customer exits: Function exit, Screen Exit, Menu exit.

Customer Exit, Enables you to determine values for variables by means of Functional Module exit.For example The function module used is EXIT_SAPLRRSO_001. Create a project in CMOD by selecting the SAP Enhancement RSR00001 and assign this to the enhanced proj and activate it.

Hope this helps

VB

Read only

Former Member
0 Likes
1,043

Hi,

User exit - A user exit is a three character code that instructs the system to access a program during system processing.

SXX: S is for standard exits that are delivered by SAP. XX represents the 2-digit exit number.

UXX: U is for user exits that are defined by the user. XX represents the 2-digit exit number

Customer exit - The R/3 enhancement concept allows you to add your own functionality to SAP’s standard business applications without having to modify the original applications. SAP creates customer exits for specific programs, screens, and menus within standard R/3 applications. These exits do not contain any functionality. Instead, the customer exits act as hooks. You can hang your own add-on functionality onto these hooks.

with regards,

sowjanya.gosala.

Read only

Former Member
0 Likes
1,043

Hi Bisu Panda,

Customer Exit is a hook and also we have to add our own functionality so we have to write the code in include file and activate that project in CMOD.

Whereas in User Exit ,we are writing the code in SAP namespace. So am thinking that its no need to create project and activating that project for user exit. Is it right? For User Exit also we have to create project please clarify me

User Exits:

-


User exits allow you to add additional functions to the SAP standard.

Programs with user exits contain subroutine calls at certain points in their syntax that are identified by the prefix USEREXIT. The actual user exits are located in an include that has been assigned to a module pool. This is where customers can include any changes (enhancements) that they want to make to the system. These includes are always processed during program flow.

Advantage: In principle, customers can modify anything they want that is found in the include (tables, structures, and so forth).

Disadvantage: SAP cannot check the individual enhancements themselves which often leads to errors in the enhancement process.

User exits (Function module exits) are exits developed by SAP. The exit is implemented as a call to a function module. The code for the function module is written by the developer. You are not writing the code directly in the function module, but in the include that is implemented in the function module.

Customer exits are not available for all programs and screens found in the SAP System. You can only use customer exits if they already exist in the SAP System.

Customer Exit

-


SAP creates customer exits for specific programs, screens, and menus within standard applications. These exits do not contain any functionality. Instead, the customer exits act as hooks. You can hang your own add-on functionality onto these hooks.

If you want to enhance the functionality of your SAP System, you should take advantage of the exits available in standard applications. There are two main reasons why you should use exits rather than modifying SAP software yourself. Add-ons attached to exits have the advantage that:

• They do not affect standard SAP source code

When you add new functionality to your SAP System using SAP’s exits, you do not alter the source code of standard SAP programs in any way. The code and screens you create are encapsulated as separate objects. These customer objects are linked to standard applications, but exist separately from SAP’s standard software package.

• They do not affect software updates

When you add new functionality to your SAP System using SAP’s exits, your objects (called customer objects) must adhere to strict naming conventions. When it comes time to upgrade a to a new software release, customer objects’ names ensure that they will not be affected by any changes or new additions to the standard software package.

Customer exits are not available for all programs and screens found in the SAP System. You can only use customer exits if they already exist in the SAP System. You can find more information about locating applications with pre-defined exits in Locating Applications that have Exits

Read only

Former Member
0 Likes
1,043

Hi Bisu ,

some more information on customer exit vs user exit

USER EXITS are FORMS and are called by SAP standard programs

using PERFORM.

CUSTOMER EXITS are FUNCTIONS so they are called using CALL

FUNCTION (or more exactly CALL CUSTOMER FUNCTION).

2.

Inside the form (user exit) you can read and change almost

any global data from host program.

Inside a function (customer exit) you can only acces your

import/export/changing/tables parameters.

3.

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.

Customer exits are more restrictive but you are sure any

change you can make to any parameters will never lead to

inconsistency

4.

User-exit doesn’t have any classification.

In customer-exit we have function-module exit , screen exit

, menu exit.

5.

User exits are Basically designed For SD module.

Costomer exits Are available for MM,SD,FI,HR…..Basically

designed for all modules.

Read only

Former Member
0 Likes
1,043

Hi,

it may help u.

1. Customer exits: Implemented as Function Modules within z includes. Anybody can change it and no access key is required.

2. User Exit: Implemented as subroutines within includes (any include except y or z includes). You need access for the specific include and then you can any subroutine (user exit) within that Include.

BADIs are the enhanced version of user exits where the same logic is implemented via classes and object (OOP)

Enchancement point is the latest once introduces with ECC6.0 . Not very sure about that but you can change it without any access key.

Please go through the following link which will help you understand the exits in a much better way:

http://help.sap.com/saphelp_nw04/helpdata/en/bf/ec07a25db911d295ae0000e82de14a/content.htm

http://www.sap-img.com/abap/what-is-the-difference-between-smod-and-cmod.htm

http://sap.niraj.tripod.com/id21.html

http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/frameset.htm

http://www.sap-img.com/ab038.htm

User Exits.

-


http://www.erpgenie.com/sap/abap/code/abap26.htm

http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm

http://www.sapgenie.com/abap/code/abap26.htm

http://www.sap-img.com/abap/what-is-user-exits.htm

http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction

http://www.easymarketplace.de/userexit.php

http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm

http://www.sappoint.com/abap/userexit.pdfUser-Exit

customer exits

https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f1a7e790-0201-0010-0a8d-f08a4662...

Menu Exit.

http://www.sappoint.com/abap/spmp.pdf

http://www.sappoint.com/abap/userexit.pdf

http://www.sapdevelopment.co.uk/enhance/mod_sapmenu.htm

http://www.sapdevelopment.co.uk/enhance/enhancehome.htm

1. Previously there were only user-exits.

2. Then came the concept of customer-exits.

3. user exits were nothing but subroutines

FORM/PERFORM

called from standard programs.

4. The FORM defintion was placed inside

an empty include file.

5. So It was called EVERYTIME.

and we need to MODIFY/REPAIR the

standard include .

6. Then it came with concept of customer-exit

7. It consists of calling a FUNCTION MODULE,

which is called only if

the user-exit is ACTIVATED (other wise not called)

In this case, the code in put inside

a pre-defined Z include.

8. Functionality of both is same, howerver

we can note the following important differences

a) Customer exit is called only if activated.

(hence, it does not waste resources)

b) in customer exit, REPAIR does not happen

to the standard include.

Exits are basically the hooks whcih SAP has provided to add your own code.

regards,

vasavi.

kindly reward if helpful.