<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic User Exits in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610132#M598664</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;how to find userexits ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 04 Aug 2007 10:47:49 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-08-04T10:47:49Z</dc:date>
    <item>
      <title>User Exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610132#M598664</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;how to find userexits ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 04 Aug 2007 10:47:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610132#M598664</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-04T10:47:49Z</dc:date>
    </item>
    <item>
      <title>Re: User Exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610133#M598665</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;       Go to the tcode you want to find the userexit for go to system&amp;gt;status&amp;gt; go to the program open it and the click on go to and attributes and note the package for the program go to tcode smod  use the information system put in the name of the package in the search criteria and then execute list of all the related user exits will be populated then you can use the import changing and tables parameter to find the right user exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Himanshu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 04 Aug 2007 10:52:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610133#M598665</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-04T10:52:53Z</dc:date>
    </item>
    <item>
      <title>Re: User Exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610134#M598666</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Shaik,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check this link to find user exits.&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.erpgenie.com/abap/code/abap26.htm" target="test_blank"&gt;http://www.erpgenie.com/abap/code/abap26.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm" target="test_blank"&gt;http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Vinay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 04 Aug 2007 11:02:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610134#M598666</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-04T11:02:32Z</dc:date>
    </item>
    <item>
      <title>Re: User Exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610135#M598667</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are 2 main ways to find exits&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) Option 1 : you don't know the name or dont have any info on user exit&lt;/P&gt;&lt;P&gt;************************************************************************************&lt;/P&gt;&lt;P&gt;run T-code : SPRO&lt;/P&gt;&lt;P&gt;    SPRO -&amp;gt; Click SAP Reference IMG -&amp;gt; click in the relevant module eg: SD (sales and Distribution) -&amp;gt;System Modifications -&amp;gt; User exits&lt;/P&gt;&lt;P&gt; You can view documentation to understand the purpose of that user exit&lt;/P&gt;&lt;P&gt;It is not that always one can find the user exits under the name "System modifications" but with respect to a module definitely user exits can be found under that module in SPRO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) Option 2 You know the name of the user exit&lt;/P&gt;&lt;P&gt;************************************************************************************&lt;/P&gt;&lt;P&gt;Run Tcode : SMOD -&amp;gt; fill in the enhancement name-&amp;gt; click on attributes and then components or directly on components and view the include...if already a code is written in the include,then on double click of include you can see the code...if an existing code is not there and you double click on the include,SAP prompts for a request&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3)Option3: You can use the custom code..which was contributed to SDN &lt;/P&gt;&lt;P&gt;*******************************************************************************************&lt;/P&gt;&lt;P&gt;Create a new report program -&amp;gt; copy the code -&amp;gt; activate -&amp;gt; run &lt;/P&gt;&lt;P&gt;on the p_tcode : give the name of the tcode for which you need to find the user exits and execute...a list of exits will be displayed...double click and follow the link&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**********************************&lt;STRONG&gt;ABAP CODE :&lt;/STRONG&gt;***********************************&lt;/P&gt;&lt;P&gt;  report zuserexit no standard page heading.&lt;/P&gt;&lt;P&gt;tables : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir.&lt;/P&gt;&lt;P&gt;         tables : tstct.&lt;/P&gt;&lt;P&gt;data : jtab like tadir occurs 0 with header line.&lt;/P&gt;&lt;P&gt;data : field1(30).&lt;/P&gt;&lt;P&gt;data : v_devclass like tadir-devclass.&lt;/P&gt;&lt;P&gt;parameters : p_tcode like tstc-tcode obligatory.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select single * from tstc where tcode eq p_tcode.&lt;/P&gt;&lt;P&gt;if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;   select single * from tadir where pgmid = 'R3TR'&lt;/P&gt;&lt;P&gt;                    and object = 'PROG'&lt;/P&gt;&lt;P&gt;                    and obj_name = tstc-pgmna.&lt;/P&gt;&lt;P&gt;   move : tadir-devclass to v_devclass.&lt;/P&gt;&lt;P&gt;      if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;         select single * from trdir where name = tstc-pgmna.&lt;/P&gt;&lt;P&gt;         if trdir-subc eq 'F'.&lt;/P&gt;&lt;P&gt;            select single * from tfdir where pname = tstc-pgmna.&lt;/P&gt;&lt;P&gt;            select single * from enlfdir where funcname =&lt;/P&gt;&lt;P&gt;            tfdir-funcname.&lt;/P&gt;&lt;P&gt;            select single * from tadir where pgmid = 'R3TR'&lt;/P&gt;&lt;P&gt;                               and object = 'FUGR'&lt;/P&gt;&lt;P&gt;                               and obj_name eq enlfdir-area.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            move : tadir-devclass to v_devclass.&lt;/P&gt;&lt;P&gt;          endif.&lt;/P&gt;&lt;P&gt;       endif.&lt;/P&gt;&lt;P&gt;       select * from tadir into table jtab&lt;/P&gt;&lt;P&gt;                     where pgmid = 'R3TR'&lt;/P&gt;&lt;P&gt;                       and object = 'SMOD'&lt;/P&gt;&lt;P&gt;                       and devclass = v_devclass.&lt;/P&gt;&lt;P&gt;        select single * from tstct where sprsl eq sy-langu and&lt;/P&gt;&lt;P&gt;                                         tcode eq p_tcode.&lt;/P&gt;&lt;P&gt;        format color col_positive intensified off.&lt;/P&gt;&lt;P&gt;        write:/(19) 'Transaction Code - ',&lt;/P&gt;&lt;P&gt;             20(20) p_tcode,&lt;/P&gt;&lt;P&gt;             45(50) tstct-ttext.&lt;/P&gt;&lt;P&gt;                    skip.&lt;/P&gt;&lt;P&gt;        if not jtab[] is initial.&lt;/P&gt;&lt;P&gt;           write:/(95) sy-uline.&lt;/P&gt;&lt;P&gt;           format color col_heading intensified on.&lt;/P&gt;&lt;P&gt;           write:/1 sy-vline,&lt;/P&gt;&lt;P&gt;                  2 'Exit Name',&lt;/P&gt;&lt;P&gt;                 21 sy-vline ,&lt;/P&gt;&lt;P&gt;                 22 'Description',&lt;/P&gt;&lt;P&gt;                 95 sy-vline.&lt;/P&gt;&lt;P&gt;           write:/(95) sy-uline.&lt;/P&gt;&lt;P&gt;           loop at jtab.&lt;/P&gt;&lt;P&gt;              select single * from modsapt&lt;/P&gt;&lt;P&gt;                     where sprsl = sy-langu and&lt;/P&gt;&lt;P&gt;                            name = jtab-obj_name.&lt;/P&gt;&lt;P&gt;                   format color col_normal intensified off.&lt;/P&gt;&lt;P&gt;                   write:/1 sy-vline,&lt;/P&gt;&lt;P&gt;                          2 jtab-obj_name hotspot on,&lt;/P&gt;&lt;P&gt;                         21 sy-vline ,&lt;/P&gt;&lt;P&gt;                         22 modsapt-modtext,&lt;/P&gt;&lt;P&gt;                         95 sy-vline.&lt;/P&gt;&lt;P&gt;           endloop.&lt;/P&gt;&lt;P&gt;           write:/(95) sy-uline.&lt;/P&gt;&lt;P&gt;           describe table jtab.&lt;/P&gt;&lt;P&gt;           skip.&lt;/P&gt;&lt;P&gt;           format color col_total intensified on.&lt;/P&gt;&lt;P&gt;           write:/ 'No of Exits:' , sy-tfill.&lt;/P&gt;&lt;P&gt;        else.&lt;/P&gt;&lt;P&gt;           format color col_negative intensified on.&lt;/P&gt;&lt;P&gt;           write:/(95) 'No User Exit exists'.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;          format color col_negative intensified on.&lt;/P&gt;&lt;P&gt;          write:/(95) 'Transaction Code Does Not Exist'.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at line-selection.&lt;/P&gt;&lt;P&gt;   get cursor field field1.&lt;/P&gt;&lt;P&gt;   check field1(4) eq 'JTAB'.&lt;/P&gt;&lt;P&gt;   set parameter id 'MON' field sy-lisel+1(10).&lt;/P&gt;&lt;P&gt;   call transaction 'SMOD' and skip first   screen.&lt;/P&gt;&lt;P&gt;                       .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward if the suggestions were found useful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Byju&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 04 Aug 2007 11:14:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610135#M598667</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-04T11:14:10Z</dc:date>
    </item>
    <item>
      <title>Re: User Exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610136#M598668</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you know the Exit name, go to transaction CMOD. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Choose menu Utillities-&amp;gt;SAP Enhancements. Enter the exit name and press enter. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You will now come to a screen that shows the function module exits for the exit. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;Finding the user-exits of a SAP transaction code&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
tables : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir.
         tables : tstct.
data : jtab like tadir occurs 0 with header line.
data : field1(30).
data : v_devclass like tadir-devclass.
parameters : p_tcode like tstc-tcode obligatory.

select single * from tstc where tcode eq p_tcode.
if sy-subrc eq 0.
   select single * from tadir where pgmid = 'R3TR'
                    and object = 'PROG'
                    and obj_name = tstc-pgmna.
   move : tadir-devclass to v_devclass.
      if sy-subrc ne 0.
         select single * from trdir where name = tstc-pgmna.
         if trdir-subc eq 'F'.
            select single * from tfdir where pname = tstc-pgmna.
            select single * from enlfdir where funcname =
            tfdir-funcname.
            select single * from tadir where pgmid = 'R3TR'
                               and object = 'FUGR'
                               and obj_name eq enlfdir-area.

            move : tadir-devclass to v_devclass.
          endif.
       endif.
       select * from tadir into table jtab
                     where pgmid = 'R3TR'
                       and object = 'SMOD'
                       and devclass = v_devclass.
        select single * from tstct where sprsl eq sy-langu and
                                         tcode eq p_tcode.
        format color col_positive intensified off.
        write:/(19) 'Transaction Code - ',
             20(20) p_tcode,
             45(50) tstct-ttext.
                    skip.
        if not jtab[] is initial.
           write:/(95) sy-uline.
           format color col_heading intensified on.
           write:/1 sy-vline,
                  2 'Exit Name',
                 21 sy-vline ,
                 22 'Description',
                 95 sy-vline.
           write:/(95) sy-uline.
           loop at jtab.
              select single * from modsapt
                     where sprsl = sy-langu and
                            name = jtab-obj_name.
                   format color col_normal intensified off.
                   write:/1 sy-vline,
                          2 jtab-obj_name hotspot on,
                         21 sy-vline ,
                         22 modsapt-modtext,
                         95 sy-vline.
           endloop.
           write:/(95) sy-uline.
           describe table jtab.
           skip.
           format color col_total intensified on.
           write:/ 'No of Exits:' , sy-tfill.
        else.
           format color col_negative intensified on.
           write:/(95) 'No User Exit exists'.
        endif.
      else.
          format color col_negative intensified on.
          write:/(95) 'Transaction Code Does Not Exist'.
      endif.

at line-selection.
   get cursor field field1.
   check field1(4) eq 'JTAB'.
   set parameter id 'MON' field sy-lisel+1(10).
   call transaction 'SMOD' and skip first   screen.

*---End of Program
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;User exits : &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Introduction &lt;/P&gt;&lt;P&gt;2. How to find user exits &lt;/P&gt;&lt;P&gt;3. Using Project management of SAP Enhancements &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Introduction: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;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. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The naming standard of function modules for functionmodule exits is: &lt;/P&gt;&lt;P&gt;EXIT_&amp;lt;program name&amp;gt;&amp;lt;3 digit suffix&amp;gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The call to a functionmodule exit is implemented as: &lt;/P&gt;&lt;P&gt;CALL CUSTOMER.-FUNCTION &lt;span class="lia-unicode-emoji" title=":red_heart:"&gt;❤️&lt;/span&gt; digit suffix&amp;gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The program for transaction VA01 Create salesorder is SAPMV45A &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you search for CALL CUSTOMER-FUNCTION i program &lt;/P&gt;&lt;P&gt;SAPMV45A you will find ( Among other user exits): &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL CUSTOMER-FUNCTION '003' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;xvbak = vbak &lt;/P&gt;&lt;P&gt;xvbuk = vbuk &lt;/P&gt;&lt;P&gt;xkomk = tkomk &lt;/P&gt;&lt;P&gt;importing &lt;/P&gt;&lt;P&gt;lvf_subrc = lvf_subrc &lt;/P&gt;&lt;P&gt;tables &lt;/P&gt;&lt;P&gt;xvbfa = xvbfa &lt;/P&gt;&lt;P&gt;xvbap = xvbap &lt;/P&gt;&lt;P&gt;xvbup = xvbup. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The exit calls function module EXIT_SAPMV45A_003 &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. How to find user exits? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you know the Exit name, go to transaction CMOD. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Choose menu Utillities-&amp;gt;SAP Enhancements. Enter the exit name and press enter. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You will now come to a screen that shows the function module exits for the exit. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Using Project management of SAP Enhancements, we want to create a project to enahance trasnaction VA01 . &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Go to transaction CMOD &lt;/P&gt;&lt;P&gt;- Create a project called ZVA01 &lt;/P&gt;&lt;P&gt;- Choose the Enhancement assign radio button and press the Change button &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the first column enter V45A0002 Predefine sold-to party in sales document. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note that an enhancement can only be used in 1 project. If the enhancement is already in use, and error message will be displayed &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Press Save &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Press Components. You can now see that enhancement uses user exit EXIT_SAPMV45A_002. Double click on the exit. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now the function module is displayed. Double click on include ZXVVAU04 in the function module &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Insert the following code into the include: E_KUNNR = '2155'. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Activate the include program. Go back to CMOD and activate the project. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Goto transaction VA01 and craete a salesorder. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note that Sold-to-party now automatically is "2155" &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What is User Exits and Customer Exits? &lt;/P&gt;&lt;P&gt;Difference between user exits &amp;amp; customer exits: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;User exit - A user exit is a three character code that instructs the system to access a program during system processing. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SXX: S is for standard exits that are delivered by SAP. XX represents the 2-digit exit number. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;UXX: U is for user exits that are defined by the user. XX represents the 2-digit exit number &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Customer exit - The R/3 enhancement concept allows you to add your own functionality to SAP&amp;#146;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. *-- Mani &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The following document is about exits in SAP :- &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The R/3 enhancement concept allows you to add your own functionality to SAP&amp;#146;s standard business applications without having to modify the original applications. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SAP creates user 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. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Types of Exits &lt;/P&gt;&lt;P&gt;There are several different types of user exits. Each of these exits acts as hooks where you can attach or "hang" your own add-ons. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Menu Exits &lt;/P&gt;&lt;P&gt;Menu exits add items to the pulldown menus in standard SAP applications. You can use these menu items to call up your own screens or to trigger entire add-on applications. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SAP creates menu exits by defining special menu items in the Menu Painter. These special entries have function codes that begin with "+" (a plus sign). You specify the menu item&amp;#146;s text when activating the item in an add-on project. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen Exits &lt;/P&gt;&lt;P&gt;Screen exits add fields to screens in R/3 applications. SAP creates screen exits by placing special subscreen areas on a standard R/3 screen and calling a customer subscreen from the standard screen&amp;#146;s flow logic. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Function Module Exits &lt;/P&gt;&lt;P&gt;Function module exits add functions to R/3 applications. Function module exits play a role in both menu and screen exits. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When you add a new menu item to a standard pull down menu, you use a function module exit to define the actions that should take place once your menu is activated. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Function module exits also control the data flow between standard programs and screen exit fields. SAP application developers create function module exits by writing calls to customer functions into the source code of standard R/3 programs. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;These calls have the following syntax: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL CUSTOMER-FUNCTION &amp;#145;001&amp;#146;. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Field Exits &lt;/P&gt;&lt;P&gt;Field exits allow you to create your own programming logic for any data element in the Dictionary. You can use this logic to carry out checks, conversions, or business-related processing for any screen field. Example: The data element BBBNR identifies a company&amp;#146;s international location number. You might want to set up your R/3 System so that all international location numbers are larger than 100. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The field exit concept lets you create a special function module that contains this logic. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You assign the special function module to the data element BBBNR. You then assign the module to any programs and screens in which users can add new international location numbers. When you activate your field exit, the system automatically triggers your special routine whenever a user enters a company location number. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In 4.6c, you can use "RSMODPRF" program to create field exits. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;An example of a user exits :- &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_exit_0001 INPUT &lt;/P&gt;&lt;P&gt;CASE okcode. &lt;/P&gt;&lt;P&gt;WHEN 'BACK OR EXIT'. &lt;/P&gt;&lt;P&gt;CASE sy-dynnr. &lt;/P&gt;&lt;P&gt;WHEN '100'. &lt;/P&gt;&lt;P&gt;SET SCREEN 0. &lt;/P&gt;&lt;P&gt;LEAVE SCREEN. &lt;/P&gt;&lt;P&gt;WHEN '200'. &lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="78" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;LI level="4" type="ul"&gt;&lt;P&gt;Note that you can write any code that satisfy your needs. **** &lt;/P&gt;&lt;/LI&gt;&lt;LI level="4" type="ul"&gt;&lt;P&gt;But in this case, this was wrote as a sample code for reference sake. **** &lt;/P&gt;&lt;/LI&gt;&lt;LI level="4" type="ul"&gt;&lt;P&gt;And you can test it. **** &lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="78" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;SET SCREEN 100. &lt;/P&gt;&lt;P&gt;LEAVE SCREEN. &lt;/P&gt;&lt;P&gt;ENDCASE. &lt;/P&gt;&lt;P&gt;ENDCASE. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check this links&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-basis-abap.com/sapab013.htm" target="test_blank"&gt;http://www.sap-basis-abap.com/sapab013.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://expertanswercenter.techtarget.com/eac/knowledgebaseAnswer/0,295199,sid63_gci982756,00.html" target="test_blank"&gt;http://expertanswercenter.techtarget.com/eac/knowledgebaseAnswer/0,295199,sid63_gci982756,00.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.easymarketplace.de/userexit.php" target="test_blank"&gt;http://www.easymarketplace.de/userexit.php&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://searchsap.techtarget.com/loginMembersOnly/1,289498,sid21_gci1145366,00.html?NextURL=http%3A//searchsap.techtarget.com/expert/KnowledgebaseAnswer/0%2C289625%2Csid21_gci1145366_tax293481%2C00.html%3Fbucket%3DETA%26topic%3D293481" target="test_blank"&gt;http://searchsap.techtarget.com/loginMembersOnly/1,289498,sid21_gci1145366,00.html?NextURL=http%3A//searchsap.techtarget.com/expert/KnowledgebaseAnswer/0%2C289625%2Csid21_gci1145366_tax293481%2C00.html%3Fbucket%3DETA%26topic%3D293481&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward all helpfull answers&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Pavan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 04 Aug 2007 11:22:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/user-exits/m-p/2610136#M598668</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-04T11:22:44Z</dc:date>
    </item>
  </channel>
</rss>

