<?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 Re: finding exits in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518768#M846315</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi meghana&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;below is the sample code to find the exits&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;just copy the code and run it in the selection screen give the transaction name eg:me22n etc&lt;/P&gt;&lt;P&gt;and click on execute to find the enhancements &lt;/P&gt;&lt;P&gt;in tcode smod give ths enhancement name or double click on it and click on components tab to see the exits&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here is the code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Report  Z_SJK_Y_FIND_USER_EXITS                                     *
*&amp;amp;                                                                     *
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;                                                                     *
*&amp;amp;                                                                     *
*&amp;amp;---------------------------------------------------------------------*

REPORT  Z_SJK_Y_FIND_USER_EXITS no standard page heading      .
*
* Finding the user-exits of a SAP transaction code
*
* Enter the transaction code in which you are looking for the user-exit
* and it will list you the list of user-exits in the transaction code.
* Also a drill down is possible which will help you to branch to SMOD.
*
* Written by : SAP Basis, ABAP Programming and Other IMG Stuff
*              http://www.sap-img.com
*

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.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;lt;REMOVED BY MODERATOR&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Alvaro Tejada Galindo on Mar 5, 2008 12:16 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 05 Mar 2008 16:22:06 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-03-05T16:22:06Z</dc:date>
    <item>
      <title>finding exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518766#M846313</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How can we find the exit for a particular T-code . &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for Example EXIT_SAPMV45A_003 is the exit for VA01 , like that how can we find the exits.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;can anyone post the steps to find the exits&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Mar 2008 16:17:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518766#M846313</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-05T16:17:15Z</dc:date>
    </item>
    <item>
      <title>Re: finding exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518767#M846314</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;Please use the below code and execute and enter TCode, it will list you the user exits and BADI's for TCode.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
                                                                                *&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Report  ZUSEREXIT_FIND
*&amp;amp;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;
* Request NUmber: DEVK903225
*&amp;amp;---------------------------------------------------------------------*

REPORT  ZUSEREXIT_FIND.

TABLES : TSTC,
TADIR,
MODSAPT,
MODACT,
TRDIR,
TFDIR,
ENLFDIR,
SXS_ATTRT ,
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,
P_PGMNA LIKE TSTC-PGMNA .


DATA wa_tadir type tadir.

START-OF-SELECTION.

IF NOT P_TCODE IS INITIAL.
SELECT SINGLE * FROM TSTC WHERE TCODE EQ P_TCODE.

ELSEIF NOT P_PGMNA IS INITIAL.
TSTC-PGMNA = P_PGMNA.
ENDIF.

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 in ('SMOD', 'SXSD')
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:/(105) SY-ULINE.
FORMAT COLOR COL_HEADING INTENSIFIED ON.

* Sorting the internal Table
sort jtab by OBJECT.
data : wf_txt(60) type c,
wf_smod type i ,
wf_badi type i ,
wf_object2(30) type C.
clear : wf_smod, wf_badi , wf_object2.
* Get the total SMOD.




LOOP AT JTAB into wa_tadir.
at first.
FORMAT COLOR COL_HEADING INTENSIFIED ON.

WRITE:/1 SY-VLINE,
2 'Enhancement/ Business Add-in',
41 SY-VLINE ,
42 'Description',
105 SY-VLINE.
WRITE:/(105) SY-ULINE.
endat.
clear wf_txt.
at new object.
if wa_tadir-object = 'SMOD'.
wf_object2 = 'Enhancement' .
elseif wa_tadir-object = 'SXSD'.
wf_object2 = ' Business Add-in'.

endif.
FORMAT COLOR COL_GROUP INTENSIFIED ON.

WRITE:/1 SY-VLINE,

2 wf_object2,
105 SY-VLINE.
endat.

case wa_tadir-object.
when 'SMOD'.
wf_smod = wf_smod + 1.
SELECT SINGLE MODTEXT into wf_txt
FROM MODSAPT
WHERE SPRSL = SY-LANGU
AND NAME = wa_tadir-OBJ_NAME.
FORMAT COLOR COL_NORMAL INTENSIFIED OFF.

when 'SXSD'.
* For BADis
wf_badi = wf_badi + 1 .
select single TEXT into wf_txt
from SXS_ATTRT
where sprsl = sy-langu
and EXIT_NAME = wa_tadir-OBJ_NAME.
FORMAT COLOR COL_NORMAL INTENSIFIED ON.

endcase.



WRITE:/1 SY-VLINE,
2 wa_tadir-OBJ_NAME hotspot on,
41 SY-VLINE ,
42 wf_txt,
105 SY-VLINE.
AT END OF object.
write : /(105) sy-ULINE.
ENDAT.


ENDLOOP.

WRITE:/(105) SY-ULINE.



SKIP.
FORMAT COLOR COL_TOTAL INTENSIFIED ON.
WRITE:/ 'No.of Exits:' , wf_smod.
WRITE:/ 'No.of BADis:' , wf_badi.

ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(105) 'No userexits or BADis exist'.
ENDIF.
ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(105) 'Transaction does not exist'.
ENDIF.

AT LINE-SELECTION.

data : wf_object type tadir-object.
clear wf_object.


GET CURSOR FIELD FIELD1.
CHECK FIELD1(8) EQ 'WA_TADIR'.
read table jtab with key obj_name = sy-lisel+1(20).
move jtab-object to wf_object.

case wf_object.
when 'SMOD'.
SET PARAMETER ID 'MON' FIELD SY-LISEL+1(10).

CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
when 'SXSD'.
SET PARAMETER ID 'EXN' FIELD SY-LISEL+1(20).
CALL TRANSACTION 'SE18' AND SKIP FIRST SCREEN.
endcase.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sriram Ponna.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Mar 2008 16:21:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518767#M846314</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-05T16:21:44Z</dc:date>
    </item>
    <item>
      <title>Re: finding exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518768#M846315</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi meghana&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;below is the sample code to find the exits&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;just copy the code and run it in the selection screen give the transaction name eg:me22n etc&lt;/P&gt;&lt;P&gt;and click on execute to find the enhancements &lt;/P&gt;&lt;P&gt;in tcode smod give ths enhancement name or double click on it and click on components tab to see the exits&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here is the code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Report  Z_SJK_Y_FIND_USER_EXITS                                     *
*&amp;amp;                                                                     *
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;                                                                     *
*&amp;amp;                                                                     *
*&amp;amp;---------------------------------------------------------------------*

REPORT  Z_SJK_Y_FIND_USER_EXITS no standard page heading      .
*
* Finding the user-exits of a SAP transaction code
*
* Enter the transaction code in which you are looking for the user-exit
* and it will list you the list of user-exits in the transaction code.
* Also a drill down is possible which will help you to branch to SMOD.
*
* Written by : SAP Basis, ABAP Programming and Other IMG Stuff
*              http://www.sap-img.com
*

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.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;lt;REMOVED BY MODERATOR&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Alvaro Tejada Galindo on Mar 5, 2008 12:16 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Mar 2008 16:22:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518768#M846315</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-05T16:22:06Z</dc:date>
    </item>
    <item>
      <title>Re: finding exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518769#M846316</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi , If you are looking to find an exit in a particular TCODE..then You can retrieve the main program Name attached to TCODE( In your eg: for VA01 Main Program attached is SAPMV45A) . then Go to SE37 look for exit&lt;STRONG&gt;&amp;lt;MAIN PRG nAME&amp;gt;&lt;/STRONG&gt; you will get list of all exits.. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Or else you can go to main program and the start looking for CUSTOMER-EXIT.. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope this will help you in finding user exits.. easily &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Swaroop Patri&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Mar 2008 16:22:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518769#M846316</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-05T16:22:43Z</dc:date>
    </item>
    <item>
      <title>Re: finding exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518770#M846317</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;Another standard way of finding the user exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go to Se93 --&amp;gt; Enter the TCode --&amp;gt; Display --&amp;gt; Copy the package name --&amp;gt; Go to SMOD --&amp;gt; Press F4 on Enhancement field &lt;DEL&gt;&amp;gt; Enter the copied package name in package field&lt;/DEL&gt;&amp;gt; Press Enter.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sriram Ponna.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Mar 2008 16:24:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518770#M846317</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-05T16:24:20Z</dc:date>
    </item>
    <item>
      <title>Re: finding exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518771#M846318</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;FOLLOW THIS STEPS TO FIND OUT A EXIT FOR A TCODE &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) GOTO SE93 TCODE &lt;/P&gt;&lt;P&gt;2)ENTER THE TCODE FOR WHICH YOU WANT TO FIND USER EXIT &lt;/P&gt;&lt;P&gt;3)CLICK ON DISPLAY &lt;/P&gt;&lt;P&gt;4)DOUBLE CLICK ON THE PROGRAM NAME AVAILABLE IN THAT SCREEN&lt;/P&gt;&lt;P&gt;5)GOTO -&amp;gt; ATTRIBUTES&lt;/P&gt;&lt;P&gt;6)TAKE THE PACKAGE NAME (VA)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;7)GOTO SMOD TCODE &lt;/P&gt;&lt;P&gt;8)CLICK ON F4&lt;/P&gt;&lt;P&gt;9)CLICK ON INFORMATION SYSTEM OR IT WILL SHOW THE SEARCH CRITERIA &lt;/P&gt;&lt;P&gt;10)ENTER THE PACKAGE NAME VA&lt;/P&gt;&lt;P&gt;11)CLICK ON OK&lt;/P&gt;&lt;P&gt;12)IT WILL SHOW LIST OF USER EXIT AVAILBLE FOR THAT TCODE &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLICK ON DISPLAY IT AND CLICK ON COMPONENTS THEN IT WILL SHOW THE USER EXIT NAME THERE&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2008 04:10:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518771#M846318</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-06T04:10:59Z</dc:date>
    </item>
    <item>
      <title>Re: finding exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518772#M846319</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;hope it will help you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;Reward if help.&lt;/STRONG&gt;&lt;/EM&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;REPORT z_find_userexit NO STANDARD PAGE HEADING.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  Enter the transaction code that you want to search through in order&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;  to find which Standard SAP User Exits exists.&lt;/STRONG&gt;&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Tables&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES : tstc,     "SAP Transaction Codes&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         tadir,    "Directory of Repository Objects&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         modsapt,  "SAP Enhancements - Short Texts&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         modact,   "Modifications&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         trdir,    "System table TRDIR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         tfdir,    "Function Module&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         enlfdir,  "Additional Attributes for Function Modules&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         tstct.    "Transaction Code Texts&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Variables&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : field1(30).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : v_devclass LIKE tadir-devclass.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Selection Screen Parameters&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK a01 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;&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;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK a01.&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;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Start of main program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&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;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validate Transaction Code&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE * FROM tstc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHERE tcode EQ p_tcode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Find Repository Objects for transaction code&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * FROM tadir&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       WHERE pgmid    = 'R3TR'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         AND object   = 'PROG'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         AND obj_name = tstc-pgmna.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE : tadir-devclass TO v_devclass.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT SINGLE * FROM trdir&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         WHERE name = tstc-pgmna.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF trdir-subc EQ 'F'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT SINGLE * FROM tfdir&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          WHERE pname = tstc-pgmna.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT SINGLE * FROM enlfdir&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          WHERE funcname = tfdir-funcname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT SINGLE * FROM tadir&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          WHERE pgmid    = 'R3TR'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            AND object   = 'FUGR'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            AND obj_name = enlfdir-area.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MOVE : tadir-devclass TO v_devclass.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Find SAP Modifactions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT * FROM tadir&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      INTO TABLE jtab&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHERE pgmid    = 'R3TR'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        AND object   = 'SMOD'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        AND devclass = v_devclass.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * FROM tstct&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHERE sprsl EQ sy-langu&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        AND tcode EQ p_tcode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE:/(19) 'Transaction Code - ',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    20(20) p_tcode,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    45(50) tstct-ttext.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SKIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT jtab[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE:/(95) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      FORMAT COLOR COL_HEADING INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE:/1 sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      2 'Exit Name',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      21 sy-vline ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      22 'Description',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      95 sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE:/(95) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT jtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT SINGLE * FROM modsapt&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHERE sprsl = sy-langu AND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        name = jtab-obj_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        FORMAT COLOR COL_NORMAL INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WRITE:/1 sy-vline,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        2 jtab-obj_name HOTSPOT ON,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        21 sy-vline ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        22 modsapt-modtext,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        95 sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE:/(95) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE jtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SKIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      FORMAT COLOR COL_TOTAL INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE:/ 'No of Exits:' , sy-tfill.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE:/(95) 'No User Exit exists'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE:/(95) 'Transaction Code Does Not Exist'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Take the user to SMOD for the Exit that was selected.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT LINE-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  GET CURSOR FIELD field1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK field1(4) EQ 'JTAB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2008 04:13:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518772#M846319</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-06T04:13:06Z</dc:date>
    </item>
    <item>
      <title>Re: finding exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518773#M846320</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;This is the simplest way I know of &lt;/P&gt;&lt;P&gt;Goto se38 &lt;/P&gt;&lt;P&gt;Run program ZUSEREXIT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;enter the t code..... you will get all the userexits for that t code....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward points if helpful....&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2008 04:35:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518773#M846320</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-06T04:35:34Z</dc:date>
    </item>
    <item>
      <title>Re: finding exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518774#M846321</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Locating User Exits                 Reward if useful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Before you can add functionality to a SAP system, you need to be able to locate the appropriate user exits. SAP has provided around 2000 user exits. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Searching from transaction CMOD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Searching from the Application Hierarchy&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Making your own customized search&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Keep in mind that you must first search for an enhancement. Once you find an enhancement, you can display its components -- the actual user exits. Then you need to include the enhancement containing the required user exit as a component in your own project. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Method #1: Using Transaction CMOD &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Transaction CMOD contains search functionality to help locate enhancements.&lt;/P&gt;&lt;P&gt;- Selecting the "Utilities -&amp;gt; SAP enhancements" menu path in transaction CMOD will take you to an enhancement selection screen .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- You can limit the search for enhancements based on:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Enhancement name&lt;/P&gt;&lt;P&gt;Development class&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- After clicking on the &amp;#145;Execute&amp;#146; pushbutton (or &amp;#145;F8&amp;#146;) on the selection screen, the system will display a listing of the development classes that contain enhancements (see graphic above).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- From this listing, you can double-click a development class to display its enhancements.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- If you have clicked on the &amp;#145;Display components&amp;#146; pushbutton on the selection screen (see graphic on previous page), the components of each enhancement will automatically be displayed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Remark: To use this search method one must either know the part of the enhancement name or the development class. But if one looks at SAP&amp;#146;s naming convention for user exits (see note below), the screen numbers/program names/ function codes/etc are contained in the components name and there is no scope for that in selection options. Also one cannot restrict the search to only one type of exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Method #2: Using SAP Application Hierarchy&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Selecting the "Overview -&amp;gt; Applic. hierarchy -&amp;gt; SAP" menu path in the ABAP/4 Development Workbench will take you to a listing of all standard SAP applications and components .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- To locate a user exit for a particular application, follow these steps &lt;/P&gt;&lt;P&gt;from the SAP Application Hierarchy:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Select the appropriate application by single clicking on it.&lt;/P&gt;&lt;P&gt;- Choose the "Edit Sel./desel. subtree" menu path.&lt;/P&gt;&lt;P&gt;- Click on the &amp;#145;Repository Infosys.&amp;#146; pushbutton.&lt;/P&gt;&lt;P&gt;- This will take you to the ABAP/4 Repository Information System.&lt;/P&gt;&lt;P&gt;- Double click on the &amp;#145;Environment&amp;#146; branch.&lt;/P&gt;&lt;P&gt;- Double click on the &amp;#145;Customer enhancement&amp;#146; branch.&lt;/P&gt;&lt;P&gt;- Double-click on the &amp;#145;Customer exit&amp;#146; branch.&lt;/P&gt;&lt;P&gt;- This will take you to the customer exit (or enhancement) selection screen with the appropriate development class for the application selecting on the Application Hierarchy.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Click on the &amp;#145;Execute&amp;#146; pushbutton.&lt;/P&gt;&lt;P&gt;- This will take you to a listing of all enhancements that meet the selection criteria.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;From this listing, you can display the components of each enhancement and the documentation. You will be taken automatically to transaction SMOD from the ABAP/4 Repository Information System.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Remark: To use this one must have knowledge about the application hierarchy to which that particular enhancement belongs. Also one has to explode individual enhancements to identify weather the component is contained in that enhancement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Like previous method, there is no scope for selection option on the components name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Method #3: Writing a small report program&lt;/P&gt;&lt;P&gt;The details about projects, enhancements and components are contained in two SAP tables:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODSAP: containing enhancement name, type of exit and component&lt;/P&gt;&lt;P&gt;MODACT: containing project name and enhancements&lt;/P&gt;&lt;P&gt;Thus by writing a report program to retrieve data from these two tables, you can customize your search requirements. Code for one such sample program is attached in annexure A and the corresponding transaction code to execute this program is YSMD .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Using this you can list all components that match a particular string like the program name or the function code as well as search for only one type of exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NOTE: SAP&amp;#146;s naming convention for user exits-&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;· Program/Function exits : EXIT_AAAAAAAA_nnn where&lt;/P&gt;&lt;P&gt;AAAAAAAA stands for the program name which contains the exit and&lt;/P&gt;&lt;P&gt;nnn is a SAP assigned number starting from 001&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;· Menu exits : AAAAAAAA+XXX where&lt;/P&gt;&lt;P&gt;AAAAAAAA stands for the program name which contains the exit and&lt;/P&gt;&lt;P&gt;+XXX is the name of the function code contained in the menu item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;· Screen Exits : AAAAAAAA_nnnn_BBBBBBBB_CCCCCCCC_mmmm where&lt;/P&gt;&lt;P&gt;AAAAAAAA : calling program name&lt;/P&gt;&lt;P&gt;nnnn : calling screen number&lt;/P&gt;&lt;P&gt;BBBBBBBB : area&lt;/P&gt;&lt;P&gt;CCCCCCCC : called program name&lt;/P&gt;&lt;P&gt;mmmm : called screen number&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Source Code to find User Exits 1&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;REPORT YSMOD2&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SELECTION TEXTS : INPUT1 ----&amp;gt; Enter search term for Trxn.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INPUT2 ----&amp;gt; Enter type of exit&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;REPORT YSMOD2 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: MODSAP, MODACT, TSTC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: INPUT1 LIKE TSTC-TCODE DEFAULT ' ',&lt;/P&gt;&lt;P&gt;INPUT2 LIKE MODSAP-TYP DEFAULT ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: SEARCH1(6),&lt;/P&gt;&lt;P&gt;SEARCH2(3),&lt;/P&gt;&lt;P&gt;SEARCH3 LIKE MODSAP-MEMBER.&lt;/P&gt;&lt;P&gt;DATA : FIRST_ROW VALUE 'Y'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONCATENATE: '%' INPUT1 '%' INTO SEARCH1,&lt;/P&gt;&lt;P&gt;'%' INPUT2 INTO SEARCH2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM TSTC WHERE TCODE LIKE SEARCH1.&lt;/P&gt;&lt;P&gt;FIRST_ROW = 'Y'.&lt;/P&gt;&lt;P&gt;CHECK TSTC-PGMNA NE SPACE.&lt;/P&gt;&lt;P&gt;CONCATENATE '%' TSTC-PGMNA '%' INTO SEARCH3.&lt;/P&gt;&lt;P&gt;SELECT * FROM MODSAP WHERE TYP LIKE SEARCH2&lt;/P&gt;&lt;P&gt;AND MEMBER LIKE SEARCH3.&lt;/P&gt;&lt;P&gt;SELECT SINGLE * FROM MODACT WHERE MEMBER = MODSAP-NAME.&lt;/P&gt;&lt;P&gt;IF FIRST_ROW EQ 'Y'.&lt;/P&gt;&lt;P&gt;WRITE: /0 TSTC-TCODE, 6 TSTC-PGMNA, 16 MODSAP-NAME, 32 MODSAP-TYP,&lt;/P&gt;&lt;P&gt;45 MODSAP-MEMBER, 70 MODACT-NAME.&lt;/P&gt;&lt;P&gt;FIRST_ROW = 'N'.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;WRITE: /16 MODSAP-NAME, 32 MODSAP-TYP, 45 MODSAP-MEMBER, 70 MODACT-NAME.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CLEAR : MODSAP, MODACT.&lt;/P&gt;&lt;P&gt;ENDSELECT.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;WRITE : /0 TSTC-TCODE, 6 TSTC-PGMNA, 30 'No exits found'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CLEAR TSTC.&lt;/P&gt;&lt;P&gt;ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;CLEAR: SEARCH1, SEARCH2, SEARCH3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Source Code to Locate User Exits&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;REPORT YSMOD&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SELECTION TEXTS : INPUT1 ----&amp;gt; Enter search term for Enhancmn&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INPUT2 ----&amp;gt; Enter type of exit&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INPUT3 ----&amp;gt; Enter search term for componen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;REPORT YSMOD .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: MODSAP, MODACT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: INPUT1 LIKE MODSAP-NAME DEFAULT ' ',&lt;/P&gt;&lt;P&gt;INPUT2 LIKE MODSAP-TYP DEFAULT ' ',&lt;/P&gt;&lt;P&gt;INPUT3 LIKE MODSAP-MEMBER DEFAULT ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: SEARCH1 LIKE MODSAP-NAME,&lt;/P&gt;&lt;P&gt;SEARCH2(3), " like modsap-typ,&lt;/P&gt;&lt;P&gt;SEARCH3 LIKE MODSAP-MEMBER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONCATENATE: '%' INPUT1 '%' INTO SEARCH1,&lt;/P&gt;&lt;P&gt;'%' INPUT2 INTO SEARCH2,&lt;/P&gt;&lt;P&gt;'%' INPUT3 '%' INTO SEARCH3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM MODSAP WHERE NAME LIKE SEARCH1&lt;/P&gt;&lt;P&gt;AND TYP LIKE SEARCH2&lt;/P&gt;&lt;P&gt;AND MEMBER LIKE SEARCH3.&lt;/P&gt;&lt;P&gt;SELECT SINGLE * FROM MODACT WHERE MEMBER = MODSAP-NAME.&lt;/P&gt;&lt;P&gt;WRITE: /10 MODSAP-NAME, 30 MODSAP-TYP, 45 MODSAP-MEMBER, 70 MODACT-NAME.&lt;/P&gt;&lt;P&gt;CLEAR : MODSAP, MODACT.&lt;/P&gt;&lt;P&gt;ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;WRITE : /'Not found'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;CLEAR: SEARCH1, SEARCH2, SEARCH3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step by step procedure for creating Field Exits&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are eight steps to creating a field exit:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step 1: Determine Data Element&lt;/P&gt;&lt;P&gt;Step 2: Go To Field Exit Transaction&lt;/P&gt;&lt;P&gt;Step 3: Create Field Exit&lt;/P&gt;&lt;P&gt;Step 4: Create Function Module&lt;/P&gt;&lt;P&gt;Step 5: Code Function Module&lt;/P&gt;&lt;P&gt;Step 6: Activate Function Module&lt;/P&gt;&lt;P&gt;Step 7: Assign Program/Screen&lt;/P&gt;&lt;P&gt;Step 8: Activate Field Exit&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step 1: Determine Data Element&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Before you can begin adding the functionality for a field exit, you must know the corresponding data element.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- An easy way to determine the data element associated to a particular screen field is to:&lt;/P&gt;&lt;P&gt;Go the appropriate screen.&lt;/P&gt;&lt;P&gt;Position the cursor in the appropriate field.&lt;/P&gt;&lt;P&gt;Press &amp;#145;F1&amp;#146; for field-level help.&lt;/P&gt;&lt;P&gt;Click on the &amp;#145;Technical info&amp;#146; pushbutton (or press &amp;#145;F9&amp;#146;) on the help dialog box.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;On this Technical Information dialog box, the data element will be specified if the field is 'painted' from the ABAP/4 Dictionary.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step 2: Go To Field Exit Transaction&lt;/P&gt;&lt;P&gt;- The transaction to create field exits is CMOD.&lt;/P&gt;&lt;P&gt;- You can use the menu path Tools -&amp;gt; ABAP/4 Workbench -&amp;gt; Utilities -&amp;gt; Enhancements -&amp;gt; Project management.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- From the initial screen of transaction CMOD, choose the Text enhancements -&amp;gt; Field exits menu path.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- After choosing this menu path, you will be taken to the field exits screen. From here, you can create a field exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NOTE : Even though you use transaction CMOD to maintain field exits, you do not need to create a project to activate field exits.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step 3: Create Field Exit&lt;/P&gt;&lt;P&gt;- From the field exit screen of transaction CMOD, choose the Field exit -&amp;gt; Create menu path.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- After choosing this menu path, a dialog box will prompt you for the appropriate data element .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Enter the data element name and click the &amp;#145;Continue&amp;#146; pushbutton.&lt;/P&gt;&lt;P&gt;- Now, you will be able to create the function module associated to the data element&amp;#146;s field exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step 4: Create Function Module&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- You will automatically be taken to the Function Library (SE37) after entering a data element name and clicking the &amp;#145;Continue&amp;#146; pushbutton.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- In the &amp;#145;Function module&amp;#146; field, a function module name will be defaulted by the system based on the data element specified. This name will have the following convention:&lt;/P&gt;&lt;P&gt;FIELD_EXIT_&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- You can add an identifier (an underscore followed by a single character ).&lt;/P&gt;&lt;P&gt;- The first function module for a data element&amp;#146;s field exit must be created without an identifier.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- To create the function module, click on the &amp;#145;Create&amp;#146; pushbutton, choose menu path Function module -&amp;gt; Create, or press &amp;#145;F5&amp;#146;. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- After choosing to create the function module, you will get the warning: "Function module name is reserved for SAP". This message is just a warning so a developer does not accidentally create a function module in the field exit name range. By pressing &amp;#145;Enter&amp;#146;, you will be able to go ahead and create the function module.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Before coding the function module, you will have to specify the function modules attributes -- function group, application, and short text.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step 5: Code Function Module&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- From the function module&amp;#146;s attributes screen, click on the &amp;#145;Source code&amp;#146; pushbutton or choose the Goto -&amp;gt; Function module menu path to the code of the function module.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Here you will add your desired functionality for the field exit.&lt;/P&gt;&lt;P&gt;- Remember that field exit&amp;#146;s function module will have two parameters -- one importing parameter called "INPUT" and one exporting parameter called "OUTPUT". These parameters will be set up automatically by the system.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- You must remember to assign a value to the OUTPUT field. Even if the value does not change, it must be moved from the INPUT field to the OUTPUT field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step 6: Activate Function Module&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- After coding the function module, you must remember to activate it.&lt;/P&gt;&lt;P&gt;- Use the Function module -&amp;gt; Activate menu path to activate the function module.&lt;/P&gt;&lt;P&gt;- At this point, you can return to the field exit transaction.&lt;/P&gt;&lt;P&gt;- You should be able to 'green arrow' back to this transaction.&lt;/P&gt;&lt;P&gt;- When you return to the field exit transaction, you will see an entry for the newly created field exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- At this point, the field exit is global. That is, it applies to all screens that use a particular data element. On any screen that uses the data element, the corresponding field exit function module will be triggered, once it is active.&lt;/P&gt;&lt;P&gt;- Also, the field exit will not be triggered yet because it is inactive.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step 7: Assign Program/Screen&lt;/P&gt;&lt;P&gt;- This step is only needed if you want to make a field exit local.&lt;/P&gt;&lt;P&gt;- To make a field exit local, select the field exit and click on the &amp;#145;Assign prog./screen&amp;#146; pushbutton.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- In the dialog box , indicate the appropriate program name and screen number.&lt;/P&gt;&lt;P&gt;This information indicates that the field exit is local to the specified screen in the specified program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- In the dialog box, you determine which function module gets executed for the field exit by specifying the identifier in the &amp;#145;Fld. Exit&amp;#146; field.&lt;/P&gt;&lt;P&gt;- If this field is left blank, the function module triggered will be 'FIELD_EXIT_'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- If a single-character identifier is entered into the field, the function module triggered will be 'FIELD_EXIT__'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step 8: Activate Field Exit&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- The field exit must be active for it to be triggered by the system.&lt;/P&gt;&lt;P&gt;- Activate the field exit by choosing the Field exit -&amp;gt; Activate menu path.&lt;/P&gt;&lt;P&gt;- After assigning the field exit to a change request, its status will change to &amp;#145;Active&amp;#146; and it will be triggered automatically on the appropriate screen(s).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NOTE : In order to activate the field exit the profile parameter abap/fieldexit = YES must be set on all application servers&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step by step procdure for creating Menu Exits&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PART A: Search for the menu exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. A menu exit is a way to add a menu item and corresponding functionality to the menu bar of an SAP transaction. The first step is to navigate to the screen where you want to attach menu exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Go to the menu painter of that screen through system -&amp;gt; status and look for function codes in the menu bar that start with a plus sign. These are the menu's which can be enhanced.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PART B: Attaching your own menu.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Run transaction YSMD (available in 3.1G) to identify the Enhancement and the Component which contains that exit or search it through transaction SMOD. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note : All menu exits will have the function code name with the plus sign as the last four characters of the component.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. Include the Enhancement in your own project through transaction CMOD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;5. Go to Enhancement Components a&lt;/P&gt;&lt;P&gt;And double click on the component name to give your own text to the menu item.&lt;/P&gt;&lt;P&gt;6. Activate the project.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;At this point the menu item will appear, but it will have no functionality.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PART C: Adding functionality to the menu item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The new menu item can have functionality in four ways:&lt;/P&gt;&lt;P&gt;predefined functionality by SAP programmer&lt;/P&gt;&lt;P&gt;transaction code&lt;/P&gt;&lt;P&gt;program exit&lt;/P&gt;&lt;P&gt;area menu'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;7. You do not have control over the first method of functionality to a menu exit. In some cases, SAP programmers will have predefined code that is executed once you activate the menu exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;8. If the menu exit function code is a type &amp;#147;T&amp;#148; function code, you will need to create a transaction code to add functionality to the new menu item. (To find the type of the function code, just double click on the function code in the GUI screen) The transaction code should have the same name as the function code (remember: it will start with a plus sign). The transaction code you create can either call an online (module pool) program or a report. You can create a transaction code from the object browser.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;9. If the functionality for a menu exit is to be placed in a program exit, the menu exit and corresponding program exit will belong to the same enhancement. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Examining the enhancement that contains the menu exit can give you an initial indication that a program exit is needed to add functionality. You can code the program exit by double clicking on the component in your project or examining the SAP code to find the corresponding check of the function code triggered. For the appropriate function code, you will see a &amp;#147;CALL CUSTOMER-FUNCTION&amp;#148; statement. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;10. The last way of adding functionality is through area menu&amp;#146;s. An area menu is a transaction that serves as a collection point for several other transactions. Unlike other dialog transactions, area menus do not have underlying programs, hence, you cannot append your own functions to them.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No screens accompany an area menu. An area menu has only one title and status, both of which are assigned by the system. Area menus allow you to create menus containing functions that are customized for a particular function in your company. Creating an area menu is similar to creating a standard menu. However, instead of specifying functions for menu options you specify transaction codes. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To navigate to area menu&amp;#146;s choose Development -&amp;gt; Other tools -&amp;gt; Area menus. The name of the area menu should be same as that of the function code of the menu exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step by step procedure for creating Screen Exits&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PART A: Search for the screen exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. A screen exit is a way to add a sub-screen and corresponding functionality to an SAP transaction. The first step is to navigate to the screen where you want to attach menu exit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Go to the field list of that screen through system -&amp;gt; status or F1 -&amp;gt; Technical details and look for fields that have subscreen as the field type for that particular screen. These are the area's on the main screen which can be enhanced.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PART B: Creating your own subscreen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Identify the enhancement and its component that has the provision for creating the screen exit for that particular screen. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note A: To know more about how to identify the enhancement, refer to the document on Locating User Exits.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note B: All SAP provided subscreen&amp;#146;s may not have the scope for enhancement. There are a limited number of transactions which has scope for screen exit. Refer to Annexure A for details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. Include the Enhancement in your own project through transaction CMOD.&lt;/P&gt;&lt;P&gt;5. Go to Enhancement Components and double click on the component name. &lt;/P&gt;&lt;P&gt;6. It will take you to the screen attributes for that particular subscreen.&lt;/P&gt;&lt;P&gt;· The screen type should be subscreen.&lt;/P&gt;&lt;P&gt;· Maintain the size of the subscreen through Lines/Columns attribute. This should correspond to the size of the subscreen mentioned in the main SAP screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;· The development class for the subscreen should be the development class for the project.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;7. Create the subscreen using the fullscreen editor.&lt;/P&gt;&lt;P&gt;8. You can add your own modules in the subscreen&amp;#146;s flow logic. However, one has to be careful regarding data transfer between the main screen and the subscreen. For more details refer to R/3 On-line Help.&lt;/P&gt;&lt;P&gt;9. Generate the screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PART C: Activating the project&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;10. Use the back button to navigate back to the project enhancement main screen.&lt;/P&gt;&lt;P&gt;11. Activate the project.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2008 04:49:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/finding-exits/m-p/3518774#M846321</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-06T04:49:34Z</dc:date>
    </item>
  </channel>
</rss>

