UserExits

Sir,
plz explain Exits and its various types and also give example of them also.

Hi,
USEREXIT
  Userxits allow us to add our own functionality to SAP standard program
without  modifying it . These are implemented in the form of subroutines and hence are also known as FORM EXITs. The userexits are generally collected in includes and attached to the standard program by the SAP.
    All Userexits start with the word USEREXIT_...
FORM USEREXIT_..
z..
ENDFORM.
The problem lies in finding the correct userexit and how to find it if one exists for the purpose. Once the correct userexit is found the necessary
customer code is inserted in the customer include starting with the z..
in the form routine.
e.g. USEREXIT_SAVE_DOCUMENT_PREPARE
Certain application like SD still provide this form of enhancement using userexit but this practice is no longer being followed for newer extensions
instead they are using EXITs which come bundeled in enhancement packages . Neverthiless existing USEREXITS will be supported by SAP an all the newer versions of SAP.
HOW TO FIND USEREXITS
  Userexits can be found in number of ways:
1) To find userexits in SD module , goto object navigator(SE80) and select
    development class from the list and enter VMOD in it. All of the userexits in SD are contained in the development class VMOD. Press
enter and you will find all the includes which contain userexits in SD for
different functions like PRICING, ORDER PROCESSING etc. Select the userexit according to the requirement and read the comment inserted in it
and start coding .
Some examples of userexits in SD(SALES & DISTRIBUTION ) are:
1)ADDING OF NEW FIELDS IN PRICING  
In Pricing in SD the fields on the basis of which pricing is done are derived from the FIELD CATALOG which is a structure KOMG .This structure is used to transfer transaction data to the pricing procedure in SD and is also known as communication structure.This structure KOMG consists of two tables KOMK for Header related fields and KOMP for item related fields.
   The fields which are not in either of the two tables KOMK and KOMP
cannot be used in pricing .Sometimes a need arises when the pricing
is to be based on some other criteria which is not present in the form of fields in either of the two tables.
  This problem can be solved by using USEREXITS which are provided for pricing in SD.
  Pricing takes place both when the SALES ORDER ( Transaction VA01) is created as well as when INVOICING ( Transaction VF01) is done.Hence SAP provides 2 userexits ,one for sales order processing which is
USEREXIT_PRICING_PREPARE_TKOMP  or
USEREXIT_PRICING_PREPARE_TKOMK
Depending upon which table (KOMK or KOMP) the new fields were inserted we use either of the above two userexits.These userexits are found in include MV45AFZZ of the standard SAP sales order creation program SAPMV45A.
In the case of userexit which will be called when invoicing is done ,these
are provided in the include RY60AFZZ which is in the standard SAP
program SAPMV45A. The name of the userexits are same. i.e
USEREXIT_PRICING_PREPARE_TKOMP  or
USEREXIT_PRICING_PREPARE_TKOMK
These userexits are used for passing the data from the communication structure to the pricing procedure, for this we have to fill the newely
created field in the communication structure KOMG for this we fill the code in the above userexit using the MOVE statement after the data that
has to be passed is taken from the database table by using the SELECT statement. The actual structure which is visible in these userexits and which is to be filled for that particular field is TKOMP or TKOMK.
Before the coding for these userexits is done ,it is necessary to create a new field in either of the two tables KOMK or KOMP .For this purpose
includes are provided in each of them .
To create the field in header data(KOMK) the include provided is KOMKAZ
and to create the field in item data(KOMP) the include provided is KOMPAZ.
One possible example for the need of creating new fields can be e.g. Frieght to be based upon transportation zone ,for this no field is available in field catalog and hence it can be created in KOMK and then above userexits can be used to fill the transportation data to it.
2)The other method of finding userexit is to find the word USEREXIT in the
associated program of the transaction for which we want to determine userexit using SE38.
3)The other method of finding userexits is to find the include in case of SD/MM applications where the userexits are located ,this can be found in the SAP reference IMG generally in the subfolder under SYSTEM MODIFICATION.
Some other examples of userexits in SD are:
USEREXIT_NUMBER_RANGE
This userexit is used to assign a different internal document number to the
sales order(VA01) when it is created depending on some criteria like a different SALES ORGANIZAION(VKORG) .
USEREXIT_SAVE_DOCUMENT_PREPARE
This userexit is used to insert the ABAP code which will be called when
the document (sales order VA01) is just about to be saved.This userexit is used generally for custom checks on different fields , to display some information before the order will be saved or for making changes to certain fields before the sales order will be saved.
Exits & Enhancements
There are mainly six types of EXITs in sap which have been collected in the form of enhancement packages and attached to standard code in SAP.
These are different from USEREXIT in the way that they are implemented
in the form of FUNCTIONs while in USEREXITS we use form routines for their implementation. These are also sometimes known as function exits .
   These start from the word EXIT_ followed by the program name and then followed by a three digit number.
e.g.  EXIT_SAPMV45A_002
  This exit is found in SD in enhancement V45A0002.
TYPES OF EXITS
1)MENU EXITS
2)FUNCTION EXITS
3)TABLE EXITS
4)SCREEN EXITS
5)KEYWORD EXITS
6)FIELD EXITS
We use SAP transactions CMOD and SMOD to manage exits. Before implementing an exit , it is required to create the project by using CMOD
selecting the enhancement e.g. V45A0002 and selecting the component
(one which fulfills our need) i.e the exit which will be implemented in SMOD and after coding has been done the project has to be activated.
  An exit can be coded only once.
FUNCTION EXITS
  These are used to add functionality through ABAP code . These start from the word EXIT_programname_NNN ending in a 3 digit number. No access code is required to implement any tupe of exit including function exits.
   The function exits are called from the standard SAP program in the form
of ABAP statement
CALL CUSTOMER-FUNCTION 'NNN'
This is in contrast to USEREXITs where PERFORM statement is used to call
the required userexit.
To implement the FUNCTION EXITs first of all the project is created and a suitable enhancement package is selected and from its compnents the function exit to be implemented is selected and on double clicking it the exit code will appear in ABAP EDITOR(se38) where a Z include will be found and the customer code should be entered in this include.
e.g.
ADDING A DEFAULT SOLD-TO-PARTY in Sales Order Creation
    To show a default sold-to-party in this field when the user creates a sales order (VA01) we can use a function exit .This function exit is located
in enhancement no V45A0002 . Before we can choose the exit we have to
create a project in CMOD after that enter V45A0002 in the enhancement field and click on the components . In the components you will see the
exit EXIT_SAPMV45A_002 . This exit is used for our purpose.
  Double clicking on this exit will takes us to function builder (SE37) . This
function exit has one exporting parameters and two importing parameters, we are interested in exporting parameter which is  E_KUNNR
of type KNA1-KUNNR i.e if we move the desired customer name to this
structure(E_KUNNR) it will be shown in the field as the default value when we create the sales order.
This function also contains a customer include ZXVVA04 . This include
will be used to write our custom code .
  Double clicking on this include and it will prompt us that this include does not exists do you want to create this object ,select yes and the include will be created .In this include we can write our own code that will fill the field E_KUNNR.
e.g. E_KUNNR = 301.
Activate the include and Activate the project. Now when ever the SALES ORDER will be created , sold-to-party field will come up with a predefined
customer .
FIELD EXITS
  The field exits are managed,created,activated through program RSMODPRF. The field exit is associated with a data element existing in ABAP dictionary and hence to the screen field using that data element.
  The format of field exit is :
FIELD_EXIT_dataelement_A-Z or 0-9
   If a particular screen and program name is not specified than the field exit will effect all the screens containing that data element.
   The function module associated with field exit shows two parameters
INPUT and OUTPUT.  Input parameter contains the data passed to the field exit when the field exit was invoked by the R/3 , We can write our own code to change the output parameter depending upon our requirements.
    Before the field exit can have any effect the system profile parameter
ABAP/FIELDEXIT in all the application servers should be set to YES
ABAP/FIELDEXIT = YES.
Ref :http://sap.niraj.tripod.com
Please Reward points,if it is useful
Regards,
Satish

Similar Messages

  • IPC pricing userexits in AP 7.0

    Hi,
    There is an issue in the custom Userexits in AP 7.0 we are using CRM 5.0 with AP 7.0 for IPC
    The issue is: we a have a Z pricing condition (configured as a manual entry).upon adding in the GUI for the Sales orders products, the value is deleted automatically.
    So to resovle this I have created a Z userexit for the Requirement in 7.0 with no attributes. The JAVA code has to get the requirement number and return true.
    the JAVA code is:
    package com.sap.pricing.userexits;
    import com.sap.spe.condmgnt.customizing.IAccess;
    import com.sap.spe.condmgnt.customizing.IStep;
    import com.sap.spe.condmgnt.finding.userexit.IConditionFindingManagerUserExit;
    import com.sap.spe.condmgnt.finding.userexit.RequirementAdapter;
    import com.sap.spe.base.logging.UserexitLogger;
    public class ZPricingRequirement extends RequirementAdapter {
              private static UserexitLogger userexitlogger = new UserexitLogger(ZPricingRequirement.class);
         public boolean checkRequirement(IConditionFindingManagerUserExit item,
                   IStep step, IAccess access) {
              int reqno;          
              reqno = step.getRequirementNumber();
              switch(reqno) {
                   case 609:
                        userexitlogger.writeLogError("609 reached!!!");
                        return true;
                   case 991:
                        return true;
              return true;
    But still it is not working. The condition gets deleted automatically. Any inputs on this would be appreciated.
    Thanks,
    Shailaja

    Hi Shailaja,
    I suggest you have a configuration issue - not a coding problem.  Otherwise it could be an authorisation issue.
    Cheers
    Andrew

  • Enhancements or Userexits to change a field in PO

    Hello experts,
        My Requirement is while creating a PO from PR using ME59n (automatic creation) , unloading point (ekpv-ablad) has to be populated with some conditions.Currently i found a BADI ME_PURCHDOC_POSTED and able to make change by calling a BAPI_PO_CHANGE. Is there any USEREXITS or BADI for mapping the field or to change that structure without actually calling the BAPI .
    Thanks in Advance,
    Vinod.

    Hi srini,
    Thanks for the Reply. I have tried the exits but it does nt have changin parameters.Finally used the Bapi_po_change..
    br,
    vinod.

  • Help needed in userexits.

    Hi All,
    Iam new to userexits.......i have a requirement....
         How to Develop User exit which captures the sales data, delivery data and shipment data at the time of creation and copy that to a custom table?
    need ur help pls....
    thnx in advance,
    Pavani.

    How to create user Exit check
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sapgenie.com/abap/code/abap26.htm
    http://www.sap-img.com/abap/what-is-user-exits.htm
    http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
    http://www.easymarketplace.de/userexit.php
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sappoint.com/abap/userexit.pdfUser-Exit
    Transaction Code - VA02                     Change Sales Order
    Exit Name           Description
    SDTRM001            Reschedule schedule lines without a new ATP check
    V45A0001            Determine alternative materials for product selection
    V45A0002            Predefine sold-to party in sales document
    V45A0003            Collector for customer function modulpool MV45A
    V45A0004            Copy packing proposal
    V45E0001            Update the purchase order from the sales order
    V45E0002            Data transfer in procurement elements (PRreq., assembly)
    V45L0001            SD component supplier processing (customer enhancements)
    V45P0001            SD customer function for cross-company code sales
    V45S0001            Update sales document from configuration
    V45S0003            MRP-relevance for incomplete configuration
    V45S0004            Effectivity type in sales order
    V45W0001            SD Service Management: Forward Contract Data to Item
    V46H0001            SD Customer functions for resource-related billing
    V60F0001            SD Billing plan (customer enhancement) diff. to billing plan
    No of Exits:         15
    Rewards if useful....................
    Minal

  • Userexits for payment terms

    My Requirement is i want system to pick the payment terms from the customized table where i have maintained the combination (customer/Sales doc type/mateiral/ payment terms)
    I deleted the Payment terms from the customer master(for few customers)
    If there is payment terms in customer master then system should take from there to VA01 or otherwise system should check the Ztable what we have created & maintained the above said combination from there system should take the payment terms automatically.
    I found some user exits susggested by some experts.... can any one tell me how to proceed with these userexits.....
    1. MV45AFZZ  - USEREXIT_MOVE_FIELD_TO_VBAP.
    2. MV45AFZA - USEREXIT_REFRESH_DOCUMENT

    Hi
    Try also with USEREXIT_MOVE_FIELD_TO_VBKD in MV45AFZZ if you want to populate the field ZTERM in table VBKD.
    A last suggestion, see SAP Note 178328 - Problems due to incorrect user exits in SD.
    I hopet this helps you
    Regards
    Eduardo
    Edited by: E_Hinojosa on Nov 24, 2011 9:53 AM

  • I have  doubt on userexits

    I have developed some code in standard SD userexit for VA01 tcode for my own functionality.In standard SD userits some zincludes are there in that include i wrote a code for my requirement.My requirement was successfully worked.But my doubt is if someone use same tcode va01.In this situation my requirement was globally imacted to others or not? Please clarify my doubt.Userexits means without modifying the SAP standard functionality we can add our own functionality.

    Hi Sujatha,
                            Userxits allow us to add our own functionality to SAP standard program
    without  modifying it . These are implemented in the form of subroutines and hence are also known as FORM EXITs. The userexits are generally collected in includes and attached to the standard program by the SAP. Or
    when there is a need for customization, then we require User Exits. This is ABAPer Job..he will find User Exits in SMOD Transaction and impliments it in CMOD Transaction. Customisation in the sense, changing the sap standard program.
    You can more detailed information in these links about user exits.
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://sap.niraj.tripod.com/id21.html
    Hope this is helpfull.
    If helpfull rewad poins.
    Thanks and Kind Regards
    Mohan

  • Information on Userexits, Functional Specs, workflow & scrtipts

    Hi,
    I recently got certified by SAP as Functional mySAP solution consultant in SCM (Order fulfillment I) . During my last interview i was asked questions about userexits, functional specs, workflow and scripts. Would be glad if you can tell me the from where i can access these informations, also please let me know whether the above would come under preview of a functional cosultant.

    Have you searched inside the latest SCM documentation?
    http://help.sap.com/saphelp_scm50/helpdata/en/e1/8e51341a06084de10000009b38f83b/frameset.htm
    You can use this search form for all queries about SAP documentation:
    http://help.sap.com/search/search.jsp

  • Document clearing and creation events (userexits)

    Hi,
    I am looking for some events (userexists) triggered, when
    a) invoice document is cleared
    b) down payment (NOT request) document is created.
    I found some P/S interfaces, but I do not have enough experiences to deside, which one is "the right one" ...Of course, userexits can be more general (I mean triggered also for other document types), this is not a problem, I can check a document type and take desired action only when required ... It hasn't be the only (common) event for a) and b) ... without problems I can handle more events. But my requisition is to find event triggered universally ( ..., when the document is cleared manually, or automatically by bank payment program, ... etc).
    Thanks for your ideas and suggestions.

    Hi!
    Check out the program RV60AFZZ.
    FORM USEREXIT_ACCOUNT_PREP_KOMKCV.   "to modify the FI document header
    FORM USEREXIT_ACCOUNT_PREP_KOMPCV.   "to modify the FI documents position
    These forms run, when you are releasing the invoice.
    Regards
    Tamá

  • Userexits or BADIs or BTE's during payment proposal

    Hi,
    I am looking for Userexits or BADIs or BTE's during payment proposal (F110)
    I want to do some checks based on currency and payment method.
    Thanks,
    Krishna.

    Hello,
    You may use the following BADIs. Pls try the highlighted one first.
    FI_BSTM_MC_EXIT
    FI_F110_SCHEDULE_JOB
    FI_PAYMENT_ACCOUNTHOLDER_GTS
    FI_PAYMENT_ADD_INFO_FOR_GTS
    FI_PAYMENT_NOTE_TO_PAYEE_GTS
    Regards,
    Renjith Michael.

  • Adding a standard field in a standard Tcode witout userexits

    Hi all,
    I need a standard field(not user defined) to be added in the standard screen . I have checked whether ant userexits were given to that screen in SMOD ....but there are no user exits for that screen (tcode : J1IA101).
    So how to add a standard field in that screen without exits....

    Chandra,
    You will have edit the standard code, by REPAIRS.
    This is not advised.
    Suggest you to raise a OSS note to SAP explaining what are you trying to do.
    Regards,
    Ravi
    note : please mark the helpful answers

  • FAQ's on Userexits and BADI's

    Can I have FAQ's on Userexits and BADI's

    Check these links..
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sap-img.com/abap/what-is-user-exits.htm
    New to enhancements
    creation of table in ecc6
    for Function module exits
    New to ABAP Enhancements
    For menu Exits and screen exit
    USER EXIT
    Search through www.enips.com.
    You can find lot of material there.
    BADI's
    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
    User Exits
    http://www.erpgenie.com/sap/abap/code/abap26.htm
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sapgenie.com/abap/code/abap26.htm
    http://www.sap-img.com/abap/what-is-user-exits.htm
    http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
    http://www.easymarketplace.de/userexit.php
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sappoint.com/abap/userexit.pdfUser-Exit
    TO find all BADI's
    Follow the below steps to find out what all BADI's are called when you press any button in any transaction.
    1) Goto se24 (Display class cl_exithandler)
    2) Double click on the method GET_INSTANCE.
    3) Put a break point at Line no.25 (CASE sy-subrc).
    Now
    4) Execute SAP standard transaction
    5) Press the required button for which you need to write an exit logic, the execution will stop at the break point.
    6) Check the values of variable 'exit_name', it will give you the BADI name called at that time.
    7) This way you will find all the BADIs called on click of any button in any transaction.
    Regards,
    Balaji Reddy G
    ***Rewards if answers are helpful

  • How do you test your Java Pricing UserExits in eclipse?

    How do you test your Java Pricing UserExits in eclipse?

    do you have to deploy the java class on vmc server to debug it
    Yes
    - So, the classes have to be compiled error free and uploaded to VMC.
    - VMC has to be restarted to test your classes.
    - You have to set the log levels appropriately for your classes using SM53 / SM52.
    -  You can also perform VMC debug through Eclipse.
    all of the details are available in the pricing exit manual*

  • Userexits/Badis for MIGO to update business area(GSBER) in FI constitution

    Hi ,
    I need to update business area field (GSBER)  for  accounts document after Goods Recieve (GR) through MIGO and Post Goods Issue (PGI) through VL02N.
    Can you please tell me the userexits/BADIS for this requirement
    Thanks in advance
    Sakti

    Hi Sujit,
    Thanks for reply
    I tried with both BADIs. After implementing I put break point.
    And goto MIGO. and filled req. fields and click on SAVE button, it should be stopped there.
    But it is not stopping there.
    Regards,
    Sakti

  • Userexits/BADI in ME31K for getting the contract number created.

    Dear Experts,
    Is there any userexits/BADI available in ME31K , for getting the contract number once it is created.
    Thanks&Regards,
    Anversha

    Hi
    find the BADI:
    1. Goto SE24
    2. Open the class "CL_EXITHANDLER"
    3. Open the Metnod "GET_INSTANCE"
    4. Put a Break point in the "  CASE sy-subrc."
    CALL METHOD cl_exithandler=>get_class_name_by_interface
        EXPORTING
          instance                      = instance
        IMPORTING
          class_name                    = class_name
        CHANGING
          exit_name                     = exit_name
        EXCEPTIONS
          no_reference                  = 1
          no_interface_reference        = 2
          no_exit_interface             = 3
          data_incons_in_exit_managem   = 4
          class_not_implement_interface = 5
          OTHERS                        = 6.
      CASE sy-subrc.
        WHEN 1.
          RAISE no_reference.
        WHEN 2.
          RAISE no_interface_reference.
        WHEN 3.
          RAISE no_exit_interface.
        WHEN 4.
          RAISE data_incons_in_exit_managem.
        WHEN 5.
          RAISE class_not_implement_interface.
      ENDCASE.
    5. Come Back and Execute the Transaction Code
    6. In the Debugging screen "exit_name" having the BADI Name for that Tcode.

  • How to find out T code wise BADI and userexits

    Hi,
    Is there any standard way of finding out the BADIs and User exits Tcode wise.
    regards,
    Kannan.

    Hi,
    Use the following program to get the T code wise BADI and user exits.
    *& Report  ZSD_FINDEXIT_BADI                                           *
    REPORT  ZUSEREXIT                      .
    TABLES : TSTC,
    TADIR,
    MODSAPT,
    MODACT,
    TRDIR,
    TFDIR,
    ENLFDIR,
    SXS_ATTRT ,
    TSTCT.
    DATA : JTAB LIKE TADIR OCCURS 0 WITH HEADER LINE.
    DATA : FIELD1(30).
    DATA : V_DEVCLASS LIKE TADIR-DEVCLASS.
    PARAMETERS : P_TCODE LIKE TSTC-TCODE,
    P_PGMNA LIKE TSTC-PGMNA .
    DATA wa_tadir type tadir.
    START-OF-SELECTION.
    IF NOT P_TCODE IS INITIAL.
    SELECT SINGLE * FROM TSTC WHERE TCODE EQ P_TCODE.
    ELSEIF NOT P_PGMNA IS INITIAL.
    TSTC-PGMNA = P_PGMNA.
    ENDIF.
    IF SY-SUBRC EQ 0.
    SELECT SINGLE * FROM TADIR
    WHERE PGMID = 'R3TR'
    AND OBJECT = 'PROG'
    AND OBJ_NAME = TSTC-PGMNA.
    MOVE : TADIR-DEVCLASS TO V_DEVCLASS.
    IF SY-SUBRC NE 0.
    SELECT SINGLE * FROM TRDIR
    WHERE NAME = TSTC-PGMNA.
    IF TRDIR-SUBC EQ 'F'.
    SELECT SINGLE * FROM TFDIR
    WHERE PNAME = TSTC-PGMNA.
    SELECT SINGLE * FROM ENLFDIR
    WHERE FUNCNAME = TFDIR-FUNCNAME.
    SELECT SINGLE * FROM TADIR
    WHERE PGMID = 'R3TR'
    AND OBJECT = 'FUGR'
    AND OBJ_NAME EQ ENLFDIR-AREA.
    MOVE : TADIR-DEVCLASS TO V_DEVCLASS.
    ENDIF.
    ENDIF.
    SELECT * FROM TADIR INTO TABLE JTAB
    WHERE PGMID = 'R3TR'
    AND OBJECT in ('SMOD', 'SXSD')
    AND DEVCLASS = V_DEVCLASS.
    SELECT SINGLE * FROM TSTCT
    WHERE SPRSL EQ SY-LANGU
    AND TCODE EQ P_TCODE.
    FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
    WRITE:/(19) 'Transaction Code - ',
    20(20) P_TCODE,
    45(50) TSTCT-TTEXT.
    SKIP.
    IF NOT JTAB[] IS INITIAL.
    WRITE:/(105) SY-ULINE.
    FORMAT COLOR COL_HEADING INTENSIFIED ON.
    Sorting the internal Table
    sort jtab by OBJECT.
    data : wf_txt(60) type c,
    wf_smod type i ,
    wf_badi type i ,
    wf_object2(30) type C.
    clear : wf_smod, wf_badi , wf_object2.
    Get the total SMOD.
    LOOP AT JTAB into wa_tadir.
    at first.
    FORMAT COLOR COL_HEADING INTENSIFIED ON.
    WRITE:/1 SY-VLINE,
    2 'Enhancement/ Business Add-in',
    41 SY-VLINE ,
    42 'Description',
    105 SY-VLINE.
    WRITE:/(105) SY-ULINE.
    endat.
    clear wf_txt.
    at new object.
    if wa_tadir-object = 'SMOD'.
    wf_object2 = 'Enhancement' .
    elseif wa_tadir-object = 'SXSD'.
    wf_object2 = ' Business Add-in'.
    endif.
    FORMAT COLOR COL_GROUP INTENSIFIED ON.
    WRITE:/1 SY-VLINE,
    2 wf_object2,
    105 SY-VLINE.
    endat.
    case wa_tadir-object.
    when 'SMOD'.
    wf_smod = wf_smod + 1.
    SELECT SINGLE MODTEXT into wf_txt
    FROM MODSAPT
    WHERE SPRSL = SY-LANGU
    AND NAME = wa_tadir-OBJ_NAME.
    FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
    when 'SXSD'.
    For BADis
    wf_badi = wf_badi + 1 .
    select single TEXT into wf_txt
    from SXS_ATTRT
    where sprsl = sy-langu
    and EXIT_NAME = wa_tadir-OBJ_NAME.
    FORMAT COLOR COL_NORMAL INTENSIFIED ON.
    endcase.
    WRITE:/1 SY-VLINE,
    2 wa_tadir-OBJ_NAME hotspot on,
    41 SY-VLINE ,
    42 wf_txt,
    105 SY-VLINE.
    AT END OF object.
    write : /(105) sy-ULINE.
    ENDAT.
    ENDLOOP.
    WRITE:/(105) SY-ULINE.
    SKIP.
    FORMAT COLOR COL_TOTAL INTENSIFIED ON.
    WRITE:/ 'No.of Exits:' , wf_smod.
    WRITE:/ 'No.of BADis:' , wf_badi.
    ELSE.
    FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
    WRITE:/(105) 'No userexits or BADis exist'.
    ENDIF.
    ELSE.
    FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
    WRITE:/(105) 'Transaction does not exist'.
    ENDIF.
    AT LINE-SELECTION.
    data : wf_object type tadir-object.
    clear wf_object.
    GET CURSOR FIELD FIELD1.
    CHECK FIELD1(8) EQ 'WA_TADIR'.
    read table jtab with key obj_name = sy-lisel+1(20).
    move jtab-object to wf_object.
    case wf_object.
    when 'SMOD'.
    SET PARAMETER ID 'MON' FIELD SY-LISEL+1(10).
    CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
    when 'SXSD'.
    SET PARAMETER ID 'EXN' FIELD SY-LISEL+1(20).
    CALL TRANSACTION 'SE18' AND SKIP FIRST SCREEN.
    endcase.
    Hope this will help u.
    regards,
    Naidu
    Edited by: KANNAN on Apr 13, 2009 1:44 PM

  • Reg:USEREXITS & IDOCs

    hi gurus,
    can anyone help me out briefly about userexits and idocs by giving an example, and in which type of scenarios we normally use those.
    thanks&regards
    Rajashekar...

    Dear Rajashekar
    Forget to add the links
    <a href="http://help.sap.com/saphelp_46c/helpdata/en/4a/5b75387be80518e10000009b38f889/frameset.htm">User Exits</a>
    <a href="http://help.sap.com/saphelp_46c/helpdata/en/dc/6b828943d711d1893e0000e8323c4f/frameset.htm">IDocs</a>

Maybe you are looking for

  • How can i remove my apple ID account?

    plz help me my email adress is stole by hacker tell me how can i remove it

  • Consuming a CAF Web Service in an automated activity

    Hi I'm trying to import a WSDL that points to a custom service so it can be used within an automated activity within my BPM.  I am importing the WSDL using the Remote Location option and am entering the WSDL.  It then appears to import with no issues

  • Report/ Tool to identify the users sync information in Syclo?

    Hi Experts, Is there any way to identify last sync time of the users/mobile devices.  Is there any report/tool we can use to find this information? When the users need to sync their devices for the changes -- I think after deploying the build to serv

  • Ideacentre A720 - Recover Partition (One Key Recovery) doesn't boot

    My System was without a SSD Drive, but I upgraded it by my own and everything was allright after I cloned the System to the SSD-drive. I keep the "LENOVO_PART" (20gb) on my HDD, and the rest of it was just for Data-storage. 2 Month later Iwanted to c

  • Nokia Asha 202 - not opening a website

    My nokia Asha 202 is not working well. it's not opening this website Happy New Year 2015 Wishes (Quotes | Sms Messages) I tried again and again. also i have reseted my mobile but its not working Moderator's Note: The subject was changed as we have cr