<?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: Customer exits in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959450#M945944</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ajay,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope the following details will help you:&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 SAPu2019s 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.&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 screenu2019s flow logic. &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 companyu2019s 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;Reward points if helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Asha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 29 May 2008 09:14:55 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-05-29T09:14:55Z</dc:date>
    <item>
      <title>Customer exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959445#M945939</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please guide ne to understand about&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Customer exits&lt;/P&gt;&lt;P&gt;Screen exits&lt;/P&gt;&lt;P&gt;Field exits.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please tell me in brief so that i can read the documentation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Ajay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 09:03:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959445#M945939</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T09:03:31Z</dc:date>
    </item>
    <item>
      <title>Re: Customer exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959446#M945940</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ajay,&lt;/P&gt;&lt;P&gt;Check below links. It gives detailed explanation.&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/erp2005_ehp_03/helpdata/EN/c8/1975e643b111d1896f0000e8322d00/frameset.htm" target="test_blank"&gt;http://help.sap.com/erp2005_ehp_03/helpdata/EN/c8/1975e643b111d1896f0000e8322d00/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/erp2005_ehp_03/helpdata/EN/c8/1975cc43b111d1896f0000e8322d00/frameset.htm" target="test_blank"&gt;http://help.sap.com/erp2005_ehp_03/helpdata/EN/c8/1975cc43b111d1896f0000e8322d00/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/erp2005_ehp_03/helpdata/EN/4a/5b75387be80518e10000009b38f889/frameset.htm" target="test_blank"&gt;http://help.sap.com/erp2005_ehp_03/helpdata/EN/4a/5b75387be80518e10000009b38f889/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Point to Remember: Any exit functionality is to midify SAP provided functinality to suit the business needs.&lt;/P&gt;&lt;P&gt;eg: User exits - To implement custom checks, Messages etc.&lt;/P&gt;&lt;P&gt;     Menu exits - To add New menu items&lt;/P&gt;&lt;P&gt;    Screen exits - To modify standard screens.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Vinod.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Vinod Kumar Vemuru on May 29, 2008 2:40 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 09:09:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959446#M945940</guid>
      <dc:creator>vinod_vemuru2</dc:creator>
      <dc:date>2008-05-29T09:09:33Z</dc:date>
    </item>
    <item>
      <title>Re: Customer exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959447#M945941</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;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 SAPu2019s 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.&lt;/P&gt;&lt;P&gt;1. Previously there were only user-exits.&lt;/P&gt;&lt;P&gt;2. Then came the concept of customer-exits.&lt;/P&gt;&lt;P&gt;3. user exits were nothing but subroutines&lt;/P&gt;&lt;P&gt;FORM/PERFORM&lt;/P&gt;&lt;P&gt;called from standard programs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. The FORM defintion was placed inside&lt;/P&gt;&lt;P&gt;an empty include file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;5. So It was called EVERYTIME.&lt;/P&gt;&lt;P&gt;and we need to MODIFY/REPAIR the&lt;/P&gt;&lt;P&gt;standard include .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;6. Then it came with concept of customer-exit&lt;/P&gt;&lt;P&gt;7. It consists of calling a FUNCTION MODULE,&lt;/P&gt;&lt;P&gt;which is called only if &lt;/P&gt;&lt;P&gt;the user-exit is ACTIVATED (other wise not called)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In this case, the code in put inside&lt;/P&gt;&lt;P&gt;a pre-defined Z include.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;8. Functionality of both is same, howerver&lt;/P&gt;&lt;P&gt;we can note the following important differences&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a) Customer exit is called only if activated.&lt;/P&gt;&lt;P&gt;(hence, it does not waste resources)&lt;/P&gt;&lt;P&gt;b) in customer exit, REPAIR does not happen&lt;/P&gt;&lt;P&gt;to the standard include.&lt;/P&gt;&lt;P&gt;Exits are basically the hooks whcih SAP has provided to add your own code. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;please can anyone give me exact user/customer exits, which will be called after saving the document...&lt;/P&gt;&lt;P&gt;document is saved after the below routine..&lt;/P&gt;&lt;P&gt;SAPMV45A&lt;DEL&gt;&amp;gt;MV45AF0C_CHANGE_DOCUMENT_CREAT&lt;/DEL&gt;&amp;gt;CALL FUNCTION 'SD_XVBLB_CHANGES'&lt;/P&gt;&lt;P&gt;Transaction Code - VA02 Change Sales Order&lt;/P&gt;&lt;P&gt;Exit Name Description&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SDTRM001 Reschedule schedule lines without a new ATP check&lt;/P&gt;&lt;P&gt;V45A0001 Determine alternative materials for product selection&lt;/P&gt;&lt;P&gt;V45A0002 Predefine sold-to party in sales document&lt;/P&gt;&lt;P&gt;V45A0003 Collector for customer function modulpool MV45A&lt;/P&gt;&lt;P&gt;V45A0004 Copy packing proposal&lt;/P&gt;&lt;P&gt;V45E0001 Update the purchase order from the sales order&lt;/P&gt;&lt;P&gt;V45E0002 Data transfer in procurement elements (PRreq., assembly)&lt;/P&gt;&lt;P&gt;V45L0001 SD component supplier processing (customer enhancements)&lt;/P&gt;&lt;P&gt;V45P0001 SD customer function for cross-company code sales&lt;/P&gt;&lt;P&gt;V45S0001 Update sales document from configuration&lt;/P&gt;&lt;P&gt;V45S0003 MRP-relevance for incomplete configuration&lt;/P&gt;&lt;P&gt;V45S0004 Effectivity type in sales order&lt;/P&gt;&lt;P&gt;V45W0001 SD Service Management: Forward Contract Data to Item&lt;/P&gt;&lt;P&gt;V46H0001 SD Customer functions for resource-related billing&lt;/P&gt;&lt;P&gt;V60F0001 SD Billing plan (customer enhancement) diff. to billing plan&lt;/P&gt;&lt;P&gt;No of Exits: 15&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;These r the main differences between user exits and customer exits&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) user exits r subroutines where as customer exits r function modules&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) user exits r not upgraded where as customer exits r will upgrade&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3) customer exits r used for creating and additional fields or menu items to stadard tcode where as user exits r used for enabling or disabling the fields on the standrd screen or concatenating the key fields,it is not used adding an additional componenats to stadard tcode&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4) customer exits r reusable where as user exits r not reusable.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Userexits --&amp;gt; implemented in subroutines -&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;&amp;gt; modifications --&amp;gt; fails in upgrades.&lt;/P&gt;&lt;P&gt;2. Customer exits --&amp;gt; implemente using func modules --&amp;gt; enhancement --&amp;gt; doesnot fail in upgrades&lt;/P&gt;&lt;P&gt;Customer exits: *&lt;/P&gt;&lt;P&gt;Implemented as Function Modules within z includes. Anybody can change it and no access key is required.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;User Exit:&lt;/P&gt;&lt;P&gt;Implemented as subroutines within includes (any include except y or z includes). You need access for the specific include and then you can any subroutine (user exit) within that Include.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BADIs are the enhanced version of user exits where the same logic is implemented via classes and object (OOP)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Enchancement point is the latest once introduces with ECC6.0 . Not very sure about that but you can change it without any access key.&lt;/P&gt;&lt;P&gt; &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;u2022	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;u2022	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 u2018F1u2019 for field-level help.&lt;/P&gt;&lt;P&gt;Click on the u2018Technical infou2019 pushbutton (or press u2018F9u2019) 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;Step 2: Go To Field Exit Transaction&lt;/P&gt;&lt;P&gt;u2022	The transaction to create field exits is CMOD. &lt;/P&gt;&lt;P&gt;u2022	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;u2022	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;u2022	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;Step 3: Create Field Exit&lt;/P&gt;&lt;P&gt;u2022	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;u2022	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;u2022	Enter the data element name and click the u2018Continueu2019 pushbutton. &lt;/P&gt;&lt;P&gt;u2022	Now, you will be able to create the function module associated to the data elementu2019s 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;u2022	You will automatically be taken to the Function Library (SE37) after entering a data element name and clicking the u2018Continueu2019 pushbutton. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;u2022	In the u2018Function moduleu2019 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;u2022	You can add an identifier (an underscore followed by a single character ). &lt;/P&gt;&lt;P&gt;u2022	The first function module for a data elementu2019s field exit must be created without an identifier. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;u2022	To create the function module, click on the u2018Createu2019 pushbutton, choose menu path Function module -&amp;gt; Create, or press u2018F5u2019. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;u2022	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 u2018Enteru2019, you will be able to go ahead and create the function module. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;u2022	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;Step 5: Code Function Module&lt;/P&gt;&lt;P&gt;u2022	From the function moduleu2019s attributes screen, click on the u2018Source codeu2019 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;u2022	Here you will add your desired functionality for the field exit. &lt;/P&gt;&lt;P&gt;u2022	Remember that field exitu2019s 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;u2022	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;u2022	After coding the function module, you must remember to activate it. &lt;/P&gt;&lt;P&gt;u2022	Use the Function module -&amp;gt; Activate menu path to activate the function module. &lt;/P&gt;&lt;P&gt;u2022	At this point, you can return to the field exit transaction. &lt;/P&gt;&lt;P&gt;u2022	You should be able to 'green arrow' back to this transaction. &lt;/P&gt;&lt;P&gt;u2022	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;u2022	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;u2022	Also, the field exit will not be triggered yet because it is inactive. &lt;/P&gt;&lt;P&gt;Step 7: Assign Program/Screen&lt;/P&gt;&lt;P&gt;u2022	This step is only needed if you want to make a field exit local. &lt;/P&gt;&lt;P&gt;u2022	To make a field exit local, select the field exit and click on the u2018Assign prog./screenu2019 pushbutton. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;u2022	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;u2022	In the dialog box, you determine which function module gets executed for the field exit by specifying the identifier in the u2018Fld. Exitu2019 field. &lt;/P&gt;&lt;P&gt;u2022	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;u2022	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;u2022	The field exit must be active for it to be triggered by the system. &lt;/P&gt;&lt;P&gt;u2022	Activate the field exit by choosing the Field exit -&amp;gt; Activate menu path. &lt;/P&gt;&lt;P&gt;u2022	After assigning the field exit to a change request, its status will change to u2018Activeu2019 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;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 u201CTu201D 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 u201CCALL CUSTOMER-FUNCTIONu201D statement. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;10. The last way of adding functionality is through area menuu2019s. 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 menuu2019s 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;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 09:10:58 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959447#M945941</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T09:10:58Z</dc:date>
    </item>
    <item>
      <title>Re: Customer exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959448#M945942</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;Types of Customer Exits:-&lt;/P&gt;&lt;P&gt;There are three main types of customer exits: function module exits, screen exits and menu exits&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Function Module Exit: allows customer to add code via a function module at a specific location in an SAP application program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Format: 	CALL CUSTOMER-FUNCTION '004'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Menu Exit: allows customer to add items to a pulldown menu in a standard SAP program.  These items may be used to call add-on programs or custom screens.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Format:	+CUS ( additional item in GUI status )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Screen Exit: allows customer to add fields to a screen in an SAP program via a subscreen.  The subscreen is called within the standard screenu2019s flow logic.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;		Format:	CALL CUSTOMER-SUBSCREEN CUSTSCR2&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Locating Customer Exits: Method 1 &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Execute transaction SMOD. &lt;/P&gt;&lt;P&gt;Specify relevant search criteria and execute search in the Repository Information System.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward if useful&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 09:13:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959448#M945942</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T09:13:45Z</dc:date>
    </item>
    <item>
      <title>Re: Customer exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959449#M945943</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A href="https://forums.sdn.sap.com/click.jspa?searchID=12308644&amp;amp;messageID=3810504" target="test_blank"&gt;https://forums.sdn.sap.com/click.jspa?searchID=12308644&amp;amp;messageID=3810504&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Kiran&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 09:14:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959449#M945943</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T09:14:46Z</dc:date>
    </item>
    <item>
      <title>Re: Customer exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959450#M945944</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ajay,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope the following details will help you:&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 SAPu2019s 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.&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 screenu2019s flow logic. &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 companyu2019s 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;Reward points if helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Asha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 09:14:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959450#M945944</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T09:14:55Z</dc:date>
    </item>
    <item>
      <title>Re: Customer exits</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959451#M945945</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;Customer exits :&lt;/P&gt;&lt;P&gt;A pre-planned enhancement to the standard SAP System.&lt;/P&gt;&lt;P&gt;SAP anticipates potential customer requests not already implemented in the standard system by predefining them as empty modification modules. Customers fill these modules with their own logic according to their own requirements.&lt;/P&gt;&lt;P&gt;SAP creates customer exits using the Transaction SMOD. From these customer exits, customers then use the Transaction CMOD to choose the enhancements they want to process, assign them to enhancement projects, edit the components, and activate the relevant projects.&lt;/P&gt;&lt;P&gt;Using customer exits guarantees upwards compatibility. This is because calls to exits from the standard software and the validity of the call interface are retained, even in future release upgrades.&lt;/P&gt;&lt;P&gt;Benefits :&lt;/P&gt;&lt;P&gt;Standard SAP functionality can be enhanced without modification to the standard code. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   Upgrades do not erase the functionality and it does not have to be re-transported or re-entered into the system. The enhancements should be thoroughly tested when upgrading to ensure the system will still work as implemented&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen exits :  Add screen layouts to applications. SAP creates screen exits by placing special subscreen areas on a standard screen and calling a customer subscreen from the standard screenu2019s flow logic. SAP provides standard transactions to enter data into database. But a client may want to maintain some additional information in SAP other than what is provided. &lt;/P&gt;&lt;P&gt;To make provisions for this, additional screens have to be provided and additional fields must be added into appropriate database table. &lt;/P&gt;&lt;P&gt;To pave way for this, SAP has provided the option for screen exits. Usually, SAP provides the following: &lt;/P&gt;&lt;P&gt;An append structure in the database table with the new fields. &lt;/P&gt;&lt;P&gt;A subscreen area into the standard screen u2013 where the programmer can attach his subscreen of his own program with the new fields. &lt;/P&gt;&lt;P&gt;A function group under which the new subscreen has to be created with the new fields. &lt;/P&gt;&lt;P&gt;Function exits to synchronize the PBO and PAI of the standard SAP program with the PBO and PAI of the subscreen u2013 so that data can flow back and forth between the standard SAP program and the program written by the developer for the subscreen. These function modules also exist in the same function group under which the subscreen will have to be developed. &lt;/P&gt;&lt;P&gt;Finally, a linkage has to be done between the subscreen area of standard SAP screen with the custom subscreen constructed by the developer. &lt;/P&gt;&lt;P&gt;Field exits  : 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.&lt;/P&gt;&lt;P&gt;      If we want to do any validations for a particular field then we go for field exits.There are two types of field exits they are local and global field exits.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 May 2008 09:23:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/customer-exits/m-p/3959451#M945945</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-29T09:23:44Z</dc:date>
    </item>
  </channel>
</rss>

