Difference between user exit/Function exit / Customer exit and BADI

Hi Guys,
I am confused with the types of exits-user exit/Function exit / Customer exit and BADI.
Can you tell me the difference between the different exits/Enhancements?
Classify the following:
what is the one which is shown in SMOD under enhancements? There are 3 sections in that - Function module, Screen and includes.
What is the one which are called using -
Call Customer-Function 001?
Regards,
Guru

hi,
The standard applications do not offer some of the functionality you need. The R/3 enchancement concept allows you to add your own functionality to SAP's standard business applications.
Different types of enhancements
Enhancements using customer exits
Customers' potential requirements which are not included in the standard software are incorporated in the standard as empty modification 'shells'. Customers can then fill these with their own coding. Enhancements can relate to programs, menus and screens. Upward compatibility is assured. In other words, SAP guarantees that the jump from the standard software to the exit and the interface which call the exit will remain valid in future releases.
Enhancements to ABAP/4 Dictionary elements
These are ABAP/4 Dictionary enhancements (creation of table appends), text enhancements (customer-specific key words and documentation for data elements) and field exits (creation of additional coding for data elements).
advantages of enhancements
Do not affect standard SAP source code
Do not affect software upgrades
Customer exit - The R/3 enhancement concept allows you to add your own functionality to SAP’s standard business applications without having to modify the original applications. SAP creates customer exits for specific programs, screens, and menus within standard R/3 applications. These exits do not contain any functionality. Instead, the customer exits act as hooks. You can hang your own add-on functionality onto these hooks.
Various types of customer exits
Menu exits
Screen exits
Function module exits
Keyword exits
Menu exit
Adding items to the pulldown menus in standard R/3 applications .
Screen exit
Adding fields to the screens within R/3 applications. SAP creates screen exits by placing special subscreen areas within a standard R/3 screen and calling a customer subscreen from within the standard dynpro's flow logic.
Function module exit
Adding functionality to R/3 applications. Function module exits play a role in both menu and screen exits.
keyword exit
Add documentation to the data elements of key words defined in the ABAP/4 Dictionary. The system displays this documentation whenever a user presses F1 to get online help for a screen field
Hope this helps, Do reward.

Similar Messages

  • What is the difference between User exit and BADI

    in user exit support to  4 types of exits(Menu exit,Screen exit,Field exit,Function module exit)in similar way  is badi  supported to all  type

    hi,
    BADIs (Business Add-Ins) are the new way in which SAP allows you to enter additional logic into an application, and is based on OO ABAP. (Methods in Interfaces) Transactions SE18/SE19.
    Customer Exits are the older method (which is still supported), whereby you create an include that is in a function module, which is called when the customer exit is activated. Transactions CMOD/SMOD.
    In terms of terminology, people often use the terms "Customer Exit" and "User Exit" interchangeably, however, strictly speaking, User Exits are places provided in subroutines (notably in the SD module) where you can insert your own code, but require a modification to an include (although it is provided for customers to change).
    They are two different methods to do the same thing: to check and update the data into std trx.
    The user-exit is the old concept based on function module
    The BADI is the new concept based on OO ABAP.
    So you can often to find a BADI and an USER-EXIT to do the same thing and you have to decide what you prefer to use.
    Anyway the new trx and the enjoy trx use BADIs as exit
    User-exits are SAP's oldest way of updating data in standard programs - see MV45AFZZ - Form Userexit_Save_Document_Prepare.
    Here you simply add ABAP code or add INCLUDES, etc
    Customer-exits were SAP's next generation. They are built on the concept of function modules - where you add your custom within the Z func modules.
    BADIs are SAP's newest and current way of updating data uisng Object-oriented concepts.
    Please check this link.
    http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
    Check the below links:
    http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/badi-vs-user-exit-405324
    http://www.sapfans.com/forums/viewtopic.php?t=172792
    User-Exit is a specific place in a transaction-process where SAP offers
    third parties to include there own business functionality. Actually
    User-Exit is the namespace used for Exits programmed by SAP specifically
    for SD. For the other modules it's called Customer-Exit.=20
    >Business Add-Ins (BADI) =20
    The use of object orientated code within SAP has lead to new method of
    enhancing standard SAP code called Business Add-Ins or BADI's for short.
    Although the implementation concept is based on classes, methods and
    inheritance you do not really have to understand this fully to implement
    a BADI.
    Difference between BADI's & User-Exit.
    1. Check the replies for your question which asked by another person.
    http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/569786
    2. Similar thread.
    http://www.sapfans.com/forums/viewtopic.php?p=559472&sid=99caa729618b18a8f7c46cc2f047af52
    3. Same question explained
    http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
    Badi Tutorials
    1. Sample program.
    http://www.sap-img.com/abap/business-add-in-you-need-to-understand-abap-oo-interface-concept.htm
    2. Implementing BADI.
    http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm
    Hope it helps.
    3. From help.sap.com
    http://help.sap.com/saphelp_nw04/helpdata/en/5f/071eed117c11d5b37d0050dadef62b/frameset.htm
    Pls : award points if it is useful

  • Whats the exact differnrce between User-Exit and BADI ?

    Hi All,
    Can any one tell me whats the exact difference between User-Exit and BADI ?
    Even in User Exit also we write our code and the same in BADI also. Can any one plse elaborate wats the exact difference between these ...
    Thanks & Regards,
    Anil Kumar.

    BADI is the Object oriented concept of USER-EXIT
    chk this
    http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
    Message was edited by:
            Chandrasekhar Jagarlamudi

  • What is difference between User Exits and BAPI

    hello sap gurus
    what is difference between User Exits and BAPIs

    http://www.sap-img.com/abap/what-is-user-exits.htm
    www.****************
    Where as this customer exits are again divided into:
    1. Menu Exits.
    2. Field Exits.
    3. Screen Exits.
    4. Function module exits.
    These all the things comes under Enhancements.
    User exits
    1.A user exit is a three character code that instructs the system to access a program during system processing.SXX: S is for standard exits that are delivered by SAP.
    XX represents the 2-digit exit number.UXX: U is for user exits that are defined by the user. XX represents the 2-digit exit number
    2.USER EXITS are FORMS and are called by SAP standard programs
    using PERFORM.
    3.Inside the form (user exit) you can read and change almost
    any global data from host program.
    4. User exits are more flexible because you have more information to use in your code but on the other hand , it is very easy to manipulate erroneously global data and lead the standard program to a dump or even to make database inconsistent.
    5.While changing User-exit,Access Key is required,
    BAPI is nothing function module but which is remote enabled, means you can access this fm through other SAP or non-SAP system by assingning to business object,which we can crea in SWO1 transaction.
    more details see WWW.****************
    reward if helpful

  • Re: Difference between user-exits and enhancements

    Hi ,
    Can any one explain the difference between user-exits and enhancements with an exmpale.
    I will give u full points.
    thanks&regards,
    Bhushan-karra.

    Hi,
    User exit - A user exit is a three character code that instructs the system to access a program during system processing.
    SXX: S is for standard exits that are delivered by SAP. XX represents the 2-digit exit number.
    UXX: U is for user exits that are defined by the user. XX represents the 2-digit exit number
    Customer exit - The R/3 enhancement concept allows you to add your own functionality to SAP’s standard business applications without having to modify the original applications. SAP creates customer exits for specific programs, screens, and menus within standard R/3 applications. These exits do not contain any functionality. Instead, the customer exits act as hooks. You can hang your own add-on functionality onto these hooks. *-- Mani
    The following document is about exits in SAP :-
    The R/3 enhancement concept allows you to add your own functionality to SAP’s standard business applications without having to modify the original applications.
    SAP creates user exits for specific programs, screens, and menus within standard R/3 applications. These exits do not contain any functionality. Instead, the customer exits act as hooks. You can hang your own add-on functionality onto these hooks.
    Types of Exits
    There are several different types of user exits. Each of these exits acts as hooks where you can attach or "hang" your own add-ons.
    Menu Exits
    Menu exits add items to the pulldown menus in standard SAP applications. You can use these menu items to call up your own screens or to trigger entire add-on applications.
    SAP creates menu exits by defining special menu items in the Menu Painter. These special entries have function codes that begin with "+" (a plus sign). You specify the menu item’s text when activating the item in an add-on project.
    Screen Exits
    Screen exits add fields to screens in R/3 applications. SAP creates screen exits by placing special subscreen areas on a standard R/3 screen and calling a customer subscreen from the standard screen’s flow logic.
    Function Module Exits
    Function module exits add functions to R/3 applications. Function module exits play a role in both menu and screen exits.
    When you add a new menu item to a standard pull down menu, you use a function module exit to define the actions that should take place once your menu is activated.
    Function module exits also control the data flow between standard programs and screen exit fields. SAP application developers create function module exits by writing calls to customer functions into the source code of standard R/3 programs.
    These calls have the following syntax:
    CALL CUSTOMER-FUNCTION ‘001’.
    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. Example: The data element BBBNR identifies a company’s international location number. You might want to set up your R/3 System so that all international location numbers are larger than 100.
    The field exit concept lets you create a special function module that contains this logic.
    You assign the special function module to the data element BBBNR. You then assign the module to any programs and screens in which users can add new international location numbers. When you activate your field exit, the system automatically triggers your special routine whenever a user enters a company location number.
    Check these links for more details -
    http://help.sap.com/saphelp_nw04/helpdata/en/c8/1978b543b111d1896f0000e8322d00/frameset.htm
    http://www.sap-img.com/abap/what-is-user-exits.htm
    http://sap.niraj.tripod.com/id21.html
    If this answers your question, please close the thread.
    Check this link also,
    https://forums.sdn.sap.com/click.jspa?searchID=5924777&messageID=3801056
    Thanks,
    Reward If Helpful.

  • DIfference Between User Exits, Screen Exits, Menu Exits And BADI

    Could any one let me know the exact/practical dIfference Between User Exits, Screen Exits, Menu Exits And BADI. ? And why BADIs are more proned to use?

    Hi,
    User Exits:
    A user exit is a three character code that instructs the system to access a program during system processing.
    SXX: S is for standard exits that are delivered by SAP.   XX represents the 2-digit exit number.
    UXX: U is for user exits that are defined by the user.  XX represents the 2-digit exit number
    Menu Exits:
    Menu exits add items to the pulldown menus in standard SAP applications. You can use these menu items to call up your own screens or to trigger entire add-on applications.
    SAP creates menu exits by defining special menu items in the Menu Painter. These special entries have function codes that begin with "+" (a plus sign). You specify the menu item’s text when activating the item in an add-on project.
    Screen Exits:
    Screen exits add fields to screens in R/3 applications. SAP creates screen exits by placing special subscreen areas on a standard R/3 screen and calling a customer subscreen from the standard screen’s flow logic.
    BADIs:
    Business Add-Ins are a new SAP enhancement technique based on ABAP Objects. They can be inserted into the SAP System to accommodate user requirements too specific to be included in the standard delivery. Since specific industries often require special functions, SAP allows you to predefine these points in your software. 
    And why BADIs are more proned to use?
    In contrast to above customer exits, Business Add-Ins no longer assume a two-level infrastructure (SAP and customer solutions), but instead allow for a multi-level system landscape (SAP, partner, and customer solutions, as well as country versions, industry solutions, and the like). Definitions and implementations of Business Add-Ins can be created at each level within such a system infrastructure.
    SAP guarantees the upward compatibility of all Business Add-In interfaces. Release upgrades do not affect enhancement calls from within the standard software nor do they affect the validity of call interfaces. You do not have to register Business Add-Ins in SSCR.
    The Business Add-In enhancement technique differentiates between enhancements that can only be implemented once and enhancements that can be used actively by any number of customers at the same time. In addition, Business Add-Ins can be defined according to filter values. This allows you to control add-in implementation and make it dependent on specific criteria (on a specific Country value, for example).
    All ABAP sources, screens, GUIs, and table interfaces created using this enhancement technique are defined in a manner that allows customers to include their own enhancements in the standard. A single Business Add-In contains all of the interfaces necessary to implement a specific task.
    The actual program code is enhanced using ABAP Objects. In order to better understand the programming techniques behind the Business Add-In enhancement concept, SAP recommends reading the section on ABAP Objects.
    Regards,
    Ferry Lianto

  • Difference between user exit,enhancement and BAdi

    hello guys,
    what is the difference between user exit,enhancement and BAdi.
    Please do let me know..
    Thanks in advance.
    regards,
    praveen.

    Pls do search the forum before posting*

  • PPT on enhancements,user exits and BADIs

    Hi all,
    It'll be great if anyone of you has some PPT presentation on enhancements,user exits and BADIs. I am a new joinee and so only basic elementary concepts are required for learning purposes. I also need to give a presentation.
    Thanking you in advance.
    Deepayan

    Check these links on BADI
    http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt
    http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf
    http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc
    http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc
    http://www.esnips.com/doc/3b7bbc09-c095-45a0-9e89-91f2f86ee8e9/BADI-Introduction.ppt
    Check this link for advantage of BADIs over User exits
    http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
    Check this blogs 2 find a BADI:
    How to find if we have a BADI in Transaction VB02
    Re: BADI for screen enhancement in MM01  transaction
    Re: BADI and User exits
    How To Define a New BAdI Within the Enhancement Framework (Some Basics About the BAdI,BAdI Commands in ABAP,
    When to Use a BAdI?)
    /people/thomas.weiss/blog/2006/04/03/how-to-define-a-new-badi-within-the-enhancement-framework--part-3-of-the-series
    How to implement a BAdI And How to Use a Filter
    /people/thomas.weiss/blog/2006/04/18/how-to-implement-a-badi-and-how-to-use-a-filter--part-4-of-the-series-on-the-new-enhancement-framework
    Introducing Business Add-Ins
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f3202186-0601-0010-6591-b832b1a0d0de
    How to implement BAdi in Enhancement Framework
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d0456c54-0901-0010-f0b3-cd765fb99702
    Business Add-Ins
    http://help.sap.com/saphelp_47x200/helpdata/en/ee/a1d548892b11d295d60000e82de14a/frameset.htm
    BAdI: Customer-Defined Functions in the Formula Builder
    http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm
    Difference Between BADI and User Exits
    http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
    To Use BADI - Business Add In you need to Understand ABAP OO Interface Concept
    http://www.sap-img.com/abap/business-add-in-you-need-to-understand-abap-oo-interface-concept.htm
    You can check the links for Step by Step Badi Implemntation
    (very helpful self learning docs).
    BADI Step by Step Implementation.
    http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt
    http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf
    http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc
    http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc
    www.sapgenie.com/publications/saptips/022006%20-%20Zaidi%20BADI.pdf
    http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/eab541c5b63031e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/e6/63ee7f486cc143a560799d8803ce29/content.htm
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/srm/badi-general+information&
    http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt
    http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf
    http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc
    http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc
    www.sapgenie.com/publications/saptips/022006%20-%20Zaidi%20BADI.pdf
    http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/eab541c5b63031e10000000a155106/frameset.htm
    The specified item was not found.
    http://help.sap.com/saphelp_erp2005/helpdata/en/73/7e7941601b1d09e10000000a155106/frameset.htm
    http://support.sas.com/rnd/papers/sugi30/SAP.ppt
    http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/abapindx.htm
    http://members.aol.com/_ht_a/skarkada/sap/
    http://www.ct-software.com/reportpool_frame.htm
    http://www.saphelp.com/SAP_Technical.htm
    http://www.kabai.com/abaps/q.htm
    http://www.guidancetech.com/people/holland/sap/abap/
    http://www.planetsap.com/download_abap_programs.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/content.htm
    http://www.allsaplinks.com/badi.html
    /people/thomas.weiss/blog/2006/04/03/how-to-define-a-new-badi-within-the-enhancement-framework--part-3-of-the-serieshttps:///people/alwin.vandeput2/blog/2006/04/13/how-to-search-for-badis-trace-it
    /people/thomas.weiss/blog/2006/04/18/how-to-implement-a-badi-and-how-to-use-a-filter--part-4-of-the-series-on-the-new-enhancement-framework /people/thomas.weiss/blog/2006/05/03/source-code-enhancements--part-5-of-the-series-on-the-new-enhancement-framework
    http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt
    http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf
    http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc
    http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc
    http://www.esnips.com/doc/3b7bbc09-c095-45a0-9e89-91f2f86ee8e9/BADI-Introduction.ppt
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/40921dd7-d5cf-2910-1894-bb62316afbd1
    http://help.sap.com/saphelp_erp2005/helpdata/en/73/7e7941601b1d09e10000000a155106/frameset.htm
    http://support.sas.com/rnd/papers/sugi30/SAP.ppt
    http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/abapindx.htm
    http://members.aol.com/_ht_a/skarkada/sap/
    http://www.ct-software.com/reportpool_frame.htm
    http://www.saphelp.com/SAP_Technical.htm
    http://www.kabai.com/abaps/q.htm
    http://www.guidancetech.com/people/holland/sap/abap/
    http://www.planetsap.com/download_abap_programs.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/content.htm
    /people/thomas.weiss/blog/2006/04/03/how-to-define-a-new-badi-within-the-enhancement-framework--part-3-of-the-series
    /people/thomas.weiss/blog/2006/04/18/how-to-implement-a-badi-and-how-to-use-a-filter--part-4-of-the-series-on-the-new-enhancement-framework
    http://esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt
    http://esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc
    http://esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf
    http://esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc
    http://esnips.com/doc/365d4c4d-9fcb-4189-85fd-866b7bf25257/customer-exits--badi.zip
    http://esnips.com/doc/3b7bbc09-c095-45a0-9e89-91f2f86ee8e9/BADI-Introduction.ppt
    http://help.sap.com//saphelp_470/helpdata/EN/eb/3e7cee940e11d295df0000e82de14a/frameset.htm
    Difference Between BADI and User Exits
    http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
    Rewards if useful

  • How to find the user exits and BADIS from SPRO

    Hi all,
    please let us know how to find the User exits or BADIS for an application from SPRO.
    Regards,
    Madhavi

    Hi Varisetty,
    Finding user exits and BAdis from SPRO can be cumbsersome. In most instances you know the standard SAP program and want to check (find) an exit called in the flow of the transaction. You can do this as follows:
    For User Exit:
    Put "/h" in the command box (to start debugging)
    Execute your transaction
    When you enter debugging - put a breakpoint at statement
    CALL CUSTOMER-FUNCTION
    the control will stop at all calls to User Exits
    For BAdi (it's simpler)
    Go to class CL_EXITHANDLER in SE24
    Enter method GET_INSTANCE
    Put a breakpoint in this method
    Run your standard transaction - control will stop at all BAdis called within the flow since this method is used to check BAdi implementations before invoking them
    Also, if you want to find enhancements by package - go to SE80, enter the package and check function groups starting with X - those contain function exits (conventional user exits). For BAdis in a package, there is normally a separate tree node (under the package) for Enhancements hence clearly identifiable.
    Cheers,
    Adi

  • Active User Exits and BAdi

    Dear All,
                I am in need to find active user exits and BAdis in our implementation.
    Is there any specific Tcode or Program?.
    Could anybody help me in this regard.
    Regards,
    S.Sridhar

    Hi Sridhar,
    To find the active user exits, use the below program.
    REPORT  ZJK_USED_ENHANCEMENT_LIST               .
    TABLES : TFDIR, TRDIR, D010SINF, MODSAP, MODACT, TDEVCT, TADIR, TSTC, TSTCT, V_TDEVC, V_FDIRT.
    TYPE-POOLS : SLIS.
    TYPES : BEGIN OF ST_TRDIR,
            NAME LIKE TRDIR-NAME,
            CDAT LIKE TRDIR-CDAT,
            UDAT LIKE TRDIR-UDAT,
            RSTAT LIKE TRDIR-RSTAT,
            END OF ST_TRDIR.
    TYPES : BEGIN OF ST_TFDIR,
            SNO(4) TYPE C,
            INCL LIKE TFDIR-PNAME,
            CDAT LIKE TRDIR-CDAT,
            UDAT LIKE TRDIR-UDAT,
            R3STATE LIKE D010SINF-R3STATE,
            PNAME LIKE TFDIR-PNAME,
            INCLUDE LIKE TFDIR-INCLUDE,
            FUNCNAME LIKE TFDIR-FUNCNAME,
            ENHANCE  LIKE MODSAP-NAME,
            STEXT LIKE V_FDIRT-STEXT,
            PROJECT LIKE MODACT-NAME,
            DEVCLASS LIKE TDEVC-DEVCLASS,
            CTEXT LIKE TDEVC-CTEXT,
            END OF ST_TFDIR.
    DATA : IT_TRDIR TYPE TABLE OF ST_TRDIR,
           WA_TRDIR TYPE ST_TRDIR.
    DATA : IT_TFDIR TYPE TABLE OF ST_TFDIR,
           WA_TFDIR TYPE ST_TFDIR.
    DATA : LIKE(2) TYPE N,
           X(2),
           SNO(4),
           HTYPE TYPE DD01V-DATATYPE.
    **********************************ALV************************************
    DATA :  IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
            WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV,
            WA_LAYOUT TYPE SLIS_LAYOUT_ALV ,
            TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP'.
    **********************************ALV************************************
    PERFORM MANUAL_FIELDCAT USING 'SNO' 'IT_TFDIR' 'X' '4' 'S.No' .
    PERFORM MANUAL_FIELDCAT USING 'INCL' 'IT_TFDIR' 'X' '15' 'Include Name' .
    PERFORM MANUAL_FIELDCAT USING 'CDAT' 'IT_TFDIR' 'X' '15' 'Created Date' .
    PERFORM MANUAL_FIELDCAT USING 'UDAT' 'IT_TFDIR' ' ' '15' 'Last Modified' .
    PERFORM MANUAL_FIELDCAT USING 'R3STATE' 'IT_TFDIR' ' ' '15' 'Active / Inactive' .
    PERFORM MANUAL_FIELDCAT USING 'PNAME' 'IT_TFDIR' ' ' '12' 'Prgram Name' .
    *PERFORM MANUAL_FIELDCAT USING 'INCLUDE' 'IT_TFDIR' ' ' '10' 'Include No' .
    PERFORM MANUAL_FIELDCAT USING 'FUNCNAME' 'IT_TFDIR' ' ' '30' 'Function Module' .
    PERFORM MANUAL_FIELDCAT USING 'STEXT' 'IT_TFDIR' ' ' '74' 'Purpose of use' .
    PERFORM MANUAL_FIELDCAT USING 'ENHANCE' 'IT_TFDIR' ' ' '15' 'Enhancement' .
    PERFORM MANUAL_FIELDCAT USING 'PROJECT' 'IT_TFDIR' ' ' '10' 'Project' .
    PERFORM MANUAL_FIELDCAT USING 'DEVCLASS' 'IT_TFDIR' ' ' '10' 'Package' .
    PERFORM MANUAL_FIELDCAT USING 'CTEXT' 'IT_TFDIR' ' ' '100' 'Module' .
    PERFORM SELECTION.
    PERFORM LAYOUT.
    PERFORM  CALL_GRID_DISPLAY.
    **********************************ALV************************************
    FORM SELECTION.
      SELECT NAME CDAT UDAT RSTAT FROM TRDIR INTO TABLE IT_TRDIR WHERE NAME LIKE 'ZX%' AND SUBC EQ 'I'.
      LOOP AT IT_TRDIR INTO WA_TRDIR.
        WA_TFDIR-INCL =  WA_TRDIR-NAME.
        WA_TFDIR-CDAT = WA_TRDIR-CDAT .
        WA_TFDIR-UDAT = WA_TRDIR-UDAT.
        SELECT SINGLE * FROM D010SINF WHERE PROG EQ WA_TRDIR-NAME AND R3STATE = 'I'.
        IF SY-SUBRC EQ 0.
          WA_TFDIR-R3STATE = 'I'.
        ELSE.
          WA_TFDIR-R3STATE = 'A'.
        ENDIF.
        X = STRLEN( WA_TRDIR-NAME ).
        X = X - 2.
        CALL FUNCTION 'NUMERIC_CHECK'
          EXPORTING
            STRING_IN = WA_TRDIR-NAME+X
          IMPORTING
            HTYPE     = HTYPE.
        IF HTYPE EQ 'NUMC'.
          SNO = SNO + 1.
          WA_TFDIR-SNO = SNO.
          WA_TFDIR-INCLUDE = WA_TRDIR-NAME+X.
          CONCATENATE 'SAPL' WA_TRDIR-NAME+1 INTO WA_TRDIR-NAME.
          X =  STRLEN( WA_TRDIR-NAME ).
          X = X - 3.
          WA_TFDIR-PNAME = WA_TRDIR-NAME(X).
          SELECT SINGLE * FROM TFDIR WHERE PNAME EQ WA_TFDIR-PNAME AND INCLUDE EQ WA_TFDIR-INCLUDE.
          IF SY-SUBRC EQ 0.
            WA_TFDIR-FUNCNAME = TFDIR-FUNCNAME.
            SELECT SINGLE * FROM MODSAP WHERE MEMBER EQ WA_TFDIR-FUNCNAME.
            IF SY-SUBRC EQ 0.
              SELECT SINGLE * FROM MODACT WHERE MEMBER EQ MODSAP-NAME.
            ENDIF.
            WA_TFDIR-ENHANCE = MODSAP-NAME.
            WA_TFDIR-PROJECT = MODACT-NAME.
            SELECT SINGLE * FROM TADIR WHERE OBJ_NAME = MODSAP-NAME.
            SELECT SINGLE * FROM TDEVCT WHERE DEVCLASS = TADIR-DEVCLASS AND SPRAS = SY-LANGU.
            SELECT SINGLE * FROM V_FDIRT WHERE FUNCNAME EQ WA_TFDIR-FUNCNAME AND SPRAS EQ SY-LANGU.
            WA_TFDIR-STEXT = V_FDIRT-STEXT.
            WA_TFDIR-DEVCLASS = TDEVCT-DEVCLASS.
            WA_TFDIR-CTEXT = TDEVCT-CTEXT.
            APPEND WA_TFDIR TO IT_TFDIR.
          ENDIF.
        ENDIF.
        CLEAR : X, D010SINF, TFDIR, HTYPE, MODSAP, MODACT, TADIR, TDEVCT.
      ENDLOOP.
    ENDFORM.                    "SELECTION
    *&      Form  MANUAL_FIELDCAT
          text
         -->VALUE(P_0185)  text
         -->VALUE(P_0186)  text
         -->VALUE(P_0187)  text
         -->VALUE(P_0188)  text
         -->VALUE(P_0189)  text
    FORM MANUAL_FIELDCAT  USING    VALUE(P_0185)
                                   VALUE(P_0186)
                                   VALUE(P_0187)
                                   VALUE(P_0188)
                                   VALUE(P_0189).
      WA_FIELDCAT-FIELDNAME = P_0185.
      WA_FIELDCAT-TABNAME = P_0186.
      WA_FIELDCAT-KEY = P_0187.
      WA_FIELDCAT-OUTPUTLEN = P_0188.
      WA_FIELDCAT-SELTEXT_L = P_0189.
      APPEND WA_FIELDCAT TO IT_FIELDCAT.
      CLEAR WA_FIELDCAT.
    ENDFORM.                    " manual_fieldcat
    *&      Form  LAYOUT
          text
    FORM LAYOUT .
      WA_LAYOUT-ZEBRA = 'X'.
    ENDFORM.                    " LAYOUT
    *&      Form  CALL_GRID_DISPLAY
          text
    FORM CALL_GRID_DISPLAY .
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM     = SY-REPID
          I_CALLBACK_TOP_OF_PAGE = TOP_OF_PAGE
          I_GRID_TITLE           = 'Used Exit Details'
          IS_LAYOUT              = WA_LAYOUT
          IT_FIELDCAT            = IT_FIELDCAT
        TABLES
          T_OUTTAB               = IT_TFDIR.
    ENDFORM.                    " CALL_GRID_DISPLAY
    *&      Form  TOP
          text
    FORM TOP .
      DATA: HEADER TYPE SLIS_T_LISTHEADER WITH HEADER LINE.
      HEADER-TYP = 'H'.
    WRITE : 'Plant   :' TO HEADER-INFO+1,
           P_WERKS TO HEADER-INFO+10.
    APPEND HEADER.
    CLEAR HEADER.
    HEADER-TYP = 'H'.
    WRITE : 'Month :' TO HEADER-INFO+1,
             P_MONYR TO HEADER-INFO+10.
      APPEND HEADER.
      CLEAR HEADER.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          IT_LIST_COMMENTARY = HEADER[]
          I_LOGO             = 'JK'.
    ENDFORM.                    "TOP
    regards
    Arun

  • User Exit and BADI for Sales Order

    Dear Experts,
                        please give me available user exits and BADI for sales order .i want to take the data from sales order at the time of sales order posting .

    Hi,
    In debugging you can find some Enhancement Spots where you can implement your code. This lets you ignore the need for access key, but its a time consuming process spotting out the exact enhancement point.
    Regards
    Karthik D

  • FBL3N/FBL5N/FAGLL03 user exits and badis for authorization

    Hi Gurus,
    I have tried userexit and badis for FBL3N , FBL5N and FAGLL03 for the purpose of  user want to display documents created by him and other users documents should not display . Please suggest me any user exit or badi and logic for the same.
    Moderator message: last warning, if you continue to disregard moderator messages and post the same question nevertheless, I will initiate deletion of your user ID.
    Edited by: Thomas Zloch on May 10, 2011 9:57 AM

    Hi,
    1. Execute report FBL3n and in the output goto menu SETTINGS -> SPECIAL FIELDS and add the entry BKPF-USNAM and save. Now the user who have created the entry will be available in your FBL*N report.
    2. Goto BTE event 00001650 - SAMPLE_INTERFACE_00001650, and copy the FM SAMPLE_INTERFACE_00001650 to custom FM. Inside this custom FM, first pass the value of I_POSTAB to E_POSTAB. i.e
    E_POSTAB[] = I_POSTAB[].
    Now loop E_POSTAB and check whether E_POSTAB-USNAM NE SY-UNAME, then delete that entry from the internal table E_POSTAB.
    3. Now create a custom product in FIBF transaction and check the activate checkbox. Attach the event 00001650 and custom FM to the P/S module customer part.
    Hope this will meet your requirement.
    Regards,
    Harish
    Moderator message: please be more selective when replying to questions (especially the "do my work" kind), better check the posters history before investing effort.
    Edited by: Thomas Zloch on May 10, 2011 9:59 AM

  • Difference between User Exit & a Functional Module

    Dear all,
    Please help me in understanding ,what's an User Exit & a Functional Module in
    standard SAP.How do we define both of them.
    1.When  can/cannot I use an user exit?How to check for which T codes in PP
    Module an User Exit can be used or present.
    2.Can I use only a Functional Modules for Z developments or also an user Exit for
    Z developments?
    Please explain it in a simple way.
    It will be a great help for me,Expecting for your help.
    Regards
    Mangal

    user exit is a customised code used to extend or change normal SAP functionality.FM is a piece of reusable code uesed as a part of modularisation technique in SAP so that you can use this code again & again.
    1. you create FM through se37. First create function group which in return will contain your FM. you creates user exits through SMOD and CMOD. In case of some standard programs there are special includes where you can add u r own code to extend standard functionality. ( in pro sapmv45a include sapmvfzz used).
    to find an exit go to se80 or se84 give the package name and find exit corresponding to it ( ex for sales exits give package VA then search for exit )
    for second point i didnt get get what u want to know?
    for any z development u dont need at all to use exits u can do it thru SE38.USER-EXIT is add on functionality to customise u r standard transaction.
    i hope this will clear u r doubt.reward points if helpful.
    Rushikesh

  • Differences between 'Cancel' , 'Exit' and 'Back' buttons in a dialog prog.

    Hi all,
    I have a straightforward questions about handlign the Cancel, Exit and Back buttons in a dialog program. What is the way of handling these function codes? I guess with 'Exit'  we leave the transaction using command 'Leave Program',  with 'Back' we can use 'Leave to screen 0' . Right? What about Cancel command?
    Regards,
    Sükrü

    hi
    good
    CANCEL->Cancel the Current Session back to exactly last session
    EXIT->Exit From the current session and back to main session
    BACK->Back to the exactly the last session
    thanks
    mrutyun^

  • Is there any difference between the reader function of Adobe Acrobat and Adobe Reader

    I would think, not.
    Also, can Adobe Reader and Adobe Acrobat be on the same computer without operational conflicts?
    I know there seemed to be an issue with both back around version 8.

    That would be a great oversimplification. But in terms of displaying PDFs, with default options, yes it will look the same. The controls won't look the same. Form filling too. But what you can do with a form (e.g. whether it can be saved) varies.

Maybe you are looking for