<?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: Screen-exits in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955729#M945377</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;USER EXIT  (SAP Enhancement)&lt;/P&gt;&lt;P&gt;________________________________________&lt;/P&gt;&lt;P&gt;User exit is a functionality provided by SAP to add custom validation or enhancements to existing SAP transaction. Every module pool has customer function FORM  in PBO and PAI. This form is basically a function that has an INCLUDE object, for eg. INCLUDE ZXPADU01. User can include enhancements or source code, that will be triggered during execution of this transaction. &lt;/P&gt;&lt;P&gt;For eg. all HR infotype program (module pool) starts with the name MPnnnnnn. So infotype 0001 module pool name will be MP000000. Search for string 'customer_function' and you will find two FORM under each module pool. PERFORM customer_function_pbo(sapfp50m) and PERFORM customer_function_pai(sapfp50m). Place your cursor on 'customer_function' and double click.  It will take you to 'FORM customer_function_pbo'. In this form you should see a CALL CUSTOMER-FUNCTION '001' function module. Double click on '001' and you can see SAP has provided an INCLUDE object, for eg. INCLUDE ZXPADU01.  You can add your logic in this object ZXPADU01 and at runtime when you enter data in the respective infotype for eg. 0000, the validation included in the object will be executed.&lt;/P&gt;&lt;P&gt;Execute transaction CMOD to define Project that contains User Exit. &lt;/P&gt;&lt;P&gt;Here is an example of HR Benefit  USER EXIT:&lt;/P&gt;&lt;P&gt;Enter Project name, for eg. ZBEN0003, select option 'Enhancement assignment' and enter for eg. PBEN0003 (name of SAP enhancement object).  Click on 'Components' button and the screen will display 'EXIT_SAPLHRBEN00FEATURE_003'. Double click on this object and it will take you to FUNCTION EXIT_SAPLHRBEN00FEATURE_003. There will be an INCLUDE object starting with name 'Z' in this function module that you can update with your custom logic.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 30 May 2008 10:49:51 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-05-30T10:49:51Z</dc:date>
    <item>
      <title>Screen-exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955724#M945372</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello all,&lt;/P&gt;&lt;P&gt;  If anybody have screen-exit documentation then pls send it .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 07:44:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955724#M945372</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T07:44:31Z</dc:date>
    </item>
    <item>
      <title>Re: Screen-exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955725#M945373</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;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 subscreenu2019s 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;u2022 The screen type should be subscreen.&lt;/P&gt;&lt;P&gt;u2022 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;u2022 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 subscreenu2019s 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;Locating User Exits&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;u2022	Transaction CMOD contains search functionality to help locate enhancements. &lt;/P&gt;&lt;P&gt;u2022	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;u2022	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;u2022	After clicking on the u2018Executeu2019 pushbutton (or u2018F8u2019) 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;u2022	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;u2022	If you have clicked on the u2018Display componentsu2019 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 SAPu2019s 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;u2022	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;u2022	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;u2022	Select the appropriate application by single clicking on it. &lt;/P&gt;&lt;P&gt;u2022	Choose the "Edit Sel./desel. subtree" menu path. &lt;/P&gt;&lt;P&gt;u2022	Click on the u2018Repository Infosys.u2019 pushbutton. &lt;/P&gt;&lt;P&gt;u2022	This will take you to the ABAP/4 Repository Information System. &lt;/P&gt;&lt;P&gt;u2022	Double click on the u2018Environmentu2019 branch. &lt;/P&gt;&lt;P&gt;u2022	Double click on the u2018Customer enhancementu2019 branch. &lt;/P&gt;&lt;P&gt;u2022	Double-click on the u2018Customer exitu2019 branch. &lt;/P&gt;&lt;P&gt;u2022	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;u2022	Click on the u2018Executeu2019 pushbutton. &lt;/P&gt;&lt;P&gt;u2022	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;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: SAPu2019s naming convention for user exits-&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;u2022 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;u2022 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;u2022 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;P&gt;u2022	REPORT YSMOD2 &lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;u2022	SELECTION TEXTS : INPUT1 -&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;&amp;gt; Enter search term for Trxn. &lt;/P&gt;&lt;P&gt;u2022	INPUT2 -&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;&amp;gt; Enter type of exit &lt;/P&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;P&gt;u2022	REPORT YSMOD &lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;u2022	SELECTION TEXTS : INPUT1 -&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;&amp;gt; Enter search term for Enhancmn &lt;/P&gt;&lt;P&gt;u2022	INPUT2 -&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;&amp;gt; Enter type of exit &lt;/P&gt;&lt;P&gt;u2022	INPUT3 -&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;&amp;gt; Enter search term for componen &lt;/P&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;Easiest way is to create a subscreen and embed this in your dynpro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report ztest_0001 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables: mara.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Custom Selection Screen 1010 &lt;/P&gt;&lt;P&gt;selection-screen begin of screen 1010 as subscreen.&lt;/P&gt;&lt;P&gt;selection-screen begin of block b1 with frame title text-001.&lt;/P&gt;&lt;P&gt;parameters: p_rad1 radiobutton group grp1 default 'X',&lt;/P&gt;&lt;P&gt;p_rad2 radiobutton group grp1,&lt;/P&gt;&lt;P&gt;p_rad3 radiobutton group grp1.&lt;/P&gt;&lt;P&gt;select-options: s_matnr for mara-matnr,&lt;/P&gt;&lt;P&gt;s_matkl for mara-matkl,&lt;/P&gt;&lt;P&gt;s_mtart for mara-mtart.&lt;/P&gt;&lt;P&gt;selection-screen end of block b1.&lt;/P&gt;&lt;P&gt;selection-screen end of screen 1010.&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;call screen 100.&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Module STATUS_0100 OUTPUT&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;module status_0100 output.&lt;/P&gt;&lt;P&gt;SET PF-STATUS 'xxxxxxxx'. &lt;/P&gt;&lt;P&gt;SET TITLEBAR 'xxx'. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endmodule.&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Module USER_COMMAND_0100 INPUT&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;module user_command_0100 input.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endmodule.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen screen 100 with a subscreen area called "subscreen_1010" &lt;/P&gt;&lt;P&gt;Screen Flow Logic follows &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*process before output.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;module status_0100. &lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;call subscreen subscreen_1010 including sy-repid '1010'. &lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*process after input.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;call subscreen subscreen_1010 . &lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;module user_command_0100. &lt;/P&gt;&lt;P&gt;Checkout the FM`S in SE37&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/BKC/RFC_GET_TABLE_SIZE &lt;/P&gt;&lt;P&gt;/SDF/INF_TOP_TABLES &lt;/P&gt;&lt;P&gt;/SDF/MSS_TEXT_IMAGE_FIELDS &lt;/P&gt;&lt;P&gt;GET_TABLE_SIZE_DB4 &lt;/P&gt;&lt;P&gt;GET_TABLE_SIZE_DB6 &lt;/P&gt;&lt;P&gt;MSS_GET_DB_SIZE_DETAILS &lt;/P&gt;&lt;P&gt;MSS_GET_SCHEMA_SIZE_INFO &lt;/P&gt;&lt;P&gt;MSS_GET_TABLE_SIZE_INFO &lt;/P&gt;&lt;P&gt;SFMSS_SIZE &lt;/P&gt;&lt;P&gt;GET_TABLE_SIZE_MSS&lt;/P&gt;&lt;P&gt;When you look into se16 you just get the number of rows for this client, while db02 shows the table size over all clients. Therefore the tables size didn't match my calculations.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Sarada&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 08:00:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955725#M945373</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T08:00:49Z</dc:date>
    </item>
    <item>
      <title>Re: Screen-exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955726#M945374</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;see this link for the clear idea&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://wiki.ittoolbox.com/index.php/Implement_a_screen_exit_to_a_standard_SAP_transaction" target="test_blank"&gt;http://wiki.ittoolbox.com/index.php/Implement_a_screen_exit_to_a_standard_SAP_transaction&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw04/helpdata/en/c8/19763443b111d1896f0000e8322d00/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw04/helpdata/en/c8/19763443b111d1896f0000e8322d00/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw70/helpdata/en/c8/19763443b111d1896f0000e8322d00/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw70/helpdata/en/c8/19763443b111d1896f0000e8322d00/content.htm&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 08:16:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955726#M945374</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T08:16:41Z</dc:date>
    </item>
    <item>
      <title>Re: Screen-exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955727#M945375</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;STRONG&gt;Hi busam nandana ,&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are several different types of &lt;STRONG&gt;customer exits&lt;/STRONG&gt;. 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;&lt;STRONG&gt;Menu Exits&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Screen Exits&lt;/STRONG&gt;&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 screenu2019s flow logic.*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Function Module Exits&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For implementing screen exits refer to the following link.[http://www.saptechnical.com/Tutorials/ExitsBADIs/ExitsMain.htm]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Revert back for any further queries&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Reward if helpful.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For material do send ur yahoo or gmail id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Thanks,&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Surya Pydikondala.&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 08:52:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955727#M945375</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T08:52:49Z</dc:date>
    </item>
    <item>
      <title>Re: Screen-exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955728#M945376</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Nandana,&lt;/P&gt;&lt;P&gt;&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 screens flow logic.&lt;/P&gt;&lt;P&gt;the tcode is cmod...&lt;/P&gt;&lt;P&gt;1.From the main screen of the Project management transaction, proceed as follows:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Select Enhancement components and choose Change. &lt;/P&gt;&lt;P&gt;2.Choose Edit component. &lt;/P&gt;&lt;P&gt;3.Choose the screen exit and double click on it &lt;/P&gt;&lt;P&gt;4.Create your subscreen using the Screen Painter. &lt;/P&gt;&lt;P&gt;5.Design your screen to be added to the standard screen and activate the particular screen and return back to the flow logic . &lt;/P&gt;&lt;P&gt;6.Choose the PAI and PBO to write down the logic.&lt;/P&gt;&lt;P&gt;7.Generate your screen and choose Back (the green arrow) to return to the Project management transaction.&lt;/P&gt;&lt;P&gt;8.Go to the transaction ME22 to view the customer defined screen exit.&lt;/P&gt;&lt;P&gt;9.Enter the purchase order number and press Enter.&lt;/P&gt;&lt;P&gt;10.Go to the menu header --&amp;gt; Details. &lt;/P&gt;&lt;P&gt;11.Purchase number is visible on the standard screen &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check the following link,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;A href="http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction" target="test_blank"&gt;http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can go through&lt;/P&gt;&lt;P&gt; &lt;STRONG&gt;&lt;A href="https://community.sap.com/www.saptechnical.com" target="test_blank"&gt;www.saptechnical.com&lt;/A&gt;&lt;/STRONG&gt; also. There you can find step by step procedures for screen exits.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward points if useful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Swamy Kunche&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 11:04:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955728#M945376</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T11:04:44Z</dc:date>
    </item>
    <item>
      <title>Re: Screen-exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955729#M945377</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;USER EXIT  (SAP Enhancement)&lt;/P&gt;&lt;P&gt;________________________________________&lt;/P&gt;&lt;P&gt;User exit is a functionality provided by SAP to add custom validation or enhancements to existing SAP transaction. Every module pool has customer function FORM  in PBO and PAI. This form is basically a function that has an INCLUDE object, for eg. INCLUDE ZXPADU01. User can include enhancements or source code, that will be triggered during execution of this transaction. &lt;/P&gt;&lt;P&gt;For eg. all HR infotype program (module pool) starts with the name MPnnnnnn. So infotype 0001 module pool name will be MP000000. Search for string 'customer_function' and you will find two FORM under each module pool. PERFORM customer_function_pbo(sapfp50m) and PERFORM customer_function_pai(sapfp50m). Place your cursor on 'customer_function' and double click.  It will take you to 'FORM customer_function_pbo'. In this form you should see a CALL CUSTOMER-FUNCTION '001' function module. Double click on '001' and you can see SAP has provided an INCLUDE object, for eg. INCLUDE ZXPADU01.  You can add your logic in this object ZXPADU01 and at runtime when you enter data in the respective infotype for eg. 0000, the validation included in the object will be executed.&lt;/P&gt;&lt;P&gt;Execute transaction CMOD to define Project that contains User Exit. &lt;/P&gt;&lt;P&gt;Here is an example of HR Benefit  USER EXIT:&lt;/P&gt;&lt;P&gt;Enter Project name, for eg. ZBEN0003, select option 'Enhancement assignment' and enter for eg. PBEN0003 (name of SAP enhancement object).  Click on 'Components' button and the screen will display 'EXIT_SAPLHRBEN00FEATURE_003'. Double click on this object and it will take you to FUNCTION EXIT_SAPLHRBEN00FEATURE_003. There will be an INCLUDE object starting with name 'Z' in this function module that you can update with your custom logic.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 May 2008 10:49:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/screen-exits/m-p/3955729#M945377</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-30T10:49:51Z</dc:date>
    </item>
  </channel>
</rss>

