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

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

  • 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

  • What is the exact difference between Purchse order and purchase requisition

    Hi all,
    What is the exact difference between Purchse order and purchase requisition.
    Thx

    Hi,
    <b>Purchase Requisition</b>-> Staff in an orgn places Pur requisition for want of some goods/products - ME51
    Related Table EBAN
    Request for Quotation(RFQ)-> The Purchase dept in the orgn calls/requests for the quotation for the products against which PR was raised. - ME41
    Vendor Evaluation->After receving the RFQ's, after comparison a Vendor is finalised based on the terms and conditions.
    <b>Purchase Order(PO)</b>-> Pur order was issued to that vendor asking him to supply the goods/products -ME21N
    Tables:EKKO,EKPO
    Goods Receipt Note(GRN)->Vendor supplies the material/Products to the orgn-
    MB01
    Goods Issue (GI) -> People receives their respective itesm for which they have placed the Requisitions
    Vendor, Material ,Qty are mandatory for PO.
    Regards,
    Padmam.

  • What is the exact diff between  At New  and On Chnage

    hello all
    what is the exact diff between  At New  and On Chnage in control breaks statements. and when  shall we go for At new & when shall we go for On change on events.
    Plz tell with with some code.

    Hi ,
    Using at new
    Each time the value of c changes, the lines of code between at new and endat are executed. This block is also executed during the first loop pass or if any fields to the left of c change. Between at and endat, the numeric fields to the right of c are set to zero. The non-numeric fields are filled with asterisks (*). If there are multiple occurrences of at new, they are all executed. at end of behaves in a similar fashion.
    Using the on change of Statement
    Another statement you can use to perform control break processing is on change of. It behaves in a manner similar to at new.
    The following points apply:
    u2022     If the value of any of the variables (v1, v2, and so on) changes from one test to the next, the statements following on change of are executed.
    u2022     If no change is detected and else is specified, the statements following else are executed.
    on change of differs from at new in the following respects:
    u2022     It can be used in any loop construct, not just loop at. For example, it can be used within select and endselect, do and enddo, or while and endwhile, as well as inside get events.
    u2022     A single on change of can be triggered by a change within one or more fields named after of and separated by or. These fields can be elementary fields or field strings. If you are within a loop, these fields do not have to belong to the loop.
    u2022     When used within a loop, a change in a field to the left of the control level does not trigger a control break.
    u2022     When used within a loop, fields to the right still contain their original values; they are not changed to contain zeros or asterisks.
    u2022     You can use else between on change of and endon.
    u2022     You can use it with loop at it where . . ..
    u2022     You can use sum with on change of. It sums all numeric fields except the one(s) named after of.
    u2022     Any values changed within on change of remain changed after endon. The contents of the header line are not restored as they are for at and endat.
    Regards,
    KV

  • What is the exact difference between Database Cloning and Database Refresh?

    Hi,
    Can anybody tel me the exact difference between Database Cloning and Database Refresh?
    I Have some conflicts in these topics.
    Thanks
    Rajesh

    Refresh is what it says, "refresh" . You have a main site which would always have the data being inserted into it. There would be another site which would remain some where else . This site needs to be refreshed with the primary site. So you need to do export from the primary, push it to the secondary site and done!
    HTH
    Aman....

  • 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.

  • Wat is the exact differences between clustered table and pooled table

    hi,
       can you tell me ravi...wat is the exact differences between clustered table and pooled table
    with regards//
    anilreddyg

    Hi Anil Reddy
    Pooled Tables, Table Pools, Cluster Tables, and Table Clusters
    These types of tables are not transparent in the sense that they are not legible or manageable directly using the underlying database system tools. They are managed from within the R/3 environment from the ABAP dictionary and also at runtime when they are loaded into application memory.Pool and cluster tables are logical tables. Physically, these logical tables are arranged as records of transparent tables. The pool and cluster tables are grouped together in other tables, which are of the transparent type. The tables that group together pool tables are known as table pools, or just pools; similarly, table clusters, or just
    clusters, are the tables which group cluster tables.Not all operations that can be performed over transparent tables can be executed over pool or cluster tables.
    For instance, you can manage these tables using Open SQL calls from ABAP, but not Native SQL.These tables are meant to be buffered and loaded in memory, because they are commonly used for storing internal control information and other types of data with no external (business) relevance. SAP recommends that tables of pool or cluster type be used exclusively for control information such as
    program parameters, documentation, and so on. Transaction and application data should be stored in transparent tables.
    Table Pools
    From the point of view of the underlying DBMS as from the point of view of the ABAP dictionary, a table pool is a transparent table containing a group of pooled tables which, when created, were assigned to this table pool.
    Field Type Description
    TABNAME CHAR(10) Table name
    VARKEY CHAR(n) Maximum key length n =< 110
    DATALN INT2(5) Length of the VARDATA record returned
    VARDATA RAW(m) Maximum length of the data varies according to DBMS
    Table Clusters
    Similarly to pooled tables, cluster tables are logical tables which, when created, are assigned to a table cluster. Therefore, a table cluster, or just cluster, groups together several tables of type clusters.Several logical rows from different cluster tables are brought together in a single physical record. The records
    from the cluster tables assigned to a cluster are thus stored in a single common table in the database.A cluster contains a transparent cluster key which must be located at the start of the key of all logical cluster tables to be included in the cluster. As well, a cluster contains a long field (VARDATA), which contains the
    data of the cluster tables for this key. If the data does not fit into a field, continuation records are created.
    Field Type Description
    CLKEY1 CHAR(*) First key fields
    CLKEY2 CHAR(*) Second key field
    CLKEYN CHAR(*) nth key field
    PAGENO INT2(5) Number of the next page
    TIMESTMP CHAR(14) Time stamp
    PAGELG INT2(5) Length of the VARDATA record returned
    VARDATA RAW(*) Maximum length of the data section; varies according to database system
    Working with Tables
    The dictionary includes many functions for working with tables. There are five basic operations you can perform on tables: display, create, delete, modify, copy. Please do not confuse displaying a table with displaying the table entries (table contents). In order to display a table, it must previously exist; otherwise the system will display an error message in the status bar. For the following example, the table TABNA is used. To display this table, from the main dictionary screen, enter the table name in the Object name
    input field with the radio button selected next to Tables. Then, click on the Display button at the bottom of the screen, or press the F7 function key, or, alternatively,
    select Dictionary object Display from the menu.
    In this screen, you can see table information such as
    ¨ Table type, shown next to the name of the object. In the example, it is a transparent table.
    ¨ Short text description.
    ¨ Name of the user who made the last change, and the date of the change.
    ¨ Master language.
    ¨ Table status. On the screen, you can see this table is saved and active.
    ¨ Development class. For information on development classes, refer to Chap. 6.
    Delivery class, which sets the maintenance group for the table. It controls how tables will behave during client copy procedures, upgrades, and so forth.¨
    Tab. Maint. Allowed flag, which indicates whether you can generate a screen for maintaining table entries.
    ¨Then, on the lower part of the screen, you can see the table fields with all associated characteristics such as:
    ¨ Field name.
    ¨ Key indicator. When set, this field is the primary key, or part of it.
    ¨ Data element.
    ¨ Basic data type.
    ¨ Length.
    ¨ Check table.
    ¨ Short text, describing the field.
    Additional information about the table can be displayed by selecting the corresponding functions from the menu or directly from the application toolbar, such as keys, indexes, or technical settings
    Standard table:
    The key access to a standard table uses a sequential search. The time required for an access is linearly dependent on the number of entries in the internal table.
    You should usually access a standard table with index operations.
    Sorted table:
    The table is always stored internally sorted by its key. Key access to a sorted table can therefore use a binary search. If the key is not unique, the entry with the lowest index is accessed. The time required for an access is logarithmically dependent on the number of entries in the internal table.
    Index accesses to sorted tables are also allowed. You should usually access a sorted table using its key.
    Hash table:
    The table is internally managed with a hash procedure. All the entries must have a unique key. The time required for a key access is constant, that is it does not depend on the number of entries in the internal table.
    You cannot access a hash table with an index. Accesses must use generic key operations (SORT, LOOP, etc.).
    Index table:
    The table can be a standard table or a sorted table.
    Index access is allowed to such an index table. Index tables can be used to define the type of generic parameters of a FORM (subroutine) or a function module.
    Just have a look at these links:
    http://help.sap.com/saphelp_nw04/helpdata/en/90/8d7304b1af11d194f600a0c929b3c3/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/74/83015785d811d295a800a0c929b3c3/frameset.htm
    Regards
    Sreeni

  • 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

  • Whats the actual difference between Business system and Business service

    whats the actual difference between Business system and Business service

    Business System
    1) Business system is a logical system, and there is an importance on physical existence of the system.
    2) Also SLD entry is required.
    3)It is generally used for SAP applications, this is just a general prinicple followed but not mandatory.
    4)This is defined as part of the SLD and is a physical system whose parameters are well defined.
    5(Business systems refers to the physical systems, for instance the R/3 system. You define the business systems in the SLD
    Business Service
    1) You use a Business Service, when you do not have the System details of the the partner system to which you want to communicate. i.e. you have not configured the partner system in SLD.
    2) Business Service is an Absract Unit with Sender and Receiver Interfaces,In this case you need to explicitly add the message interfaces while doing configuration in ID.
    3) It is generally used for NON-SAP applications, this is just a general prinicple followed but not mandatory.
    4) This is not defined as part of SLD and whose technical parameters are not completely known.
    5)Business service is used when the message is not addressed to a business system. It is used mostly in B2B scenarios.
    Also go through these links and threads...
    http://help.sap.com/saphelp_nw2004s/helpdata/en/c7/301640033ae569e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm
    Business service or Business system??
    Business Service vs Business System in Integration Directory.
    Best Regards

  • 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

  • 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

  • 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

  • Whats the functional difference between user IDs SAP* and DDIC?

    Whats the functional difference between SAP* and DDIC? Can any one tell me please. I am new here. Thanks in advance.

    Hi Farooq,
    There are three user IDs in various SAP clients.
    1. SAP* (Client 000 and 001)
    SAP* denotes the default super user and has all administrative powers.
    2. DDIC (Client 000 and 001)
    DDIC user is responsible for the maintenance of the ABAP/4 Dictionary and the software logistics.
    3. EarlyWatch (Client 066)
    The EarlyWatch user has access only to monitoring and performance data.
    Please check this link for more information on data dictionary objects.
    http://help.sap.com/saphelp_webas620/helpdata/en/cf/21ea31446011d189700000e8322d00/content.htm
    Hope this will help.
    Regards,
    Ferry Lianto

  • 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

Maybe you are looking for

  • Standalone adapter engine

    Hi all, Will SAP continue to support the Standalone J2SE adapter engine in future releases of SAP XI? The J2EE adapter engine is quite "heavy" to use.  It requires J2EE application server, Oracle database, quite some memory. Actually, I like the stan

  • International - Date

    Date fields in the reports are not displaying as System Date Format. Pulled the date fields and set the format as System Default Shrt format. Ran the report and display the date in System Date format BUT TIME is getting displayed. How to suppress the

  • Get Layout details during run time of the report

    Hi floks,           We are downloading the ALV ouput data through a customised button. Presently, it downloads all the data from the Internal table that is passing to the function module. But the requirement is it should download only those fields wh

  • Why a restored iPhoto lib doesn't open in 10.8 ?

    Hello, After downgrading to 10.8, I can't open my restored iPhoto lib from TM, but I am asked to continue to do that with 10.9. IPLM is nice to view the photos but all the books are gone! Is there any possibility to force iPhoto 11 to open the restor

  • Locking without Enqueue Process

    Hi All, Here is a strange scenario ; - Standalone EP SP12 installation. - Start J2EE - Logon to Portal, open an iview(iviewA) to edit it - Open "Monitor Locked Objects" within Portal to see the locked iview object - Terminate enqueue server process m