Skip to Content
author's profile photo Former Member
Former Member

hi all

hi all

what is the difference between user exit and customer exit ?

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

7 Answers

  • author's profile photo Former Member
    Former Member
    Posted on Jan 26, 2008 at 06:26 PM

    Hello,

    Check out this link

    enhancements

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 26, 2008 at 08:28 PM

    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.

    Difference between user exit and customer exits

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

    User Exit and Customer Exit

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 26, 2008 at 08:48 PM

    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

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 28, 2008 at 10:25 AM

    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.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 28, 2008 at 11:15 AM

    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

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 28, 2008 at 11:19 AM

    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.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 28, 2008 at 12:46 PM

    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-f08a4662562d

    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.

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.