Skip to Content
avatar image
Former Member

user exit and customer exit

hi all

can anyone tell me wt is meant by user exit and costumer exit wt r there types?

thanx

sunnada

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

4 Answers

  • Jun 02, 2005 at 01:52 PM

    Hi ,

    look here:

    user-exit-vs-customer-exit

    regards

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Jun 02, 2005 at 03:22 PM

    Hi,

    Indeed both the USer and Customer exits in techincal point of view are same, but the context in which they are used differs.

    Please find below the lines of description:

    User Exits are a method whereby the end user can add extra functionality or

    change to a certain degree the way that SAP performs certain functions.

    How are they implemented ?

    User Exits are implemented in such a way that unlike changes to SAP

    standard code, they will survive across upgrades and hot pack applications.

    They are also User Objects and can therefore be implemented without the

    need of requesting an SSCR from SAP.

    Within the standard SAP programs at key points are calls to function

    modules starting with 'EXIT_'. These function modules generally accept as

    input parameters structures containing for example the entire Order Header

    (VBAK) of the sales order just entered, or perhaps a table of the Order

    Items. These function calls are placed at points such as just before the

    Order is saved or just before it is printed and so on.

    Also there are other exits like field/menu/screen exits are available and if you want to know about them then do send me a mail to my mail-id :

    jagathguru.chandrasekharan@wipro.com

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Jun 20, 2005 at 06:46 PM

    Hi All,

    Im a newbie into ABAP. Working on Interfaces and currently I have a new object whichj involves use of user exits.

    I have knowledge of user exits just from the theorotical point of view and no practical exp.

    I have to create a user exit for transaction CT04.

    The description is as below:-

    This user exit will enable SAP to get data associate to a specific CPU Model from the Hardware ZTable. Using the references in the Characteristics of CPU Model on the Additional Data tab the system can identify the ZTable Name and the Field for CPU Model. Once this is identified then you can retrieve CPU Group, CPU MIPS, and Tier X (X = 0-9) from the Hardware ZTable. After retrieving the information the system will load the values into the appropriate characteristic fields, which would be on

    CT04 screen.

    First and foremost thing is how do I find user exit for this transaction and where it calls in the standard program?

    Any help is greatly appreciated.

    Thanks,

    Madhu.

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Aug 23, 2005 at 04:57 AM

    User exit means we have to provide the additional functionality to sap functionality by developing field exits,screen exits,menu exits.

    customer-exits: some function exits provided by sap for customers to add some additional functionality to existing sap functionality

    locate customer Exit within program

    For this example I am using transaction MIRO Step 1Execute transaction MR1M and display program name by selecting 'Status...' from the 'System' menu Step 2Double click on the program (screen) name to enter source code, or access code via SE80.Step 3Search source code for the 'Customer-Function' string using the find button. Remember to select 'In main program'. Step 4A list of search results should be displayed indicating where all function exits can be found. You can now double click on each of them to go to its position in the source code. This also allows for the insertion of breakpoints so that you can test if the exits are called in the appropriate place. Get Function Module linked to Function Exit

    Get actual function module for Function Exit

    Once you have found the Function Exit within the source code (Find Function Exit) you need to access the actual function module it executes. This is done using the following steps: Step 1Locate desired 'Call Customer-function' statement within source code. Step 2If code is not within main program (module pool) e.g. SAP* then you will need to find this out by selecting 'Main Program' from the 'GOTO' menu. The Main program for transaction MR1M is SAPLMR1M.Step 3The actual function module name can now be calculated based on the information retrieved,it is defined by the following format:EXIT_ActivateThis will now be active for all instances of this data element, but you can assign specific program and screen combinations by pressing the ‘Assign prog./screen’ button. You can also change the code you entered in the field exit function module by pressing the ‘Edit FM’ button.Access values outside the customer exit

    When implementing a customer exit (i.e. field, user etc) have you ever wanted to be able to read additional field values available in the main SAP program but not available in your exit. Now with the use of field-symbols you can have access to any field available in the main SAP program. The code below demonstrates how this is done within a field exit on BSTNR which can be tested using transactionME21. Information on creating field exits can be found here.

    FUNCTION field_exit_bstnr.*"----


    ""Local interface:" IMPORTING" REFERENCE(INPUT)" EXPORTING" REFERENCE(OUTPUT)*"----

    -


    • create field symbol FIELD-SYMBOLS: <status>.* Assign value of variable from calling prog to field symbol ASSIGN ('(SAPMM06E)RM06E-BSART') TO <status>.* Display value retrieved in message* Note: Messages of type i and w are not allowed IF sy-subrc = 0. MESSAGE e003(zr) WITH <status> 'kkk'. ENDIF.ENDFUNCTION.

    Adding fields to standard Infotype

    SAP allows you to add additional fields to any standard Infotype. Step 1Using transaction PM01 chose the 'Enhance Infotype tab' and press the create 'All' button. Step 2The following screen will appear allowing you to enter the new fields you wish to add to the Infotype. i.e. ZZSPINST and ZZBACS Step 3Once saved and activated the new fields will appear in the Infotype screen and database table (See below)Infotype screen(PA20) Infotype database table

    Modifying Standard SAP ‘System’ and ‘help’ Menu options · Use Menu Painter (Transaction SE41), enter program MENUSYST, status MEN and click change. · Modify SAP Standard by adding function codes: · For each of the function codes click on Extras and choose ‘Active functions in multiple statuses’.

    Implementing Business Add-Ins (BADI)

    The use of object orientated code within SAP has lead to new method of enhancing standard SAP code called Business Add-Ins or BADI's for short. Although the implementation concept is based on classes, methods and inheritance you do not really have to understand this fully to implement a BADI. Simply think of methods as a function module with the same import and export parameters and follow the simple instructions below.

    Steps:1. Execute Business Add-In(BADI) transaction SE182. Enter BADI name i.e. HRPBSGB_HESA_NISR and press the display button 3. Select menu option Implementation->Create4. Give implementation a name such as Z_HRPBSGB_HESA_NISR5. You can now make any changes you require to the BADI within this implementation, for example choose the Interface tab6. Double click on the method you want to change, you can now enter any code you require.7. Please note to find out what import and export parameters a method has got return the original BADI definition (i.e. HRPBSGB_HESA_NISR) and double click on the method name for example within HRPBSGB_HESA_NISR contract is a method8. When changes have been made activate the implementation

    Add comment
    10|10000 characters needed characters exceeded