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

Difference between user-exit and customer exit

Hi,

Could you please clarify is there any difference between user-exit and customer-exit if any? If any what is the difference.

Thanks,

shyla

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

5 Answers

  • Best Answer
    author's profile photo Former Member
    Former Member
    Posted on Feb 27, 2007 at 07:27 AM

    hi,

    Check these threads out

    Checkout this links..,

    ________________________________________________________________

    Also follow steps

    1)Goto se38

    2)Give "ZUSEREXIT" AND RUN IT

    3)u WILL GET ALL EXIT NAMES RELATED TO THAT TRANSACTION

    THERE ARE MANY DIFF WAYS TO FIND USER /CUSTOMER EXITS THIS IS ONE OF THEM

    ____________________________________________________________________

    A point in an SAP program where a customer's own program can be called.

    In contrast to customer exits, user exits allow developers to access and modify program components and data objects in the standard SAP System. On upgrade, each user exit must be checked to ensure that it conforms to the standard system.

    There are the following types of user exit:

    User exits that use INCLUDEs -

    These are customer enhancements that are called directly in the program.

    User exits that use tables -

    These are used and managed using Customizing.

    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 find find more information about locating applications with pre-defined exits in Locating Applications that have Exits

    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.

    ____________________________________________________________________

    1.what is the fifference between User-exit and customer exit.?

    2. Previously there were only user-exits.

    3. Then came the concept of customer-exits.

    4.user exits were nothing but

    subroutines

    FORM/PERFORM

    called from standard programs.

    5. The FORM defintion was placed inside

    an empty include file.

    6. So It was called EVERYTIME.

    and we need to MODIFY/REPAIR the

    standard include .

    7. Then it came with concept of customer-exit

    8. 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.

    *----

    -


    9. 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.

    2) how to define of them.?

    They are already defined in the system.

    We have to activate them and write our code.

    3) If a requriment comes in real time which exit we hav to use ,,, User-exit 0r customer exit.. plzz clarify.

    Usually customer exits are there.

    But in Case of SD module, especially Sales order,

    there will be user-exit includes

    _________________________________________________________________

    There isn't much difference between the two. CMOD user exits allow greater control, and have a manageable, trackable framework, it's easy to see what's in use and what isn't.

    As we users have no control over which type of exit SAP decided to put in, and where, we just have to use whatever meets our needs.

    A customer exit is a type of user exit. A user exit is a handle that SAP put into their code, allowing a customer to add their own routines. There are many types of user exit, and often they differ between modules.

    CMOD is the Project Management of SAP Enhancements (i.e., SMOD Enhancements). SMOD contains the actual enhancements and CMOD is the grouping of those SMOD enhancements.

    ___________________________________________________________________

    Go through this document

    User Exits

    Screen exits are exits that allow you to use a reserved part of the screen (A subscreen) to display or input data.

    It is determined be SAP where the sub screen will be displayed.

    The syntax is: CALL CUSTOMER-SUBSCREEN

    The screen exit is not processed untill the corresponding subscreen has been created in an enhancement project,

    and the project has been activated.

    Note:

    Function codes are only processed in the main screens flow logic

    You are not allowed to enter a name for the subscreens command field

    You are not allowed to define GUI stauses

    You are not allowed to enter a value for Next screen

    The global data of the program is not available for the subscreen. Data for the subscreen is provided by function modules.

    These function modules belongs to the same function group as the subscreen Subscreens are edited with transaction CMOD.

    When you activate a project containg subscreens, the calling screen is regenerated and the subscreen is displayed next

    time you display the calling screen

    The developer must create the subscreen and the corresponding PBO and PAI modules

    How to identify screen exits

    Look after CALL CUSTOMER-SUBSCREEN in the screenprogram of the screen you want to modify.

    Use transaction CMOD menu Utillities -> SAP enhancements to search for screen exits

    MENU EXITS

    Menu exits allow you to add your own functionallity to menus. Menu exits are implemented by SAP, and are reserved menu

    entries in the GUI interface. The developer can add his/her own text and logic for the menu.

    Function codes for menu exits all start with "+"

    Example

    We want to create a new menu item in the Office menu. The text for the menu should be "Run ZTEST", and the menu will

    run report ZTEST.

    Goto transaction SE43 Area Menu Maintenance

    In Area Menu Paramenter type 'S000' (S triple Zero)

    Select Change and ignore all the warning screens

    Expand the office menu. In the buttom of the office tree you will find a menu named "Customer function"

    Double click on the text. In the pop-up screen change the text to "Run ZTEST". Note that the trsnaction code is +C01

    Goto transaction SE93 and create transaction +C01 that calls report ZTEST.

    Now you will se the menu displayed in the office tree. If you delete transaction +C01 again, the new menu will dissapear.

    USER EXITS

    User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a functionmodule.

    The code for the function module is writeen 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.

    The naming standard of function modules for functionmodule exits is: EXIT_

    Example:

    The program for transaction VA01 Create salesorder is SAPMV45A

    If you search for CALL CUSTOMER-FUNCTION i program SAPMV45A you will find ( Among other user exits):

    CALL CUSTOMER-FUNCTION '003'

    exporting

    xvbak = vbak

    xvbuk = vbuk

    xkomk = tkomk

    importing

    lvf_subrc = lvf_subrc

    tables

    xvbfa = xvbfa

    xvbap = xvbap

    xvbup = xvbup.

    The exit calls function module EXIT_SAPMV45A_003

    pls : award points if it is useful.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Feb 27, 2007 at 07:15 AM

    hi,

    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.

    Customer exits are implemented in Z-includes and are ENHANCEMENTS to the system.

    User-exits were firstly intended to be developed for the SD module. You make your coding in includes in SAP namespace (e.g MV*). That's why, user exits are MODIFICATIONS to the system. In includes for user exits there are empty subroutines ( generally with the name convention "userexit_...") and you code using global variables of the main program.

    But, generally developers use these terms without this distinction. So, someone may mean a "customer exit" when (s)he says "user exit" or vice-versa.

    Regards,

    pankaj singh

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Feb 27, 2007 at 07:33 AM

    Hi shyla,

    1. Good question !

    2. Previously there were only user-exits.

    3. Then came the concept of customer-exits.

    4.

    user exits were nothing but

    subroutines

    FORM/PERFORM

    called from standard programs.

    5. The FORM defintion was placed inside

    an empty include file.

    6. So It was called EVERYTIME.

    and we need to MODIFY/REPAIR the

    standard include .

    7. Then it came with concept of customer-exit

    8. 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.

    *----


    9. 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.

    regards,

    amit m.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Feb 27, 2007 at 07:16 AM

    Hi,

    User exit are povided in FORMS by SAP and you need a ACCESS key to implement a user exit.

    Customer exists are provided in FUNCTION MODULES by SAP and you dont need a ACCESS key to implement a customer exit.

    CHeers

    VJ

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Feb 27, 2007 at 07:25 AM

    <b>1. User exits are called by SAP standard programs using PERFORM. where as Customer exits are called using CALL CUSTOMER FUNCTION.

    2. User exits read and change almost any global data from host program where as Customer exits only acces your import/export/changing/tables parameters

    3.very easy to manipulate erroneously global data in user exits where as Customer exits will never lead to inconsistency .

    4.User exits doesn’t have any classification where as cin ustomer exits we have function-module exit , screen exit , menu exit

    5. User exits are designed For SD module where as customer exits are basically designed for all modules.

    6.User-exits can be written only using access-key where as No need of access key is required in customer exits.

    7. Will not be there for next version unless modification assistance tool is used where as Customer-exits are not wiped during upgradation</b>

    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.