Badi in transaction VF01

Hello
I am looking for a BADI (or user-exit) in transaction VF01, where I can do something AFTER save
(User click on button "save")
Thanks for any help
Daniel
Edited by: Daniel Müller on Aug 16, 2010 9:48 AM

Hi,
  Please check the following link.
Badi/User Exit for VF01
You can find all the possible exits in VF01.
Regards,
Vamsi Krishna

Similar Messages

  • BADI For Transaction VF01

    Hi All,
    I have to trap the erro rlog which is generated in case of error while creating billing document using transaction VF01. That LOG can be viewed by using path EDIT->LOG.
    I debug the code and find out that it fill a structure VBFS in a Function 'RV_INVOICE_CREATE'. If i get the value of VBFS , i can easily trap the message.
    I check with some USER-EXIT, but did not get useful one. Can any one help me to find out any soultion or another approach like BADI. I also try with BADI VOR_WA_FAKTURA but when i put break point in the BADI, it does not stop here.
    PLease let me know, if any one of you know any soultion..
    Thanks
    Piyush

    HI,
    You can find the BADI your self, Check the class CL_EXITHANDLER.
    follow the below steps to find the suitable BADI for your case ..
    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
    if you follow this 7 steps, you will find a suitable BADI.
    and also refer the thread
    Re: MB_MIGO_ITEM_BADI
    Regards
    Sudheer

  • Suitable User-Exit or BAdi for transaction VF01

    Hi
    Is there any User-Exit or BAdi available for Transaction VF01, in which following fields are available.
    Invoice Number -> BELNR
    FI Doc. Type -> BLART
    Inv Date -> BLDAT
    Year -> GJAHR
    Thanks

    the following program are the user exit for billing.
    we often use RV60AFZC and RV60AFZZ.
    RV60AFZA
    RV60AFZB
    RV60AFZC
    RV60AFZD
    RV60AFZZ
    RV60BFZA
    For Sales order
    Pricing, item addtion deletion
    MV45AFZZ
    First, I did not find documentation for the BADI either. But at the first glance the process of implementing it looks quite straightforward. I assume you run R/3 Enterprise (4.7). So, you should implement BADI 'BADI_SD_SALES' - this must be done in transaction SE19. In particular for the purpose of adding some additional items into sales document I would implement method SAVE_DOCUMENT_PREPARE. This method has changing table parameter FXVBAP of type VA_VBAPVB_T - it holds all the sales document items. Just add items of yours to it. Certainly, you have to fill all the appropriate fields carefully.
    Hope this helps somehow.
    In that case you should use USEREXIT_DOCUMENT_SAVE_PREPARE subroutine (form). As far as I remember it has no parameters. To add items to the sales document you should modify internal table XVBAP.
    regards
    vinod

  • BADI in Billing Transaction (VF01)

    Dear All,
    I am new to BADIs Development. And I want to put a BADI in Billing Transaction VF01. My users want some extra fields for putting the data. So please guide me how can I do that.
    Regards,
    Vishal

    Hi vishal
    if u specify exact fields and requirements , i think more forum memebers can guide u.
    take help of technical consultant for finding out exact BADI  in applicable abap code u can use t.code SE17 and Se18 for the same.
    a generic info for you is from sap help check this if it helps
    Enhancement of Tables of Billing Document  
    Use
    For all components of the billing document there are customer includes that you can use to add your own fields without the need for modifications.
    Features
    All layers use the same customer includes. This means that, for example, when you include a field in the customer include of the document header, this field exists in the database layer, the logical layer, and the display layer. You cannot enhance the structures of the inbound interface of BAPI_ISTBILLDOC_CREATEMULTIPLE using customer includes. In accordance with the guidelines for programming BAPIs, you have to use the import table EXTENSIONIN to fill the fields in the customer include of the billing document.
    For technical reasons, there are two customer includes in the components of the billing document. One customer include is designed for fields of a character nature that can be transferred automatically. The transfer is supported by predefined BAPI table enhancements. If you use this predefined BAPI table enhancement when you fill table EXTENSIONIN, the fields in the customer include are provided with data automatically. You do not need a BAdI implementation. For more information, see the section  Customer Enhancement and Modification of BAPIs (CA-BFA) in the documentation for SAP NetWeaver under Cross-Services ® Further Development, Modifications, u2026 (CA-BFA).
    The predefined BAPI table enhancements also include the above-mentioned customer includes. The following table shows the names of the BAPI table enhancements and customer includes:
    Part     BAPI Table Enhancement     Customer Include
    Header     BAPI_TE_FKKINVBILL_H     CI_FKKINVBILL_H
    Items     BAPI_TE_FKKINVBILL_I     CI_FKKINVBILL_I
    Tax Items     BAPI_TE_FKKINVBILL_T     CI_FKKINVBILL_T
    Additional Items     BAPI_TE_FKKINVBILL_A     CI_FKKINVBILL_A
    A further customer include is designed for customer-defined fields that are not of a character nature or required for mapping. An example is additional currency fields. For these fields you have to implement a method of the BAdI ISTINV_BAPIBILL. The following table shows the names of the customer includes and the related methods that you have to implement for the transfer of the data:
    Part     BAdI Method     Customer Include
    Header     MAP_HEADER     CI_M_FKKINVBILL_H
    Items     MAP_ITEM     CI_M_FKKINVBILL_I          
    Tax Items     MAP_TAXITEM     CI_M_FKKINVBILL_T          
    Additional Items     MAP_ADDITEM     CI_M_FKKINVBILL_A
    The following figure shows how you can use the EXTENSION table to fill customer-defined fields:
           1.      The standard SAP fields are provided with data automatically. This means, for example, that the values of the structure HEADERS are transferred to the standard fields of the structure FKKINVBILL_H. Usually no BAdI implementation is required.
           2.      Use the customer include CI_FKKINVBILL_H for customer-defined character fields whose value is to be transferred from the interface to the billing document header unchanged. This include is also included in the BAPI table enhancement BAPI_TE_FKKINVBILL_H. Entries in table EXTENSIONIN that refer to this structure are processed automatically. A BAdI implementation is not required. However, we recommend BAdI implementation for checking. In the same way, you can add character fields to other parts of the billing document and provide them with data.
           3.      If you want to add a numerical field to the billing document header, you have to use the customer include CI_M_FKKINVBILL_H. Also define a BAPI table enhancement. We recommend that you only use character fields in the BAPI table enhancement. Implement method MAP_HEADER of the BAdI ISTINV_BILL. Use your BAPI table enhancement to identify the corresponding entries in table EXTENSIONIN in the method. Convert the character field from your BAPI table enhancement into the numerical field from the customer include CI_M_FKKINVBILL_H. In the same way, you can add numerical fields to other parts of the billing document and provide them with data.
           4.      You can also use the EXTENSIONIN table to provide a customer-defined table with values.
    Regards
    Mandar

  • Urgent--When will trigger this Badi:SD_CIN_LV60AU02 in vf01 Transaction.

    Hi Experts ,
      Please tell me When will trigger this Badi:SD_CIN_LV60AU02 in vf01 Transaction.
    Regards
    Pratap.M

    Hi,
    Create an implementation for the badi and put a break-point inside it. The system will break at that point if the badi triggers.
    Regards,
    Renjith Michael.

  • Transaction VF01

    Hi,
    I was looking for an user exit or a way to implement the following:
    I need to call an own transaction once we click the save button in the transaction vf01, I found a user exit but before the save =( and I need it after the save button in order to display the new transaction an populate a field with the just created document number.

    Hi
    Kindly check the following thread:
    How to find user exits for a transaction
    It has an ABAP code that displays the list of userexits & BADIs available for a Transaction.
    you can select the userexit from the list according to your requirement.
    Kindly reward points if it helps!
    best regards,
    Thangesh

  • Any Userexit & BADI for transaction VB(7 during final settlement

    Hi SAP GURUS,
    I have checked no user exit and BADI. Any Userexit & BADI for transaction VB(7 during final settlement. During final settlement of rebate, I have to change the amount from KONP table in transaction VB(7 . Let me know the userexit and BADI.
    Regards,
    Karthik.

    Hi Sekhar,
    These following BADI are not capturing KONP item details.
    I want to capture KONP item details to modify amount.
    ARC_SD_COND_CHECK : Archiving Object SD_COND: Additional Checks
    ARC_SD_COND_WRITE : Archiving Object SD_COND: Archive Additional Data
    SD_COND_SAVE_A : Save condition application A, E
    Regards,
    Karthik.

  • Any BAPI for Transaction VF01??

    Hi Experts ,
    Is there any Bapi for transaction VF01.
    If it is then plz. do help me to use that one with coding .
    Regards,
    Rahul

    Hi,
    Check this sample code of creating the billing document using the bapi BAPI_BILLINGDOC_CREATEMULTIPLE.
    DATA: t_success TYPE STANDARD TABLE OF bapivbrksuccess WITH HEADER LINE.
    DATA: t_billing TYPE STANDARD TABLE OF bapivbrk WITH HEADER LINE.
    DATA: t_return TYPE STANDARD TABLE OF bapireturn1 WITH HEADER LINE.
    t_billing-salesorg = vbak-vkorg.
    t_billing-DISTR_CHAN = vbak-vtweg.
    t_billing-DIVISION = vbak-spart.
    t_billing-DOC_TYPE = vbak-auart.
    t_billing-ref_doc = vbak-vbeln.
    t_billing-ref_item = vbap-posnr.
    t_billing-doc_number = vbak-vbeln.
    t_billing-ITM_NUMBER = vbap-posnr.
    t_billing-ordbilltyp = 'BILLING TYPE'.
    t_billing-price_date = sy-datum.
    t_billing-ref_doc_ca = vbak-vbtyp.
    t_billing-sold_to = vbak-kunnr.
    t_billing-material = vbap-matnr.
    t_billing-plant = vbap-werks.
    APPEND t_billing.
    CALL FUNCTION 'BAPI_BILLINGDOC_CREATEMULTIPLE'
    TABLES
    billingdatain = t_billing
    return = t_return
    success = t_success.
    commit work.
    <b>Reward points</b>
    Regards

  • User Exit or BADI for transaction ME54N

    Hello,
    Does anyone know an exit or BADI in transaction ME54N after user click on save button?
    I am in SAP RELEASE 4.7
    I already executed the report to search exits and I already tried to find something in transaction SMOD and SE18.

    Hi,
    The user exit available for ME54N is <b>'MEREQ001'</b>. see if it help you.
    Pratik

  • User exit or badi for transaction IW32

    Hi all,
    I am searching for user exit or badi for Transaction IW32 but not finding as per my requirement.here in transaction IW32 if field system status(STTXT) key value is 'Released', all line item components should get displayed in display mode.it should not allow to edit or change line item components.can anyone give user exit or BADI to achieve this.
    Thanks in advance.
    Regards,
    Harshada

    Hi,
    Try to use this exit:
    Enhancement     EXIT_SAPLBSVA_001     STATTEXT     Modification exit for formatting status text lines     
    Sample code:
    IF ( sy-tcode = 'IW32') .
      DATA: lv_str1   TYPE string.
      FIELD-SYMBOLS : <fs_qmart> TYPE ANY.
      lv_str1 = '(SAPLIQS0)VIQMEL-objnr'.
      ASSIGN (lv_str1) TO <fs_objnr>.
      SELECT SINGLE inact INTO lv_inact FROM jest WHERE  objnr = viqmel-objnr
                                                     AND   stat = c_stat
                                                     AND  inact = space.
        IF sy-subrc = 0.
          LOOP AT SCREEN.
              screen-input = 0.
              MODIFY SCREEN.
            ENDIF.
          ENDLOOP.
    ENDIF.
    Alternativ badi:
    BADI     SAPLIQS0          IQS0_STATUS_MAINTAIN     Control of Changeability of User Status     
    I hope this may helpfull.
    Thanks,
    AMS

  • User exit / badi for transaction appcreate

    Hi,
      Can nyone help me in getting user exit / badi for transaction appcreate .
    Cheers
    kamlesh

    Hi Kamlesh,
    Try below code to know the userexits for the given trxn code.
    Regards,
    Raj
    *& Report  ZTESTRAJ_USEREXITS
    REPORT  ztestraj_userexits
            NO STANDARD PAGE HEADING
            LINE-SIZE 200
            MESSAGE-ID zz.
           T A B L E    D E C L A R A T I O N S                          *
    TABLES: tftit,
            e071,
            e070.
                  S T R U C T U R E  D E C L A R A T I O N S             *
    TYPES: BEGIN OF x_tstc,
            tcode TYPE tcode,
            pgmna TYPE program_id,
           END OF x_tstc.
    TYPES: BEGIN OF x_tadir,
            obj_name TYPE  sobj_name,
            devclass TYPE devclass,
           END OF x_tadir.
    TYPES: BEGIN OF x_slog,
            obj_name TYPE sobj_name,
           END OF x_slog.
    TYPES: BEGIN OF x_final,
            name TYPE smodname,
            member TYPE modmember,
            include(15),            "Include name
           END OF x_final.
           I N T E R N A L    T A B L E    D E C L A R A T I O N S       *
    DATA: it_tstc  TYPE STANDARD TABLE OF x_tstc  WITH HEADER LINE.
    DATA: it_tadir TYPE STANDARD TABLE OF x_tadir WITH HEADER LINE.
    DATA: it_jtab  TYPE STANDARD TABLE OF x_slog  WITH HEADER LINE.
    DATA: it_final TYPE STANDARD TABLE OF x_final WITH HEADER LINE.
               V A R I A B L E S      D E C L A R A T I O N S            *
                    U S E R   I N P U T S   S C R E E N                  *
                      S E L E C T I O N    S C R E E N                   *
    SELECTION-SCREEN:  BEGIN OF BLOCK blk01 WITH FRAME TITLE text-t01.
    PARAMETERS: p_tcode LIKE tstc-tcode OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK blk01.
                    S t a r t    o f    S e l e c t i o n                *
    START-OF-SELECTION.
      PERFORM get_tcodes.  "Get Tcodes
      PERFORM get_objects. "Get Objects
                    E n d    o f    S e l e c t i o n                    *
    END-OF-SELECTION.
      PERFORM display_results. "Display Results
    *&      Form  get_tcodes
          Get Tcodes
    FORM get_tcodes.
      SELECT tcode
             pgmna
         INTO TABLE it_tstc
         FROM tstc
         WHERE tcode = p_tcode.
      IF sy-subrc = 0.
        SORT it_tstc BY tcode.
      ENDIF.
    ENDFORM.                    " get_tcodes
    *&      Form  get_objects
          Get Objects
    FORM get_objects.
      DATA: l_fname LIKE rs38l-name,
            l_group LIKE rs38l-area,
            l_include LIKE rs38l-include,
            l_namespace LIKE rs38l-namespace,
            l_str_area LIKE rs38l-str_area.
      DATA: v_include LIKE rodiobj-iobjnm.
      DATA: e_t_include TYPE STANDARD TABLE OF abapsource WITH HEADER LINE.
      DATA: l_line TYPE string,
            l_tabix LIKE sy-tabix.
      IF NOT it_tstc[] IS INITIAL.
        SELECT obj_name
               devclass
            INTO TABLE it_tadir
            FROM tadir FOR ALL ENTRIES IN it_tstc
            WHERE pgmid = 'R3TR' AND
                  object = 'PROG' AND
                  obj_name = it_tstc-pgmna.
        IF sy-subrc = 0.
          SORT it_tadir BY obj_name devclass.
          SELECT obj_name
            INTO TABLE it_jtab
            FROM tadir FOR ALL ENTRIES IN it_tadir
            WHERE pgmid = 'R3TR' AND
                  object = 'SMOD' AND
                  devclass = it_tadir-devclass.
          IF sy-subrc = 0.
            SORT it_jtab BY obj_name.
          ENDIF.
        ENDIF.
      ENDIF.
    *- Get UserExit names
      LOOP AT it_jtab.
        SELECT name
               member
           INTO (it_final-name, it_final-member)
           FROM modsap
           WHERE name = it_jtab-obj_name AND
                 typ  = 'E'.
          APPEND it_final.
          CLEAR  it_final.
        ENDSELECT.
      ENDLOOP.
    *- Process it_final contents.
      LOOP AT it_final.
        l_tabix = sy-tabix.
        CLEAR: l_fname,
             l_group,
             l_include,
             l_namespace,
             l_str_area.
        l_fname = it_final-member.
        CALL FUNCTION 'FUNCTION_EXISTS'
          EXPORTING
            funcname           = l_fname
          IMPORTING
            group              = l_group
            include            = l_include
            namespace          = l_namespace
            str_area           = l_str_area
          EXCEPTIONS
            function_not_exist = 1
            OTHERS             = 2.
        IF sy-subrc = 0.
          IF NOT l_include IS INITIAL.
    *- Get Source code of include.
            CLEAR: v_include, e_t_include, e_t_include[].
            v_include = l_include.
            CALL FUNCTION 'MU_INCLUDE_GET'
              EXPORTING
                i_include   = v_include
              TABLES
                e_t_include = e_t_include.
            IF sy-subrc = 0.
              LOOP AT e_t_include.
                IF e_t_include-line CS 'INCLUDE'.
                  CLEAR l_line.
                  l_line = e_t_include-line.
                  CONDENSE l_line NO-GAPS.
                  TRANSLATE l_line USING '. '.
                  l_line = l_line+7(9).
                  it_final-include = l_line.
                  MODIFY it_final INDEX l_tabix TRANSPORTING include.
                ENDIF.
              ENDLOOP.
            ENDIF.
          ENDIF.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " get_objects
    *&      Form  display_results
          Display Results
    FORM display_results.
      FORMAT COLOR COL_HEADING.
      WRITE:/1(150) sy-uline.
      WRITE:/ sy-vline,
            2(23) 'Extension Name',
            24 sy-vline,
            25(39) 'Exit Name',
            64 sy-vline,
            65(74) 'Description',
            140 sy-vline,
            141(9) 'Include',
            150 sy-vline.
      WRITE:/1(150) sy-uline.
      FORMAT RESET.
      SORT it_final BY name member.
      LOOP AT it_final.
        CLEAR tftit.
        SELECT SINGLE  stext
          INTO tftit-stext
          FROM tftit
          WHERE spras = 'EN' AND
                funcname = it_final-member.
        WRITE:/ sy-vline,
                it_final-name COLOR COL_KEY, 24 sy-vline,
                25 it_final-member, 64 sy-vline,
                65 tftit-stext, 140 sy-vline,
                141 it_final-include, 150 sy-vline.
        WRITE:/1(150) sy-uline.
      ENDLOOP.
    ENDFORM.                    " display_results

  • User exit or BADI in transaction code WAK2

    Hi All,
      I have a requirement to implement a user exit or badi on transaction code WAK2 or WAK1. On click of SAVE button after entring sales price in  price planning tab . I need user exit or badi's after clicking save. I got three user exits 1. call customer-function '001' 2. Call customer-function '002' 3. Form badi_matnr_check_init 4. call method g_badi_matnr_input_002 but none of them deel with sales price field.
    Thanks and Regards,
    Asif

    Hi friend,
    Try this ampliation at CMOD:
    WCOUP001
    Try this BADI:
    RDM_PROMOTION_WAK1
    Regards,
    Welinton Rocha

  • BADI for transaction IW51

    Hi frnds,
    Please suggest BADI for transaction IW51.
    Regards,
    Mehul.

    Hi Shah,
    In addition to the above answer I will give you the piece of code
    just paste in and execute it. You will be getting the list of exits and BADI's available for that particular Tcode.
    REPORT  ZSWAMY_BADI_FINDING.
    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.
    do 2 times.
    enddo.
    Reward points if useful.
    Cheers,
    Swamy Kunche

  • To find out appropriate user exit/ badi for transaction VT01n

    Hi,
       I have the following requirement.
    Cass shipment type (VTTK-ADD03) field needs to be required and should be automatically populated upon creation of the shipment document.  The rules for populating the value (SO, ST, PO and RA) are as follows:
    If any of the orders on the shipment are customer order types, then the CASS shipment type should be a SO,
    If all of the orders are STO orders, then the Cass shipment type should be "ST",
    If all of the orders are PO orders, then the Cass shipment type should be "PO" , and
    If all of the orders are customer return orders, then the Cass shipment type should be "RA".
    I have to find out proper user exit / badi to do this.I have tried with many userexit but it won't work.
       Thanking in advance to give your suggestion in order to resolve it.
    With regards,
    Ajit.

    Hi this code will enable you to find the user exit for any transaction . Just give the transaction as input
    tables : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir.
             tables : 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 obligatory.
    select single * from tstc where tcode eq p_tcode.
    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 = 'SMOD'
                           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:/(95) sy-uline.
               format color col_heading intensified on.
               write:/1 sy-vline,
                      2 'Exit Name',
                     21 sy-vline ,
                     22 'Description',
                     95 sy-vline.
               write:/(95) sy-uline.
               loop at jtab.
                  select single * from modsapt
                         where sprsl = sy-langu and
                                name = jtab-obj_name.
                       format color col_normal intensified off.
                       write:/1 sy-vline,
                              2 jtab-obj_name hotspot on,
                             21 sy-vline ,
                             22 modsapt-modtext,
                             95 sy-vline.
               endloop.
               write:/(95) sy-uline.
               describe table jtab.
               skip.
               format color col_total intensified on.
               write:/ 'No of Exits:' , sy-tfill.
            else.
               format color col_negative intensified on.
               write:/(95) 'No User Exit exists'.
            endif.
          else.
              format color col_negative intensified on.
              write:/(95) 'Transaction Code Does Not Exist'.
          endif.
    at line-selection.
       get cursor field field1.
       check field1(4) eq 'JTAB'.
       set parameter id 'MON' field sy-lisel+1(10).
       call transaction 'SMOD' and skip first   screen.
    *---End of Program
    Just for your information the User exits available for VT01n are
    MV56AINI            Initialization of transaction control for transportation          
    V56AFCCH            Shipment processing: Check function code allowed                  
    V56AGTAR            User Exit for Filtering Shipping Unit Calculation                 
    V56ARCHV            Customer-spec. checks for archiving shipments                     
    V56ATKTX            Change the number of lines for text input in shipment             
    V56BMOD             Transportation processing: Field modification                     
    V56DISTZ            Shipment Processing: Determine Distance                           
    V56FCOPY            Shipment processing: Copy delivery data                           
    V56FSTAT            Shipment processing: Activities when setting a status             
    V56L0001            Status of Shipments for a Delivery                                
    V56LDELI            Read Delivery Data for Shipment Processing                        
    V56LOCID            Shipment Processing: Determine Location Identification            
    V56MVT04            Extensions for Collective Processing of Shipments                 
    V56SLDET            Shipment processing: Leg determination                            
    V56TDLIF            Filter Delivery Items for Shipment                                
    V56UCHCH            Shipment processing: Check whether changes were made              
    V56UCHCO            Check shipments are complete                                      
    V56UDLUP            Obsolete as of 4.6C: Delivery Update on Delivery Routines         
    V56UNUMB            Shipment number allocation                                        
    V56USTAT            User-individual definition of transportation planning status      
    V56USVDO            Update new objects for transport                                  
    V56USVDP            Preparation for updating new objects for transport?               
    Award points if helpful..
    Thanks

  • BADI in transaction BP

    Hi All,
    I need to check for certain data changes before saving a business partner using transaction BP in CRM. If there are any unwanted changes I need to throw an error and should not allow to change the business partner using transaction BP.
    For this purpose I found BADI BUPA_FURTHER_CHECKS and implemented the BADI method  CHECK_CENTRAL. I have put a break-point in the method but it doesn't stop.
    I have activated the implementation of  the method and BADI but still doesn't work.
    Has anyone successfully implemented this BADI? or is there is any other BADI to solve my problem?
    Please let me know if anyone has answers.
    Points will be rewarded.
    Thanks in advance.
    Sonali.

    hi sonali
    this is the normal problem faced with the BADI which u r using,yeah it will definitelty give u solution but some ifs and buts are there
    just refer the note 663905
    also try using BAdi COM_PARTNER_BADI
    but i should tell you that
    COM_PARTNER_BADI is for business transactions, not for BP creates/changes. BUPA_FURTHER_CHECKS is usable for customer checks and it provides all of the customer information in the BADI interface, but it's only called by the BP BAPIs, not by the BP transaction.
    For BP updates at create/change save time, the BUPA_UPDATE BADIs need to be used. The interface only provides the GUID of the not yet created BP or the GUID of the changed BP, not a bunch of parameters that you can change before save. However, you can call the BUPA_CALLBACK series of function modules to get the info you need about the BP, and use a field symbol to directly access the data in the memory stack i.e., (SAPLBUD0)MEM_BUT000[] and change the values. I am using this technique to add an authorization group to certain BP type at create save time.
    best regards
    ashish

Maybe you are looking for

  • Problem with multiple sub-panels through Enum case structure: "The VI is not in a state compatible with this operation"

    Hello, I am using LabVIEW 8.0 and I am attempting to create a sub-panel that displays the front panel of a sub-vi depending on the selection made by the user via the Enum dropdown menu.  I have wired the Enum to a case structure and applied identical

  • Can I change the word "permalink" in "Blog Post List Layout"

    What I actually am trying to achieve is a "read more" button that I can style. The only tag I found is the {tag_permalink}. I can put this in a div for styling. But it results in a button with the word "Permalink" which is confusing. Now I am looking

  • VBA save as using information bar - download ribbon in IE11

    Hi everyone.. I am using IE11 and Excel 2010. I am writing a code to download csv files from a website and to work with the downloaded data. Till now I have coded the part to select options on the webpage form and click on the download report button.

  • Value Limit in Service Line

    Hi All, While doing a service order and entering the item in service line with a total value of more than 100 crores  I am getting a error message no.SE370 that Value of line exceed allowed value limit.But I did not find the message SE370 in the attr

  • By Year starting in 2010

    I use the following Code for Year at a time, in this case data pulled will be for year 2013: (yourdatecolumn >= DATEADD(yy,DATEDIFF(yy,0,GETDATE())-1,0) AND yourdatecolumn < DATEADD(yy,DATEDIFF(yy,0,GETDATE()),0)) But, it's friday and for the life of