Enhancing tcode VC/2

Hello All,
I need to enhance tcode VC/2 so that it may display my custom info block. I got info that using OCVF i could add my own routines. But I am unable to do so. Could you please help
Regards,
Vinod Gilbert

Dear,
Thank You for the reply.
In VC/2 there is Quick Info Details, where there are below two details displayed,
Orders blocked for delivery       0
Orders blocked for billing          0
When I excute VKM1 for the same customer, I get display of the blocked Sales Order.
In VC/2, do not get the number of blocked doc displayed in Quick info,
Need some reason why it is not getting displayed?
What are these details available for ?
BR,
Vinayak

Similar Messages

  • Enhancing TCode : SDO1

    Hi Peers,
    I have a requirement of enhancing the Tcode SDO1(Std Report transaction) .
    When we run this transaction after we specify the inputs such as Document Type, Created Date, Created by.. we get a list of Sales Document records.
    After the user selects a set of records, then goto  : EDIT-->Mass Change -->New pricing , the system pops asking for New pricing and updates the pricing.
    Here , <b>for the Selected no.of records , the pricing date must be replaced with Current Date in the Database tables eg: VBKD .</b>(This is the exactly what I have to do).
    Valuable suggestions will be rewarded well.
    Thanks in Advance,
    Regards,
    Daniel

    The Function Module  where exactly this Updation of Pricing Condition is happening is : SD_BULK_CHANGE  at Case:' MRPX'  line 73.
    Regards,
    Daniel

  • Enhancing Tcode PA30

    Hi all
    Can I add a custom field in PA30 tcode to capture some information in that custom field.
    Urgent please...
    Thanks in advance
    Sonali

    try/check this
    http://www.sapdevelopment.co.uk/enhance/uexits/uexits_imp.htm
    Regards
    Prabhu

  • Enhancement TCode S_ALR_87012082 !!

    Dear Friends,
    We have a requirement to add a field Business Place (BUPLA) on the Selection Screen.
    TCode - S_ALR_87012082, Program Name - RFKSLD00
    I have copied this program, Please suggest me for the same soon.
    Regards,
    Nitin Garg
    Moderator Message: Duplicate post. Thread locked.
    Edited by: Suhas Saha on Oct 19, 2011 2:18 PM

    Hii Madhurao,
    okay Please give brief idea how can i add Business Place(BUPLA) in the standard program on the selection screen..
    Nitin Garg

  • List of open sales order deliveries

    Hi Gurus
    I'm trying to fetch the list of open sales order relevant deliveries in the system. Is there any standard report to fetch the same?
    In the current requirement, we have tried the below logic:
    Join table VLPMA & VBUK at VBELN
    VLPMA u2013 Pass MATNR(Material) & LFART(Delivery Type) and fetch VBELN values
    VBUK u2013 VBELN values from above with WBSTK(Goods Movement status) Not Equal to C {open deliveries}
    LIPS u2013 Pass VBELN from above and MATNR & WERKS to fetch open sales order relevant deliveries for a material in a plant.
    The above logic takes a lot of time to execute and hence the report has performance issue. Is there any other means to link the multiple fields in the Deliveries to fetch, only sales order deliveries that are still open?
    Regards
    Deepak Prasanna S

    Hi
    You can also enhance tcode VA05 and create your variants to filter these SO. See these notes
    SAP Note 37871 - List display of open sales documents
    SAP Note 350068 - Additionl fields in VA05:Customer material number as example
    So, you'd have a list with the pending orders.
    I hope this helps you
    Regards
    Eduardo
    Edited by: E_Hinojosa on Mar 6, 2012 10:01 AM

  • Additional Output fields for ME2N?

    We have created a Z field which exists on the item level of our POs (table EKPO). It is available in the search criteria of our ME2N report, but not in the output. Does anyone know of a way to add additional fields to the output of ME2N? Thanks so much.
    Jim

    Lot of thanks Ken G, I follow your code and solved the same problem.
    1st I add custom field YYJ_4KSCAT in structure MEREP_OUTTAB_PURCHDOC
    then do that enhancement:
    Tcode: ME2N/ME2W/...
    program: LMEREPI02
    Method: if_reader_mm~read_table
    Code:
    ENHANCEMENT 1  ZME2W_CUSTOM_FIELDS.    "active version
       FIELD-SYMBOLS: <ZZ_CUSTOM> TYPE MEREP_OUTTAB_PURCHDOC.
       DATA: idx TYPE sy-tabix.
       IF my_struct_name EQ 'MEREP_OUTTAB_PURCHDOC'.
         LOOP AT <OUTTAB> ASSIGNING <ZZ_CUSTOM>.
           idx = sy-tabix.
           READ TABLE <ekko> into ls_ekko WITH KEY  ebeln = <ZZ_CUSTOM>-ebeln.
           clear lt_ekpo[].
           my_any_ekpo->read_lines( exporting im_key   = ls_ekko-ebeln
                                    importing ex_table = lt_ekpo ).
           READ TABLE lt_ekpo into ls_ekpo WITH KEY  ebeln = <ZZ_CUSTOM>-ebeln
                                                     ebelp = <ZZ_CUSTOM>-ebelp.
             <ZZ_CUSTOM>-YYJ_4KSCAT = ls_ekpo-j_4kscat.
             MODIFY <OUTTAB> FROM <ZZ_CUSTOM> INDEX idx .
         ENDLOOP.
       ENDIF.
    ENDENHANCEMENT.

  • Settings for invoice block

    Dear Experts,
    Whenever i post invoice w.r.to purchase order, that invoice is getting blocked for payment for all the invoices. I have checked in OMR6, but i don't know where i should correct it. Kindly guide me.
    Regards,
    Prasath

    Hi,
    Check if you have enhancements (tcode CMOD) or BADI's (tcode SE19) that lock the payment.
    Check MRM_PAYMENT_TERMS for the field ZLSPR.
    I hope this helps you
    Regards,
    Eduardo

  • Infotype 21

    hi
    In the infotype 21 i want to do come changes like for islam(male) religion people spouce can be max 4 number and non-islam(male) max 1.
    how can i do this is there any user exit for this infotype of is there any dynmic actions if so please send me complete details.
    regards
    lakshmikanth

    Hi venkat,
    1.PBAS0001
      use the above enhancement(tcode smod)
    2.  in that there is component/fm,
         EXIT_SAPFP50M_002
    3. use this to do checks.
    regards,
    amit m.

  • BDLS in BI 7.0 / NW04s

    Hi Gurus,
    Has anybody ran t-code BDLS against BI 7.0 datasources?  Does BDLS operate the same changing the transformations as it did with transfer rules BW <= 3.5?
    My scenario is I need to pull data from our R/3 test system (R3TClnt100), instead of our R/3 Dev (R3DClnt100) system.  We've mapped all transformations already to extract from BI 7.0 datasource extracting from R3DClnt100.  Will BDLS work for this scenario?
    Kind Regards,
    Alex

    it seems there is now an enhanced tcode BDLSS..
    see below link..
    http://help.sap.com/saphelp_nw2004s/helpdata/en/33/c823dbaea911d6b29500508b6b8a93/content.htm
    also see below thread..where I had experienced same problem..though not in BI 7.0..
    Fresh source system clients in production BW system
    Vishvesh

  • Help BADI ME_PROCESS_PO_CUST !?!?

    Hi Friends,
    I've created an implementation for BADI ME_PROCESS_PO_CUST to enhance TCode ME21n. I use method CHECK to check line item but I don't know how to collect the message error if any wrong data exists in that line item.
    My message(s) will be collected as the original program do i.e :
       Typ | Message text                                        |
    |----
    |                             
    Item 20 Sched.line 1
         w  | Can delivery date be met?                      |
    When you chose that line above, program will bring you to the screen field that have wrong value.
    Any one can help me collect the message(s)? Please!
    Thanks,
    Gy

    Check if it's useful  
    DATA : lt_items TYPE purchase_order_items ,
             ls_item TYPE purchase_order_item,
    CALL METHOD im_item->get_data
          RECEIVING
            re_data = lt_item.
    give the condition for the  Error message 
       mmpur_metafield mmmfd_cust_01  .
        mmpur_message_forced 'E' 'ME' '083' text-003 '' '' ''.
       LOOP AT lt_items INTO ls_item.
          CALL METHOD ls_item-item->invalidate( ).
        ENDLOOP .

  • Enhance screen for tcode FCH9

    I need to enhance the screen for tcode FCH9 to add more void reason. I do not want the check to be voided though. Is there is a user exit to enhance this screen or will have to create a custom transaction for this.

    Hi,
    there are no screen exits or BADIs which you can use to enhance SU01. So the only way how to do it is using enhancement framework and direct modifications of SAP programs.
    Cheers

  • BADI enhancement for Enjoy PO Tcodes at "header level".

    I could successfully add an item level tab to MEXXN PO tcodes. Somebody help me with the ME_GUI_PO_CUST and ME_PROCESS_PO implementations to add a customer field , say ZZ_ETYP in a separate header level tab "Expense type".
    Do I need to add subscreen2 attribute to the implementing class ?
    Will one structure do for both header and item level data ?
    Do I need to create a separate table ( like ZMEPO_BADI_EXAMPL for items ) for the header also ?
    It would be gr8 if i could get the code for the above BADIs and MEPOBADIEX's function modules.

    Dear Iyer,
    Kindly go through the code.. hope this will help you...
    <b>DETAILED DATABASE DESIGN SPECIFICATIONS</b>
    <b>1. ZTPTP_HEADER</b>
    Header: Expense Type
    Field Name     Field Type     Key Information     Field Description
    MANDT     MANDT     X     Client
    EBELN     EBELN     X     Purchasing Document Number
    ZZ_EXPTYPE     ZZEXPTYPE          Expense Type
    <b>2. ZTPTP_ITEM</b>
    Item: Retainage
    Field Name     Field Type     Key Information     Field Description
    MANDT     MANDT     X     Client
    EBELN     EBELN     X     Purchasing Document Number
    EBELP     EBELP     X     Item Number of Purchasing Document
    ZZ_RETAINAGE      ZZRETAINAGE           Retainage
    <b>3. ZSPTP_HEADER</b>
    PO Enhancement structure: Header
    Field Name     Field Type     Key Information     Field Description
    EBELN     EBELN          Purchasing Document Number
    ZZ_EXPTYPE     ZZEXPTYPE          Expense Type
    <b>4. ZSPTP_ITEM</b>
    PO Enhancement structure: Item
    Field Name     Field Type     Key Information     Field Description
    EBELN     EBELN          Purchasing Document Number
    EBELP     EBELP          Item Number of Purchasing Document
    ZZ_RETAINAGE      ZZRETAINAGE           Retainage
    Detailed logic
    <b>LZPTP_PORETAINAGETOP (TOP INCLUDE) FG: ZPTP_PORETAINAGE</b>
    persistent item data
    data: git_persistent_data type sorted table of ztptp_item
                             with unique key mandt ebeln ebelp,
    actual item data
          git_data            type sorted table of ztptp_item
                             with unique key mandt ebeln ebelp.
    persistent header data
    data: git_persistent_head type sorted table of ztptp_header
                             with unique key mandt ebeln ,
    actual header data
          git_head            type sorted table of ztptp_header
                             with unique key mandt ebeln .
    dynpro output structure
    tables: zsptp_item,
            zsptp_header.
    definitions required for dynpro/framework integration
    data: ok-code type sy-ucomm.
    Following is a SAP include.
    include lmeviewsf01.
    <b>1. ZPTP_COMMIT_HEADER FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_COMMIT. In this Function module we update the database table ZTPTP_HEADER i.e. as per a change / insert or delete command at the header level. This database table’s size will always be low. It just contains the PO s data just being edited or created.
    The interface would look like:
         TABLES
          IMT_DATA_NEWHD STRUCTURE ZTPTP_HEADER
          IMT_DATA_OLDHD STRUCTURE ZTPTP_HEADER
          Comparing the old and new data we update 3 different internal tables and using these we can update the internal tables ZTPTP_HEADER before actually updating the database table EKKO.A similar logic is coded in the sample FM : MEPOBADIEX_COMMIT
    <b>
    2. ZPTP_COMMIT_ITEM FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_COMMIT. In this Function module we update the database table ZTPTP_HEADER i.e. as per a change / insert or delete command at the item level. This database table’s size will always be low. It just contains the PO s latest data just being edited or created.
    The interface would look like :
         TABLES
           IMT_DATA_NEW STRUCTURE  ZTPTP_ITEM
      IMT_DATA_OLD STRUCTURE  ZTPTP_ITEM
          Comparing the old and new data we update 3 different internal tables and using these we can update the internal tables ZTPTP_HEADER before actually updating the database table EKPO. A similar logic is coded in the sample FM : MEPOBADIEX_COMMIT
    <b>3. ZPTP_GET_DATA_HEADER FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_GET_DATA. This FM is responsible for updating an internal table (git_head) which would hold the data the user has changed or created or displayed till the current point of time. It would also hold the latest customer header data that is to be displayed in case of a change transaction.
    The interface would be as follows:
    Local Interface:
    IMPORTING
         REFERENCE(IM_EBELN) TYPE  EBELN
         REFERENCE(IM_EBELP) TYPE  EBELP OPTIONAL
    EXPORTING
         REFERENCE(EX_HEAD) TYPE  ZTPTP_HEADER
    Read expense type from git_header. If not found, get expense value from EKKO.
    <b>4. ZPTP_GET_DATA_ITEM FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_GET_DATA. This FM is responsible for updating an internal table (git_data) which would hold the data the user has changed or created or displayed till the current point of time. It would also hold the latest customer item data that is to be displayed in case of a change transaction.
    The interface would be as follows:
    Local Interface:
      IMPORTING
         REFERENCE(IM_EBELN) TYPE  EBELN
         REFERENCE(IM_EBELP) TYPE  EBELP
      EXPORTING
         VALUE(EX_DATA) TYPE  ZTPTP_ITEM
    Read Retainage from git_data. If not found, get Retainage value from EKPO.
    <b>5.  ZPTP_INIT FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_INIT. This FM is responsible for clearing the header and item internal tables.
    clear: git_persistent_data[], git_data[],git_persistent_head[],git_head[].
    <b>6. ZPTP_OPEN FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_OPEN.  This FM is responsible for existing information from respective database tables.
    The interface would be as follows:
    Local Interface:
    IMPORTING
    REFERENCE(IM_EBELN) TYPE  EBELN
    Get Expense type and Retainage from customer created Tables and assign it to respective global internal tables.
    <b>7.  ZPTP_POP_HEADER FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_POP. This FM is responsible for getting header values from screen fields.
    The interface would be as follows:
    Local Interface:
    EXPORTING
       REFERENCE(EX_DYNP_DATAHD) TYPE  ZSPTP_HEADER
    get dynpro data
      ex_dynp_datahd = zsptp_header.
    <b>8.  ZPTP_POP_ITEM FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_POP. This FM is responsible for getting item values from screen fields.
    The interface would be as follows:
    Local Interface:
    EXPORTING
       REFERENCE(EX_DYNP_DATA) TYPE  ZSPTP_ITEM
    get dynpro data
      ex_dynp_data = zsptp_item.
    <b>9.  ZPTP_POST_HEADER FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_POST. This FM is responsible for preparing header data for posting.
    Local Interface:
    IMPORTING
       VALUE(IM_EBELN) TYPE  EBELN
    prepare customers data for posting
      check not im_ebeln is initial.
      lit_data_newhd[] = git_head.
      lit_data_oldhd[] = git_persistent_head.
      lwa_head-mandt = sy-mandt.
      lwa_head-ebeln = im_ebeln.
      modify lit_data_newhd from lwa_head transporting mandt ebeln where ebeln is initial.
    Commit data in Database ztptp_header.
      call function 'ZPTP_COMMIT_HEADER'
        tables
          imt_data_newhd = lit_data_newhd
          imt_data_oldhd = lit_data_oldhd.
    <b>10. ZPTP_POST_ITEM FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_POST. This FM is responsible for preparing item data for posting.
    "Local Interface:
    IMPORTING
        VALUE(IM_EBELN) TYPE  EBELN
      data: lwa_data like line of git_data,
            lit_data_new type standard table of ztptp_item,
            lit_data_old type standard table of ztptp_item.
    prepare customers data for posting
      check not im_ebeln is initial.
      lit_data_new[] = git_data.
      lit_data_old[] = git_persistent_data.
      lwa_data-mandt = sy-mandt.
      lwa_data-ebeln = im_ebeln.
      modify lit_data_new from lwa_data transporting mandt ebeln where ebeln is initial.
    Commit data in Database ztptp_item.
      call function 'ZPTP_COMMIT_ITEM' in update task
        tables
          imt_data_new = lit_data_new
          imt_data_old = lit_data_old.
    <b>11.  ZPTP_PUSH_HEADER FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_PUSH. This FM is responsible for populating header values to screen fields.
    Local Interface:
      IMPORTING
         REFERENCE(IM_DYNP_DATAHD) TYPE  ZSPTP_HEADER
    set dynpro data
      zsptp_header = im_dynp_datahd .
    <b>12.  ZPTP_PUSH_ITEM FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_PUSH. This FM is responsible for populating item values to screen fields.
    Local Interface:
    IMPORTING
       REFERENCE(IM_DYNP_DATA) TYPE  ZSPTP_ITEM
    set dynpro data
      zsptp_item = im_dynp_data .
    <b>13. ZPTP_SET_DATA_HEADER FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_SET_DATA. This FM is responsible for keep update header  information in git_header.
    delete a line from git_data
        delete table git_head with table key mandt = sy-mandt
                                            ebeln = im_datahd-ebeln.
    update customer data
        read table git_head assigning <lf_datahd> with table key
                                            mandt = sy-mandt
                                            ebeln = im_datahd-ebeln.
        if sy-subrc is initial.
    update existing data
          <lf_datahd>-zz_exptype = im_datahd-zz_exptype.
        else.
    make a new entry into the data table
          lwa_head = im_datahd.
          lwa_head-mandt = sy-mandt.
          insert lwa_head into table git_head.
        endif.
    <b>14. ZPTP_SET_DATA_ITEM FG: ZPTP_PORETAINAGE</b>
    Get the sample function module code from the standard FM: MEPOBADIEX_SET_DATA. This FM is responsible for keep update item information in git_data.
    delete a line from git_data
        delete table git_data with table key mandt = sy-mandt
                                            ebeln = im_data-ebeln
                                            ebelp = im_data-ebelp.
    update customer data
        read table git_data assigning <lf_data> with table key
                                            mandt = sy-mandt
                                            ebeln = im_data-ebeln
                                            ebelp = im_data-ebelp.
        if sy-subrc is initial.
    update existing data
          <lf_data>-zz_retainage = im_data-zz_retainage.
        else.
    make a new entry into the data table
          lwa_data = im_data.
          lwa_data-mandt = sy-mandt.
          insert lwa_data into table git_data.
        endif.
    <b>DETAILED SCREEN DESIGN SPECIFICATIONS</b>
    <b>screen 0002</b>
    Item Retainage
    ZSPTP_ITEM-ZZ_RETAINAGE     DEC     5     Retainage
    Screen Logic / Process before Output
      call method call_view->handle_event( 'PBO' ).
    Screen Logic / Process after Input
    call method call_view->handle_event( 'PAI' )
    <b>Screen 0003</b>
    Header: Expense type
    ZSPTP_HEADER-ZZ_EXPTYPE     NUMC     4     Expense Type
    Screen Logic / Process before Output
      call method call_view->handle_event( 'PBO' ).
    Screen Logic / Process after Input
    call method call_view->handle_event( 'PAI' )
    <b>DETAILED CLASS DESIGN SPECIFICATIONS</b>
    <b>A. ZCL_IM_ME_GUI_PO_CUST</b>
    Description
    Imp. Class ZME_GUI_PO_CUST
    Attributes
    Name     Level     Visibility     Type
    SUBSCREEN1     Constant     Public     MEPO_NAME
    SUBSCREEN2     Constant     Public     MEPO_NAME
    DYNP_DATA_PBO     Instance Attribute     Private     ZSPTP_ITEM
    DYNP_DATA_PAI     Instance Attribute     Private     ZSPTP_ITEM
    DYNP_DATA_PBOHD     Instance Attribute     Private     ZSPTP_HEADER
    DYNP_DATA_PAIHD     Instance Attribute     Private     ZSPTP_HEADER
    Methods
    Name     Level     Visibility
    IF_EX_ME_GUI_PO_CUST~SUBSCRIBE     Instance Attribute     Public
    IF_EX_ME_GUI_PO_CUST~MAP_DYNPRO_FIELDS     Instance Attribute     Public
    IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_MODEL     Instance Attribute     Public
    IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_DYNP     Instance Attribute     Public
    IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_DYNP     Instance Attribute     Public
    IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_MODEL     Instance Attribute     Public
    <b>1. SUBSCRIBE</b>
    Description
    Publisch Customer's Own Screens
    Detailed logic
      when lc_item.
    the name is a unique identifier for the subscreen and defined in this class definition
      lwa_subscriber-name = subscreen1.
    the dynpro number to use
      lwa_subscriber-dynpro = '0002'.
    the program where the dynpro can be found
      lwa_subscriber-program = 'SAPLZPTP_PORETAINAGE'.
    each subscreen needs his own DDIC-Structure
      lwa_subscriber-struct_name = 'ZSPTP_ITEM'.
    a label can be defined
      lwa_subscriber-label = text-001.
    the position within the tabstrib can be defined
      lwa_subscriber-position = 1.
      lwa_subscriber-height = 7.
      append lwa_subscriber to re_subscribers.
    Header subscreen
      when lc_header.
    the name is a unique identifier for the subscreen and defined in this class definition
      lwa_subscriber-name = subscreen2.
    the dynpro number to use
      lwa_subscriber-dynpro = '0003'.
    the program where the dynpro can be found
      lwa_subscriber-program = 'SAPLZPTP_PORETAINAGE'.
    each subscreen needs his own DDIC-Structure
      lwa_subscriber-struct_name = 'ZSPTP_HEADER'.
    a label can be defined
      lwa_subscriber-label = text-002.
    the position within the tabstrib can be defined
      lwa_subscriber-position = 1.
      lwa_subscriber-height = 7.
      append lwa_subscriber to re_subscribers.
      endcase.
    <b>2. MAP_DYNPRO_FIELDS</b>
    Description
    Build Up Field Catalog
    Detailed logic
      loop at ch_mapping assigning <lf_mapping>.
    *Assignment of metafields to the customer fields.
        case <lf_mapping>-fieldname.
          when 'EBELN'.       <lf_mapping>-metafield = mmmfd_preq_no_po.
          when 'EBELP'.       <lf_mapping>-metafield = mmmfd_preq_item_po.
          when 'ZZ_RETAINAGE'. <lf_mapping>-metafield = mmmfd_cust_01.
          when 'ZZ_EXPTYPE'.   <lf_mapping>-metafield = mmmfd_cust_02.
        endcase.
      endloop.
    <b>
    3. TRANSPORT_FROM_MODEL</b>
    Description
    Data Transport from Business Object
    Detailed logic
        when subscreen1.
    Get the item object
          mmpur_dynamic_cast lif_item im_model.
          check not lif_item is initial.
          lwa_mepoitem = lif_item->get_data( ).
    transport customer fields
          call function 'ZPTP_GET_DATA_ITEM'
            exporting
              im_ebeln = lwa_mepoitem-ebeln
              im_ebelp = lwa_mepoitem-ebelp
            importing
              ex_data  = lwa_customer.
    store info for later use
          move-corresponding lwa_mepoitem to dynp_data_pbo.
          move lwa_customer-zz_retainage to dynp_data_pbo-zz_retainage.
        when subscreen2.
    Get the header object
          mmpur_dynamic_cast lif_header im_model.
          check not lif_header is initial.
    transport standard fields
          lwa_mepohead = lif_header->get_data( ).
    transport customer fields
          call function 'ZPTP_GET_DATA_HEADER'
            exporting
              im_ebeln = lwa_mepohead-ebeln
            importing
              ex_head  = lwa_customerhd.
    store info for later use
          move-corresponding lwa_mepohead to dynp_data_pbohd.
          if not lwa_customerhd-zz_exptype is initial.
            move lwa_customerhd-zz_exptype to dynp_data_pbohd-zz_exptype.
          else.
            move dynp_data_paihd-zz_exptype to dynp_data_pbohd-zz_exptype.
          endif.
        when others.
      endcase.
    <b>4. TRANSPORT_TO_DYNP</b>
    Description
    Data Transport to Screen
    Detailed logic
    case im_name.
        when subscreen1 .
       Pushing item data to screen fields
          call function 'ZPTP_PUSH_ITEM'
            exporting
              im_dynp_data = dynp_data_pbo.
        when subscreen2 .
       Pushing header data to screen fields
          call function 'ZPTP_PUSH_HEADER'
            exporting
              im_dynp_datahd = dynp_data_pbohd.
        when others.
      endcase.
    <b>5. TRANSPORT_FROM_DYNP</b>
    Description
    Data Transport from Screen
    Detailed logic
    case im_name.
        when subscreen1.
    Getting item data from screen fields
          call function 'ZPTP_POP_ITEM'
            importing
              ex_dynp_data = dynp_data_pai.
          if dynp_data_pai ne dynp_data_pbo
           or dynp_data_paihd ne dynp_data_pbohd.
    If data  changed we have to notify the framework
    to transport data to the model
            re_changed = mmpur_yes.
        endif.
        when subscreen2.
    Getting header data from screen fields
          call function 'ZPTP_POP_HEADER'
            importing
              ex_dynp_datahd = dynp_data_paihd.
          if dynp_data_paihd ne dynp_data_pbohd
          or dynp_data_pai ne dynp_data_pbo.
    If data changed we have to notify the framework
    to transport data to the model
            re_changed = mmpur_yes.
          endif.
        when others.
      endcase.
    <b>6. TRANSPORT_TO_MODEL</b>
    Description
    Treatment of Function Codes
    Detailed logic
      case im_name.
        when subscreen1.
    is it an item? im_model can be header or item.
          mmpur_dynamic_cast lif_item im_model.
          check not lif_item is initial.
          lwa_mepoitem = lif_item->get_data( ).
    standard fields changed?
          if dynp_data_pbo-ebeln ne dynp_data_pai-ebeln  or
             dynp_data_pbo-ebelp ne dynp_data_pai-ebelp or
             dynp_data_pbo-zz_retainage ne dynp_data_pai-zz_retainage.
    update standard fields
            lwa_mepoitem-ebeln = dynp_data_pai-ebeln.
            lwa_mepoitem-ebelp = dynp_data_pai-ebelp.
            lwa_mepoitem-zzretainage = dynp_data_pai-zz_retainage.
            call method lif_item->set_data( lwa_mepoitem ).
          endif.
    customer fields changed?
          if dynp_data_pbo-zz_retainage ne dynp_data_pai-zz_retainage.
            call function 'ZPTP_GET_DATA_ITEM'
              exporting
                im_ebeln = lwa_mepoitem-ebeln
                im_ebelp = lwa_mepoitem-ebelp
              importing
                ex_data  = lwa_customer.
            lwa_customer-zz_retainage = dynp_data_pai-zz_retainage.
    Commit changes to database.
            call function 'ZPTP_SET_DATA_ITEM'
              exporting
                im_data = lwa_customer.
          endif.
        when subscreen2.
    is it an header? im_model can be header or item.
          mmpur_dynamic_cast lif_header im_model.
          check not lif_header is initial.
          lwa_mepohead = lif_header->get_data( ).
    standard fields changed?
          if dynp_data_pbohd-ebeln ne dynp_data_paihd-ebeln or
          dynp_data_pbohd-zz_exptype ne dynp_data_paihd-zz_exptype.
    update standard fields
            lwa_mepohead-ebeln = dynp_data_paihd-ebeln.
            lwa_mepohead-zzexptype = dynp_data_paihd-zz_exptype.
            call method lif_header->set_data( lwa_mepohead ).
          endif.
    customer fields changed?
          if dynp_data_pbohd-zz_exptype ne dynp_data_paihd-zz_exptype.
            call function 'ZPTP_GET_DATA_HEADER'
              exporting
                im_ebeln = lwa_mepohead-ebeln
              importing
                ex_head  = lwa_customerhd.
            lwa_customerhd-zz_exptype = dynp_data_paihd-zz_exptype.
    Commit changes to database.
            call function 'ZPTP_SET_DATA_HEADER'
              exporting
                im_datahd = lwa_customerhd.
          endif.
        when others.
      endcase.
    <b>
    B. ZCL_IM_ME_PROCESS_PO_CUST</b>
    Description
    Imp. Class for BAdI imp. ZME_PROCESS_PO_CUST
    Methods
    Name     Level     Visibility
    IF_EX_ME_PROCESS_PO_CUST~INITIALIZE     Instance Attribute     Public
    IF_EX_ME_PROCESS_PO_CUST~OPEN     Instance Attribute     Public
    IF_EX_ME_PROCESS_PO_CUST~PROCESS_HEADER     Instance Attribute     Public
    IF_EX_ME_PROCESS_PO_CUST~PROCESS_ITEM     Instance Attribute     Public
    IF_EX_ME_PROCESS_PO_CUST~POST     Instance Attribute     Public
    IF_EX_ME_PROCESS_PO_CUST~CLOSE     Instance Attribute     Public
    <b>
    1. INITIALIZE</b>
    Description
    Initializations (Invoked Once Only)
    Detailed logic
    initializations
      call function 'ZPTP_INIT'.
    <b>2. OPEN</b>
    Description
    Open a Purchase Order
    Detailed logic
    data: lwa_mepoheader type mepoheader.
    read customer data
    this has to be done when we open a persistent object
      check im_trtyp eq 'V' or im_trtyp eq 'A'.
      lwa_mepoheader = im_header->get_data( ).
    read customer data from database
      call function 'ZPTP_OPEN'
        exporting
          im_ebeln = lwa_mepoheader-ebeln.
    <b>3. PROCESS_HEADER</b>
    Description
    Processing of Header Data
    Detailed logic
    data: lwa_mepohead type mepoheader,
            lwa_customerhd type ztptp_header.
      include mm_messages_mac. "useful macros for message handling
    here we check customers data
      lwa_mepohead = im_header->get_data( ).
      if lwa_mepohead-loekz eq 'D'.
    a physical deletion of the header was carried out.
        lwa_customerhd-ebeln = lwa_mepohead-ebeln.
        call function 'ZPTP_SET_DATA_HEADER'
          exporting
            im_datahd                  = lwa_customerhd
            im_physical_delete_request = 'X'.
      endif.
    <b>4. PROCESS_ITEM</b>
    Description
    Processing of Item Data
    Detailed logic
    data: lwa_mepoitem type mepoitem,
            lwa_customer type ztptp_item.
      include mm_messages_mac. "useful macros for message handling
    here we check customers data
      lwa_mepoitem = im_item->get_data( ).
      if lwa_mepoitem-loekz eq 'D'.
    a physical deletion of the item was carried out. therrefor we have to
    delete customer data on the level of the item
        lwa_customer-ebeln = lwa_mepoitem-ebeln.
        lwa_customer-ebelp = lwa_mepoitem-ebelp.
        call function 'ZPTP_SET_DATA_ITEM'
          exporting
            im_data                    = lwa_customer
            im_physical_delete_request = 'X'.
      endif.
    <b>5. POST</b>
    Description
    Post
    Detailed logic
    *Posting header data
          call function 'ZPTP_POST_HEADER'
            exporting
              im_ebeln       = im_ebeln.
    *Posting item data
          call function 'ZPTP_POST_ITEM'
            exporting
              im_ebeln       = im_ebeln.
    <b>
    6. CLOSE</b>
    Description
    Closing Processing
    Detailed logic
    close customer data
      call function 'ZPTP_INIT'.

  • Exit or Enhancement for TCode FB02 to manipulate Due Date

    Hi,
    We would like to change the value on the due date field based on some custom logic in TCode FB02 on the item detail screen (program SAPMF05L screen no 304, SAP version 4.7). Is there any user exit or BADI for this?
    We have tried various user exits but nothing seems to work. We found one BADI, which we thought would work, ADJUST_NET_DAYS, but this is marked for internal use (SAP use) only.
    Please help.
    Thanks.
    John

    Hi Friend,
    Exits,
    F050S001  FIDCMT, FIDCC1, FIDCC2: Edit user-defined IDoc segment
    F050S002  FIDCC1: Change IDoc/do not send
    F050S003  FIDCC2: Change IDoc/do not send
    F050S004  FIDCMT, FIDCC1, FIDCC2: Change outbound IDoc/do not sen
    F050S005  FIDCMT, FIDCC1, FIDCC2 Inbound IDoc: Change FI document
    F050S006  FI Outgoing IDoc: Reset Clearing in FI Document
    F050S007  FIDCCH Outbound: Influence on IDoc for Document Change
    F180A001  Balance Sheet Adjustment
    FARC0002  Additional Checks for Archiving MM Vendor Master Data
    FEDI0001  Function Exits for EDI in FI
    RFAVIS01  Customer Exit for Changing Payment Advice Segment Text
    RFEPOS00  Line item display: Checking of selection conditions
    RFKORIEX  Automatic correspondence
    SAPLF051  Workflow for FI (pre-capture, release for payment)
    Badi's,
    AC_QUANTITY_GET
    AC_QUANTITY_GET
    BADI_ENJ_ALT_ADR
    BADI_ENJ_ALT_ADR
    BADI_F040_SCREEN_600
    BADI_FDCB_SUBBAS01
    BADI_FDCB_SUBBAS02
    BADI_FDCB_SUBBAS03
    BADI_FDCB_SUBBAS04
    BADI_FDCB_SUBBAS05
    BADI_MIRO_SPLT_ADD
    BADI_PRKNG_NO_UPDATE
    BADI_TAX1_XTXIT_SET
    F050S008
    FBAS_CIN_LTAX1F02
    FBAS_CIN_MF05AFA0
    FI_AUTHORITY_ITEM
    FI_DOC_DISP_LI
    FI_GET_INV_PYMT_AMT
    FI_HEADER_SUB_1300
    FI_PAYREF_BADI_010
    FI_TRANS_DATE_DERIVE
    INVOIC_FI_INBOUND
    RFESR000_BADI_001
    Enhancement Spot
    AC_QUANTITY_GET                Transfer of Quantities to Accounting - Customer Exit
    BADI_ENJ_ALT_ADR               Go to alternative vendor/customer data
    BADI_TAX1_XTXIT_SET
    FI_DOC_DISP_LI                 Diversion to Document Items (FB03)
    Thanks,
    santhosh
    Edited by: santhosh kumar on Dec 23, 2010 8:02 AM

  • Enhancement/exit name for Account assignment category for tcode XD01

    Hi Gurus,
    Can you tell me Exit name/Enhancement name To populate the proper
    Account Assignment group based on the type of customer and the relationship of the customeru2019s country to that of the sales organization while creating customer master record using tcode XD01

    Hi
    For this u need to ehancement Point.
    Regards,
    Raghu.

  • Enhancement spot for shipping point in VL10G tcode

    Hi All,
    we have created enhancement spot for shipping point in VL10G tcode & tested its working fine in foreground(Dialog) but didn't worked in BACKGROUND, its showing error log. 
    when we opened this error message its not having any error message in log. its coming blank in error field.
    so pls let me know your thoughts, why its happening?
    Thanks & Regards
    Nagendra / Biswa

    hi yogendra,
    I have created an enhancement in RV_INVOICE_DOCUMENT_ADD but my code is not getting appeared in debugging mode and  nothing is working. can u please guide me on this.
    following the spot where i have written my code
    NHANCEMENT-POINT rv_invoice_document_add_14 SPOTS es_saplv60a.
    ENHANCEMENT 51  OIC_SAPLV60A.    "active version
    BREAK-POINT.
    WAIT UP TO 2 SECONDS.
    DATA: lv_name TYPE thead-tdname,
             lt_line TYPE STANDARD TABLE OF tline,
             lw_line TYPE tline.
         CLEAR: lv_name , lv_sgtxt.
           lv_name = bkpf-xblnr.
    CALL FUNCTION 'READ_TEXT'
         EXPORTING
           id                      = 'A002'
           language                = sy-langu
           name                    = lv_name
           object                  = 'VBBK'
         TABLES
           lines                   = lt_line[]
         EXCEPTIONS
           id                      = 1
           language                = 2
           name                    = 3
           not_found               = 4
           object                  = 5
           reference_check         = 6
           wrong_access_to_archive = 7
           OTHERS                  = 8.
       IF sy-subrc EQ 0.
         READ TABLE lt_line
           INTO lw_line
           INDEX 1.
          REPLACE ALL OCCURRENCES OF '<)>' IN lw_line-tdline WITH space.
         lv_sgtxt = lw_line-tdline.
       ENDIF.
    ENHANCEMENT 1  ZNARRATION_UPDATE.    "active version
    ENDENHANCEMENT.
    Regards
    satish

Maybe you are looking for