User Exit for line item query

HI There,
I'm not good at ABAP coding and need some help from experts.
Working on Line Items Query and enhanced the 0FI_AP_4 to include fields from BSEG table, the fields are:
GEBER - Funds
FISTAL - Funds Center
KOSTL - Cost Center
GSBER - Business Area.
I used the below code to enhance the datasource 0FI_AP_4, and its taking toooo long to load the data, but its pulling the line item data into BW.
Please find another code after this....its very quick, either in extract checker or loading into BW, however its not loading all fields into BW. Specially line items like Cost Center, Fund center and Fund fields.
Please go through the below codes and suggest me what changes i have to make to work as it should be.
DATA: L_TABIX LIKE SY-TABIX.
DATA: ZADTFIAP_3 LIKE DTFIAP_3.
CASE I_DATASOURCE.
WHEN '0FI_AP_4'.
LOOP AT C_T_DATA INTO ZADTFIAP_3.
L_TABIX = SY-TABIX.
SELECT SINGLE GEBER FROM BSEG INTO ZADTFIAP_3-GEBER
WHERE BUKRS = ZADTFIAP_3-BUKRS AND GJAHR = ZADTFIAP_3-FISCPER+0(4).
SELECT SINGLE FISTL FROM BSEG INTO ZADTFIAP_3-FISTL
WHERE BUKRS = ZADTFIAP_3-BUKRS AND GJAHR = ZADTFIAP_3-FISCPER+0(4).
SELECT SINGLE KOSTL FROM BSEG INTO ZADTFIAP_3-KOSTL
WHERE BUKRS = ZADTFIAP_3-BUKRS AND GJAHR = ZADTFIAP_3-FISCPER+0(4).
MODIFY C_T_DATA FROM ZADTFIAP_3 INDEX L_TABIX.
ENDLOOP.
ENDCASE.
Below code is extracting data very quickly but not bringing data for all fields specially line items like Fund Center, Cost center and Fund fields.
DATA: L_TABIX LIKE SY-TABIX.
DATA: ZADTFIAP_3 LIKE DTFIAP_3,
wa_bseg Like bseg.
CASE I_DATASOURCE.
WHEN '0FI_AP_4'.
LOOP AT C_T_DATA INTO ZADTFIAP_3.
L_TABIX = SY-TABIX.
Select single * from
bseg into wa_bseg
where BUKRS = ZADTFIAP_3-BUKRS
and GJAHR = ZADTFIAP_3-FISCPER+0(4)
and BELNR = ZADTFIAP_3-BELNR
and BUZEI = ZADTFIAP_3-BUZEI.
IF SY-SUBRC = 0.
Move: wa_BSEG-GEBER to ZADTFIAP_3-GEBER,
wa_BSEG-FISTL to ZADTFIAP_3-FISTL,
wa_BSEG-KOSTL to ZADTFIAP_3-KOSTL,
wa_bseg-GSBER to ZADTFIAP_3-GSBER.
ENDIF.
MODIFY C_T_DATA FROM ZADTFIAP_3 INDEX L_TABIX.
ENDLOOP.
ENDCASE
Thanks
Vandana

Hi,
You can try this.
USEREXIT_MOVE_FIELD_TO_VBEP                                      
Use this user exit to assign values to new fields at the level of
the sales document schedule lines.                               
The user exit is called up at the end of the FORM routine        
VBEP_FUELLEN.                                                    
Thanks
Krishna.

Similar Messages

  • User Exit at line item level

    Hi all....
    I need a user exit which is applicable at line item level.
    The field 'first date' in line item, is same as first line in scehdule line.If i update 'first date in line item, the schedule line gets updated automatially. According to my requirement, i need a user exit at line item for date field.
    Thaks
    Aleem

    Hi,
    You can try this.
    USEREXIT_MOVE_FIELD_TO_VBEP                                      
    Use this user exit to assign values to new fields at the level of
    the sales document schedule lines.                               
    The user exit is called up at the end of the FORM routine        
    VBEP_FUELLEN.                                                    
    Thanks
    Krishna.

  • VA01 user exit at line item with partner address

    I need a user exit for VA01 that is at the line item level.  The catch is I also need access to the partner address data.  I have found userexit_pricing_prepare_tkomk (include MV45AFZZ) but that doesn't give you the "instance" address information (the address data that is specific to that order, after being changed).  It only gives you the address number for the partner's default address.
    Does anybody know if such an exit exists?
    Regards,
    Aaron

    Hi Aaron,
    I had a similar requirement Long back & This was my code I written. Hope this helps you.
    *  Extract and Update field for partner-id - Goods Supplying vendor
      CLEAR TKOMK-Y_GSVN.
      PERFORM XVBPA_LESEN(SAPFV45K) USING 'WL'  VBAP-POSNR SY-TABIX.
      IF XVBPA-UPDKZ <> 'D'.
        TKOMK-Y_GSVN = XVBPA-LIFNR.
      ENDIF.
      PERFORM XVBPA_LESEN(SAPFV45K) USING 'ZP'  VBAP-POSNR SY-TABIX.
      IF XVBPA-UPDKZ <> 'D'.
        TKOMK-BSART = 'ZIN'.
        SELECT SINGLE LAND1 FROM LFA1 INTO TKOMK-Y_COMM_CTY  WHERE LIFNR = XVBPA-LIFNR.
      ENDIF.
    FORM XVBPA_LESEN USING US_PARVW US_POSNR US_TABIX.
    DATA: DA_VBADR   TYPE   VBADR.
    DATA: DA_VBPA    LIKE   XVBPA.
    CLEAR DA_VBPA.
    READ TABLE XVBPA INDEX 1 INTO DA_VBPA TRANSPORTING VBELN.
    XVBPAKEY-MANDT = VBAK-MANDT.
    XVBPAKEY-VBELN = DA_VBPA-VBELN.
    XVBPAKEY-PARVW = US_PARVW.
    XVBPAKEY-POSNR = US_POSNR.
    READ TABLE XVBPA WITH KEY XVBPAKEY.
    IF SY-SUBRC > 0.
       XVBPAKEY-POSNR = POSNR_LOW.
       READ TABLE XVBPA WITH KEY XVBPAKEY.
    ENDIF.
    IF SY-SUBRC > 0.
      CLEAR XVBPA.
      IF  US_PARVW = 'WE'.
        CLEAR KUWEV.
      ENDIF.
      IF  US_PARVW = 'RG'.
        CLEAR KURGV.
      ENDIF.
    ENDIF.
    US_TABIX = SY-TABIX.
    * CAM is not activated
    IF ZAV_FLAG IS INITIAL.
      IF NOT XVBPA-ADRNR IS INITIAL.
        CLEAR XVBADR.
        XVBADR-ADRNR = XVBPA-ADRNR.
        READ TABLE XVBADR.
        IF SY-SUBRC > 0.
          CLEAR XVBADR.
        ENDIF.
      ENDIF.
    * CAM is activated
      ELSE.
    *if there is an address
        IF NOT XVBPA-ADRNR IS INITIAL.
    *clear address data
          CLEAR XVBADR.
    *try to read address in internal table XVBADR
          READ TABLE XVBADR WITH KEY ADRNR = XVBPA-ADRNR  ADRNP = XVBPA-ADRNP.
    *if address is not in internal table XVBADR
          IF SY-SUBRC NE 0.
    *read address in CAM tables
       CALL FUNCTION 'SD_ADDRESS_GET'
          EXPORTING
            FIF_ADDRESS_NUMBER    = XVBPA-ADRNR
            FIF_PERSONAL_NUMBER   = XVBPA-ADRNP
            FIF_ADDRESS_INDICATOR = XVBPA-ADRDA
          IMPORTING
            FES_ADDRESS           = DA_VBADR
          EXCEPTIONS
            OTHERS                = 4.
            IF SY-SUBRC EQ 0.
              MOVE-CORRESPONDING DA_VBADR TO XVBADR.
              APPEND XVBADR.
            ELSE.
              CLEAR XVBADR.
            ENDIF.
          ENDIF.
        ENDIF.
      ENDIF.
    ENDFORM.
    Thanks & Regards,
    Dileep .C

  • BADI and User exit for MIGO item and header enhancement

    We want to add three extra fields in MIGO screen for specific movement type 101 . Two fields at item level and one filed at header level .
    Item level fields are independent fields it will store in separate z-table and z-field and dont't have any relation with other table .
    but header field has some relation with quantity field in item level . All the item quantity has to add up in header , Is it possible to add up .
    What are the BADI and user exit need to use for this enhacement and etc required details

    Hi Raghavendra,
    Use BAdI MB_MIGO_BADI.
    It has all the methods that cater your requirement.
    Try to have a design such that you can store the values within the document by enhancing the tables using Append Structures, they surely have a link with the document.
    regards,
    Aabhas K Vishnoi

  • User exit for PO Item data update

    Hello All,
    At time of creation of PO using ME21N / ME58, we want to update PO item data . We want to update Over and Under delivery tolerances values from corressponding sales order rather than purchase info record.
    Please let me know if anyone has worked on similar requirement or any pointers for relevant user exits in SAP Release 4.6C .
    Regards,
    Manu.

    Hello ,
    Would you please check the below Userexits in 4.6C .
    EXIT_SAPLV50E_001
    EXIT_SAPLV50E_002
    EXIT_SAPLV50E_003
    EXIT_SAPLV50E_004
    EXIT_SAPLV50E_005
    EXIT_SAPLV50E_006
    In which I hope 2 and 4th were usefull.
    Regards,

  • MM PO - New Pricing Routine / user exit / at Line item

    Hi
    When ever a line item data gets chnaged, we need to do the Update Pricing / New pricing Automatically.
    Currently we are doing this manually and would prefer to automate -
    request for possible suggestions / solutions OSS notes for this functionality.
    cheers
    Nandu

    Hi
    Look at using BADI ME_DEFINE_CALCTYPE  to select the pricing type B (carry out new pricing) whenever you make a change to PO item.
    You need to go through the documentation of this BADI before you use it to make the correct program changes.
    Hope this helps.
    PP

  • COR2 user exit for saving item changes

    Hi,
    i need to  change item contents with user exit while saving in COR2 transaction.I found several user exits with debugging.But could not accomplish to change fields.
    Please give me a user-exit name which can change the item contents while saving.
    Thanks.

    Hi burc,
    what about enhancement CONFPI05 Process Ord. Conf.: Cust.-Specific Enhancements when Saving, EXIT_SAPLCORF_405.
    Or tell in more detail what is it you want to change.
    Regards,
    Clemens

  • User Exit for Changing Item Quantity in VA02 upon Openning

    Hi Guys,
    Need your help. I checked the forums and I didn't find anything.
    Requirement:
    I'm trying to change the item quantity and uom upon openning VA02. ie.
    1) Run tcode VA02
    2) Enter Order Number
    3) run exit, Change Quantity and Uom <<<
    4) Result: VA02 screen is displayed with new quantity (still in change mode).
    My Question is:
    a) Is this possible?
    b) What Exit/BADI do I use, and fields do I have to use?
    Stuff I've done
    1) debug: USEREXIT_MOVE_FIELD_TO_VBAP is NOT triggered. It is only triggered after the order is opened and the material number is changed.
    2) I tried changing XVBAP-KWENG and Setting XVBAP-UPDKZ to 'U' at USEREXIT_READ_DOCUMENT (EXIT_SAPMV45A_918) but change does not take effect after saving. Also the field becomes greyed out. (The reason I chose this exit is because its the only one where xvbap seems to be modifiable). Although, I acknowledge that this doesn't look like the right solution anyway.
    Thoughts? Thanks in advance!
    -Emir

    Hi Emir,
    BADI BADI_SD_SALES_ITEM now changed to enhancement spot.
    In SE18: enter Enhancement spot - BADI_SD_SALES_ITEM.
    Inside enhancement spot BADI_SD_SALES_ITEM four BADI definition were exist.
    I think BADI definition MSR_SD_SALES is use full for you (This BADI definition is not reserver for SAP intrnal use.
    And above enhancement spot also not reserverd for sap internal use.
    Just try to implementation BADI definition MSR_SD_SALES and use method CHANGE_BILLING_BLOCK_ITEM.
    BR,
    Vijay

  • User exit for multiprovider

    hi friends,
    how can I create a user exit for a multiprovider query. and how can I find a multiprovider table for user exit... this is very urgent... help me..

    hi sam ,
    thanks for a quick reply..
    my requirement is I have one multiprovider which combined 3 cubes and 3 ODS.
    now I want to create a user exit of a query for retrieving some Infoobjects from that multiprovider. thats why I asked is any table regard this... by query I got such Infoobjects, due to some enhancement, I need to retrive such infoojects by coding....
    Ex. material,suite,plant and two keyfigures from different infoproviders.... now I want to collect all Infoobjects....
    with hopes,
    JD

  • User-exit for deletion of line item in PO

    hi group
    i want to delete a line item of purchase order.
    and after that i have to make some changes
    so i want to know which user-exit will be used here.
    please help its urgent.

    Hi,
    Please fine the list of user exits for the transaction ME22.
    If it serves your purpsoe , please close the thread and reward suitable points.
    Regards,
    Irfan Hussain
    Transaction Code - ME22                     Change Purchase Order
    Exit Name
    Description
    AMPL0001
    User subscreen for additional data on AMPL
    LMEDR001
    Enhancements to print program
    LMELA002
    Adopt batch no. from shipping notification when posting a GR
    LMELA010
    Inbound shipping notification: Transfer item data from IDOC
    LMEQR001
    User exit for source determination
    M06B0001
    Role determination for purchase requisition release
    M06B0002
    Changes to comm. structure for purchase requisition release
    M06B0003
    Number range and document number
    M06B0004
    Number range and document number
    M06B0005
    Changes to comm. structure for overall release of requisn.
    M06E0004
    Changes to communication structure for release purch. doc.
    M06E0005
    Role determination for release of purchasing documents
    ME590001
    Grouping of requsitions for PO split in ME59
    MEETA001
    Define schedule line type (backlog, immed. req., preview)
    MEFLD004
    Determine earliest delivery date f. check w. GR (only PO)
    MELAB001
    Gen. forecast delivery schedules: Transfer schedule implem.
    MEVME001
    WE default quantity calc. and over/ underdelivery tolerance
    MM06E001
    User exits for EDI inbound and outbound purchasing documents
    MM06E003
    Number range and document number
    MM06E004
    Control import data screens in purchase order
    MM06E005
    Customer fields in purchasing document
    MM06E007
    Change document for requisitions upon conversion into PO
    MM06E008
    Monitoring of contr. target value in case of release orders
    MM06E009
    Relevant texts for "Texts exist" indicator
    MM06E010
    Field selection for vendor address
    MMAL0001
    ALE source list distribution: Outbound processing
    MMAL0002
    ALE source list distribution: Inbound processing
    MMAL0003
    ALE purcasing info record distribution: Outbound processing
    MMAL0004
    ALE purchasing info record distribution: Inbound processing
    MMDA0001
    Default delivery addresses
    MMFAB001
    User exit for generation of release order
    LWSUS001
    Customer-Specific Supply Source Determination in Retail
    MRFLB001
    Control Items in Release Creation
    No of Exits:         33

  • User Exit for Purchase Order Line Items.

    I have been trying to search for a User Exit for Purchase Order Line Items and have been unable to do find anything.  I need to overwrite the Net Price and Pricing Condition on a certain type of material based upon the Pricing Condition for that Line Item which is on the Sales Document.  Any direction you can point me into would be greatly appreciated.  Thanks.

    Thanks for pointing me in the right direction.  I was able to create my first BADI using the PROCESS_ITEM method.  The following link was also very helpful: Re: BADI ME_PROCESS_PO_CUST Method:PROCESS_ITEM

  • User exit for reducing Query lines!

    Hello,
    IS it possible to use a User Exit for queries to reduce my resultpackage before the lines arrive the reporting area?
    For example:
    I have a due date and in case of an entry of a field in the query result package the <exit> must read a reference from a info provider to decide if this line of this resultpackage can be load or not!
    Query resultpackage
    Contract :
    a             look up in, ODS for example, decision! delete line from package or not
    and so on..
    b            Yes
    v            No
    f
    g
    Short form:
    Is it possible to manipulate the result package of a query in a user exit dynamically like described above??
    AND how is it to implent?
    Thank you for you answers!
    By Rene
    Edited by: NW-DEV on Oct 7, 2010 3:52 PM
    Edited by: NW-DEV on Oct 7, 2010 3:55 PM

    Hi,
    Is it necessary that you do this on the fly (during query execution)?
    A simpler way to achieve this is by adding a column to your cubes ... say Flag . Update this flag, during transformations. This Flag field will indicate 'Marked for Deletion' and you can filter out records in the Query, by adding this Flag Field in Query Restrictions.
    If you want to achieve this during Query execution, you may need to use Virtual Characteristics(You can search for the code/implementation steps on SDN). Again Flag field will be the Virtual Characteristic and Query Filters will contain Flag value exclusions.
    Regards,
    Advait

  • User exit - for ME21N, 22N, 23N - at line item level

    Hi,
    I want to add new text field to display the description of the MPM(material) in it.
    That filed I want to add to the Account Assignment tab at item level.
    How to add that field on the screen, I mean any screen exit for this?
    and function module to pass the data to that field.
    If anybody worked on such problem then pls. let me know.
    Thanks in advance.
    -- Umesh

    Hi,
    These are the user exits for me21n.                
    AMPL0001          
    LMEDR001          
    LMELA002          
    LMELA010          
    LMEQR001          
    M06B0001          
    M06B0002          
    M06B0003          
    M06B0004          
    M06B0005          
    M06E0004          
    M06E0005          
    ME590001          
    MEETA001          
    MEFLD004          
    MELAB001          
    MEVME001          
    MM06E001          
    MM06E003          
    MM06E004          
    MM06E005          
    MM06E007          
    MM06E008          
    MM06E009          
    MM06E010          
    MMAL0001          
    MMAL0002          
    MMAL0003          
    MMAL0004          
    MMDA0001          
    MMFAB001     
    Regards
    praveen

  • User exit for item level in PO

    Hi:
    Once we create a PO based on PR. I should not be able to change the net price. I need to through a ERROR MESSAGE.
    The price of PR and PO Shuold be same. Used should not change the net price, If he tries to change it, A error msg should be thrown.
    Please let me know the Correct User Exit for this.
    Thanks
    Senthil

    Hi,
    Please check sample program to find user exits available for a given transaction code.
    REPORT z_find_userexit NO STANDARD PAGE HEADING.
    *&  Enter the transaction code that you want to search through in order
    *&  to find which Standard SAP User Exits exists.
    *& Tables
    TABLES : tstc,     "SAP Transaction Codes
             tadir,    "Directory of Repository Objects
             modsapt,  "SAP Enhancements - Short Texts
             modact,   "Modifications
             trdir,    "System table TRDIR
             tfdir,    "Function Module
             enlfdir,  "Additional Attributes for Function Modules
             tstct.    "Transaction Code Texts
    *& Variables
    DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
    DATA : field1(30).
    DATA : v_devclass LIKE tadir-devclass.
    *& Selection Screen Parameters
    SELECTION-SCREEN BEGIN OF BLOCK a01 WITH FRAME TITLE text-001.
    SELECTION-SCREEN SKIP.
    PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN END OF BLOCK a01.
    *& Start of main program
    START-OF-SELECTION.
    Validate Transaction Code
      SELECT SINGLE * FROM tstc
        WHERE tcode EQ p_tcode.
    Find Repository Objects for transaction code
      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 = enlfdir-area.
            MOVE : tadir-devclass TO v_devclass.
          ENDIF.
        ENDIF.
    Find SAP Modifactions
        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.
    Take the user to SMOD for the Exit that was selected.
    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.
    or
    Enhancement
    MEVME001 WE default quantity calc. and over/ underdelivery tolerance
    MM06E001 User exits for EDI inbound and outbound purchasing documents
    MM06E003 Number range and document number
    MM06E004 Control import data screens in purchase order
    MM06E005 Customer fields in purchasing document
    MM06E007 Change document for requisitions upon conversion into PO
    MM06E008 Monitoring of contr. target value in case of release orders
    MM06E009 Relevant texts for "Texts exist" indicator
    MM06E010 Field selection for vendor address
    MM06E011 Activate PReq Block
    MMAL0001 ALE source list distribution: Outbound processing
    MMAL0002 ALE source list distribution: Inbound processing
    MMAL0003 ALE purcasing info record distribution: Outbound processing
    MMAL0004 ALE purchasing info record distribution: Inbound processing
    MMDA0001 Default delivery addresses
    MMFAB001 User exit for generation of release order
    MRFLB001 Control Items for Contract Release Order
    AMPL0001 User subscreen for additional data on AMPL
    LMEDR001 Enhancements to print program
    LMELA002 Adopt batch no. from shipping notification when posting a GR
    LMELA010 Inbound shipping notification: Transfer item data from IDOC
    LMEQR001 User exit for source determination
    LMEXF001 Conditions in Purchasing Documents Without Invoice Receipt
    LWSUS001 Customer-Specific Source Determination in Retail
    M06B0001 Role determination for purchase requisition release
    M06B0002 Changes to comm. structure for purchase requisition release
    M06B0003 Number range and document number
    MEQUERY1 Enhancement to Document Overview ME21N/ME51N
    MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
    MEFLD004 Determine earliest delivery date f. check w. GR (only PO)
    MEETA001 Define schedule line type (backlog, immed. req., preview)
    ME590001 Grouping of requsitions for PO split in ME59
    M06E0005 Role determination for release of purchasing documents
    M06E0004 Changes to communication structure for release purch. doc.
    M06B0005 Changes to comm. structure for overall release of requisn.
    M06B0004 Number range and document number
    Business Add-in
    ME_PROCESS_REQ_CUST Enhancements for Processing Enjoy PReqs: Customer
    ME_PROCESS_REQ Enhancements for Processing Enjoy PReqs: Internal
    ME_PROCESS_PO_CUST Enhancements for Processing Enjoy Purchase Order: Customer
    ME_PROCESS_PO Enhancements for Processing Enjoy Purchase Order: Intern.
    ME_PROCESS_COMP Processing of Component Default Data at Time of GR: Custome
    ME_PO_SC_SRV BAdI: Service Tab Page for Subcontracting
    ME_PO_PRICING_CUST Enhancements to Price Determination: Customer
    ME_PO_PRICING Enhancements to Price Determination: Internal
    ME_INFOREC_SEND Capture/Send Purchase Info Record Changes - Internal Use
    ME_HOLD_PO Hold Enjoy Purchase Orders: Activation/Deactivation
    ME_GUI_PO_CUST Customer's Own Screens in Enjoy Purchase Order
    ME_FIELDSTATUS_STOCK FM Account Assignment Behavior for Stock PR/PO
    ME_DP_CLEARING Clearing (Offsetting) of Down Payments and Payment Requests
    ME_PURCHDOC_POSTED Purchasing Document Posted
    SMOD_MRFLB001 Control Items for Contract Release Order
    EXTENSION_US_TAXES Extended Tax Calculation with Additional Data
    ARC_MM_EKKO_WRITE BAdI: Enhancement of Scope of Archiving (MM_EKKO)
    ARC_MM_EKKO_CHECK BAdI: Enhancement of Archivability Check (MM_EKKO)
    MM_EDI_DESADV_IN Supplementation of Delivery Interface from Purchase Order
    MM_DELIVERY_ADDR_SAP Determination of Delivery Address
    ME_WRF_STD_DNG PO Controlling Reminder: Extension to Standard Reminder
    ME_TRIGGER_ATP Triggers New ATP for Changes in EKKO, EKPO, EKPV
    ME_TRF_RULE_CUST_OFF BADI for Deactivation of Field T161V-REVFE
    ME_TAX_FROM_ADDRESS Tax jurisdiction code taken from address
    ME_REQ_POSTED Purchase Requisition Posted
    ME_REQ_OI_EXT Commitment Update in the Case of External Requisitions
    ME_RELEASE_CREATE BAdI: Release Creation for Sched.Agrmts with Release Docu.
    ME_DEFINE_CALCTYPE Control of Pricing Type: Additional Fields
    ME_CHANGE_OUTTAB Enrich ALV Output Table in Purchasing
    ME_CHANGE_CHARACTER Customer-Specific Characteristics for Product Allocation
    ME_CCP_DEL_DURATION Calc. of Delivery Duration in CCP Process (Not in Standard)
    ME_CCP_BESWK_AUTH_CH BAdI for authorization checks for procuring plant
    ME_CCP_ACTIVE_CHECK BAdI to check whether CCP process is active
    ME_BSART_DET Change document type for automatically generated POs
    ME_BAPI_PR_CREATE_02
    ME_BAPI_PR_CREATE_01
    ME_BAPI_PO_CREATE_02
    ME_BAPI_PO_CREATE_01
    ME_BADI_DISPLAY_DOC BAdI for Internal Control of Transaction to be Invoked
    ME_ACTV_CANCEL_PO BAdI for Activating the Cancel Function at Header Level
    MEGUI_LAYOUT BAdI for Enjoy Purchasing GUI
    ME_CHECK_ALL_ITEMS Run Through Items Again in the Event of Changes in EKKO
    ME_COMMTMNT_REQ_RE_C Check of Commitment Relevance of Purchase Requisitions
    ME_COMMTMNT_REQ_RELE Check of Commitment Relevance of Purchase Requisitions
    ME_COMMTMNT_PO_REL_C Check for Commitment-Relevance of Purchase Orders
    ME_COMMTMNT_PO_RELEV Check for Commitment-Relevance of Purchase Orders
    ME_COMMITMENT_STO_CH BadI for checking if commitments for STOs are active
    ME_COMMITMENT_RETURN Commitment for return item
    ME_CIP_REF_CHAR Enables Reference Characteristics in Purchasing
    ME_CIP_ALLOW_CHANGE Configuration in Purchasing: Changeability Control
    ME_CIN_MM06EFKO Copy PO data for use by Country version India
    ME_CIN_LEINRF2V BADI for LEINRF03 excise_invoice_details
    ME_CIN_LEINRF2R BADI for CIN India - Delivery charges
    ME_CHECK_SOURCES Additional Checks in Source Determination/Checking
    ME_CHECK_OA Check BAdI for Contracts
    Reward if helpful.
    Regards,
    Harini.S

  • User exit for changing Sales order lines.

    Hello experts ,
    I want to delete the field "ROUTE" from all of the orders lines in sales orders, I have been using "USEREXIT_SAVE_DOCUMENT_PREPARE"  but it does not seems to do the job.
    What is the name of  user exit that i have to use for this task and which structure should be used,  is it xvbap ? is it vbap ?
    Thanks for the help.
    Avi.

    Hi,
    find the user exit u required.
    This IMG step describes additional installation-specific processing in sales document processing. In particular, the required INCLUDES and user exits are described.
    Involved program components
    System modifications for sales document processing affect different areas. Depending on the modification, you make the changes in the program components provided:
    MV45ATZZ
    For entering metadata for sales document processing. User-specific metadata must start with "ZZ".
    MV45AOZZ
    For entering additional installation-specific modules for sales document processing which are called up by the screen and run under PBO (Process Before Output) prior to output of the screen. The modules must start with "ZZ".
    MV45AIZZ
    For entering additional installation-specific modules for sales document processing. These are called up by the screen and run under PAI (Process After Input) after data input (for example, data validation). The modules must start with "ZZ".
    MV45AFZZ and MV45EFZ1
    For entering installation-specific FORM routines and for using user exits, which may be required and can be used if necessary. These program components are called up by the modules in MV45AOZZ or MV45AIZZ.
    User exits in the program MV45AFZZ
    The user exits which you can use for modifications in sales document processing are listed below.
    USEREXIT_DELETE_DOCUMENT
    This user exit can be used for deleting data which was stored in a separate table during sales document creation, for example, if the sales document is deleted.
    For example, if an additional table is filled with the name of the person in charge (ERNAM) during order entry, this data can also be deleted after the sales order has been deleted.
    The user exit is called up at the end of the FORM routine BELEG_LOESCHEN shortly before the routine BELEG_SICHERN.
    USEREXIT_FIELD_MODIFICATION
    This user exit can be used to modify the attributes of the screen fields.
    To do this, the screen fields are allocated to so-called modification groups 1 - 4 and can be edited together during a modification in ABAP. If a field has no field name, it cannot be allocated to a group.
    The usage of the field groups (modification group 1-4) is as follows:
    Modification group 1: Automatic modification with transaction MFAW
    Modification group 2: It contains 'LOO' for step loop fields
    Modification group 3: For modifications which depend on check tables or on other fixed information
    Modification group 4: is not used
    The FORM routine is called up for every field of a screen. If you require changes to be made, you must make them in this user exit.
    This FORM routine is called up by the module FELDAUSWAHL.
    See the Screen Painter manual for further information on structuring the interface.
    USEREXIT_MOVE_FIELD_TO_VBAK
    Use this user exit to assign values to new fields at sales document header level. It is described in the section "Transfer of the customer master fields into the sales document".
    The user exit is called up at the end of the FORM routine VBAK_FUELLEN.
    USEREXIT_MOVE_FIELD_TO_VBAP
    Use this user exit to assign values to new fields at sales document item level. It is described in the section "Copy customer master fields into the sales document".
    The user exit is called up at the end of the FORM routine VBAP_FUELLEN.
    USEREXIT_MOVE_FIELD_TO_VBEP
    Use this user exit to assign values to new fields at the level of the sales document schedule lines.
    The user exit is called up at the end of the FORM routine VBEP_FUELLEN.
    USEREXIT_MOVE_FIELD_TO_VBKD
    Use this user exit to assign values to new fields for business data of the sales document. It is described in the section "Copy customer master fields into sales document".
    The user exit is called up at the end of the FORM routine VBKD_FUELLEN.
    USEREXIT_NUMBER_RANGE
    Use this user exit to define the number ranges for internal document number assignment depending on the required fields. For example, if you want to define the number range depending on the sales organization (VKORG) or on the selling company (VKBUR), use this user exit.
    The user exit is called up in the FORM routine BELEG_SICHERN.
    USEREXIT_PRICING_PREPARE_TKOMK
    Use this user exit if you want to include and assign a value to an additional header field in the communication structure KOMK taken as a basis for pricing.
    USEREXIT_PRICING_PREPARE_TKOMP
    Use this user exit if you want to include or assign a value to an additional item field in the communication structure KOMP taken as a basis for pricing.
    USEREXIT_READ_DOCUMENT
    You use this user exit if further additional tables are to be read when importing TA01 or TA02.
    The user exit is called up at the end of the FORM routine BELEG_LESEN.
    USEREXIT_SAVE_DOCUMENT
    Use this user exit to fill user-specific statistics update tables.
    The user exit is called up by the FORM routine BELEG-SICHERN before the COMMIT command.
    Note
    If a standard field is changed, the field r185d-dataloss is set to X. The system queries this indicator at the beginning of the safety routine. This is why this indicator must also be set during the maintenance of user-specific tables that are also to be saved.
    USEREXIT_SAVE_DOCUMENT_PREPARE
    Use this user exit to make certain changes or checks immediately before saving a document. It is the last possibility for changing or checking a document before posting.
    The user exit is carried out at the beginning of the FORM routine BELEG_SICHERN.
    User exits in the program MV45AFZA
    USEREXIT_MOVE_FIELD_TO_KOMKD
    Use this user exit to include or assign values to additional header fields in the communication structure KOMKD taken as a basis for the material determination. This is described in detail in the section "New fields for material determination".
    USEREXIT_MOVE_FIELD_TO_KOMPD
    Use this user exit to include or assign values to additional item fields in the communication structure KOMPD taken as a basis for the material determination. This is described in detail in the section "New fields for material determination".
    USEREXIT_MOVE_FIELD_TO_KOMKG
    Use this user exit to include or assign values to additional fields in the communication structure KOMKG taken as a basis for material determination and material listing. This is described in detail in the section "New fields for listing/exclusion".
    USEREXIT_MOVE_FIELD_TO_KOMPG
    Use this user exit to include or assign values to additional fields in the communication structure KOMPG taken as a basis for material determination and material listung. This is described in detail in the section "New fields for listing/exclusion".
    USEREXIT_REFRESH_DOCUMENT
    With this user exit, you can reset certain customer-specific fields as soon as processing of a sales document is finished and before the following document is edited.
    For example, if the credit limit of the sold-to party is read during document processing, in each case it must be reset again before processing the next document so that the credit limit is not used for the sold-to party of the following document.
    The user exit is executed when a document is saved if you leave the processing of a document with F3 or F15.
    The user exit is called up at the end of the FORM routine BELEG_INITIALISIEREN.
    User-Exits in program MV45AFZB
    USEREXIT_CHECK_XVBAP_FOR_DELET
    In this user exit, you can enter additional data for deletion of an item. If the criteria are met, the item is not deleted (unlike in the standard system).
    USEREXIT_CHECK_XVBEP_FOR_DELET
    In this user exit, you can enter additional data for deletion of a schedule line. If the criteria are met, the schedule line is not deleted (unlike in the standard system).
    USEREXIT_CHECK_VBAK
    This user exit can be used to carry out additional checks (e.g. for completion) in the document header. The system could, for example, check whether certain shipping conditions are allowed for a particular customer group.
    USEREXIT_CHECK_VBAP
    This user exit can be used to carry out additional checks (e.g. for completion) at item level.
    USEREXIT_CHECK_VBKD
    The user exit can be used to carry out additional checks (e.g. for completion) on the business data in the order.
    USEREXIT_CHECK_VBEP
    This user exit can be use to carry out additional checks (e.g. for completion) on the schedule line. During BOM explosion, for example, you may want certain fields to be copied from the main item to the sub-items (as for billing block in the standard system).
    USEREXIT_CHECK_VBSN
    You can use this user exit to carry out additional checks (e.g. for completion) on the serial number.
    USEREXIT_CHECK_XVBSN_FOR_DELET In this user exit, you can enter additional criteria for deletion of the serial number. If the criteria are met, the serial number is not deleted (unlike in the standard system).
    USEREXIT_FILL_VBAP_FROM_HVBAP
    You can use this user exit to fill additional fields in the sub-item with data from the main item.
    USEREXIT_MOVE_FIELD_TO_TVCOM_H
    You can use this user exit to influence text determination for header texts. For example, you can include new fields for text determination or fill fields that already exist with a new value.
    USEREXIT_MOVE_FIELD_TO_TVCOM_I
    You can use this user exit to influence text determination for item texts. For example, you can include new fields for text determination or fill fields that already exist with a new value.
    User-Exits for product allocation:
    The following user exits all apply to structure COBL, in which the data for account determination is copied to item level.
    USEREXIT_MOVE_FIELD_TO_COBL
    Option to include new fields in structure COBL.
    USEREXIT_COBL_RECEIVE_VBAK
    Option to assign values from the document header to the new fields.
    USEREXIT_COBL_RECEIVE_VBAP
    Option to supply values from the item to the new fields.
    USEREXIT_COBL_SEND_ITEM
    A changed field can be copied from the structure into the item. You could use the user exit to display a certain field in the account assignment block (see also MV45AFZB).
    USEREXIT_COBL_SEND_HEADER
    A changed field can be copied from the structure to the header (see source text MV45AFZB)
    USEREXIT_SOURCE_DETERMINATION
    You can use this user exit to determine which plant will be used for the delivery. In the standard system, the delivering plant is copied from the customer master or the customer-material info record. If you want to use a different rule, then you must enter it in this user exit.
    USEREXIT_MOVE_FIELD_TO_ME_REQ
    With this user exit you can include additional fields for the following fields:
    EBAN (purchase requisition)
    EBKN (purchase requisition-account assignment)
    USEREXIT_GET_FIELD_FROM_SDCOM
    Option to include new fields for the variant configuration. Fields that are included in structure SDCOM can be processed and then returned to the order.
    USEREXIT_MOVE_WORKAREA_TO_SDWA
    You can use this user exit to format additional work areas for the variant configuration. You will find notes on the user exit in MV45AFZB.
    User-Exits for first data transfer:
    The following user exits can only be used for the first data transfer.
    Note
    Only use the user exits if the names/fields do NOT have the same name.
    USEREXIT_MOVE_FIELD_TO_VBAKKOM
    Option to include additional fields in structure VBAKKOM (communiction fields for maintaining the sales document header)
    USEREXIT_MOVE_FIELD_TO_VBAPKOM
    Option to include additional fields in structure VBAPKOM (communication fields for maintaining a sales item)
    USEREXIT_MOVE_FIELD_TO_VBEPKOM
    Option to include additional fields in structure VBEPKOM (communication fields for maintaining a sales document schedule line)
    USEREXIT_MOVE_FIELD_TO_VBSN
    You can use this user exit to include fields in structure VBSN (scheduling agreement-related change status).
    USEREXIT_MOVE_FIELD_TO_KOMKH
    You can use this user exit to include new fields for batch determination (document header).
    USEREXIT_MOVE_FIELD_TO_KOMPH
    You can use this user exit to include new fields for batch determination (document item).
    USEREXIT_CUST_MATERIAL_READ
    You can use this user exit to set another customer number in the customer material info record (e.g. with a customer hierarchy)
    USEREXIT_NEW_PRICING_VBAP
    Option for entry of preconditions for carrying out pricing again (e.g. changes made to a certain item field could be used as the precondition for pricing to be carried out again). Further information in MV45AFZB.
    USEREXIT_NEW_PRICING_VBKD
    Option for entry of preconditions for carrying out pricing again (e.g. changes to the customer group or price group could be set as the preconditions for the system to carry out pricing again). Further information in MV45AFZB.
    User-Exits in Program MV45AFZD
    USEREXIT_CONFIG_DATE_EXPLOSION
    The BOM is exploded in the order with the entry date. You can use this user exit to determine which data should be used to explode the BOM (explosion with required delivery date, for example).
    User exits in the program FV45EFZ1
    USEREXIT_CHANGE_SALES_ORDER
    In the standard SAP R/3 System, the quantity and confirmed date of the sales document schedule line is changed automatically if a purchase requisition is allocated, and it or the sales document is changed (for example, quantity, date).
    If you want to change this configuration in the standard system, you can define certain requirements in order to protect your sales orders from being changed automatically. Use this user exit for this purpose. Decide at this point whether the schedule lines are to be changed.
    User-Exits in Program RV45PFZA
    USEREXIT_SET_STATUS_VBUK
    In this user exit you can you can store a specification for the reserve fields in VBUK (header status). Reserve field UVK01 could, for example, be used for an additional order status (as for rejections status, etc.).
    The following workareas are available for this user exit:
    VBUK (header status)
    FXVBUP (item status)
    FXVBUV (Incompletion)
    USEREXIT_SET_STATUS_VBUP
    In this user exit you can you can store a specification for the reserve fields for VBUP (item status).
    The following workareas are available for this user exit:
    FXVBAP (Item data)
    FXVBAPF (Dynamic part of order item flow)
    FXVBUV (Incompletion)
    USEREXIT_STATUS_VBUK_INVOICE
    You can use this user exit to influence billing status at header level.
    User exits in the screens
    Additional header data is on screen SAPMV45A 0309, additional item data on screen SAPMV45A 0459. These screens contain the Include screens SAPMV45A 8309 or SAPMV45A 8459 as user exits.
    Fields which are also to be included in the sales document for a specific installation should be included on the Include screens for maintaining. If an application-specific check module is needed for the fields, this can be included in the Include MV45AIZZ. The module is called up in the processing logic of the Include screens.
    For field transports, you do not have to make changes or adjustments.
    Example
    A new field, VBAK-ZZKUN, should be included in table VBAK.
    If the check is defined via the Dictionary (fixed values or check table) the field must be included with the fullscreen editor in the Include screen SAPMV45A 8309. In this case, no change has to be made to the processing logic.
    User Exits in Program MV45AFZ4
    USEREXIT_MOVE_FIELD_TO_KOMK
    You can use this user exit to add or edit additional header fields in the communication structure - KOMK- for free goods determination. For more information, see the New Fields for Free Goods Determination IMG activity.
    USEREXIT_MOVE_FIELD_TO_KOMP
    You can use this user exit to add or edit additional item fields in the communication structure KOMP for free goods determination. For more information see the New Fields for Free Goods Determination IMG activity.
    User Exits in the SAPFV45PF0E and SAPFV45PF0C Programs
    EXIT_SAPFV45P_001
    Best regards,
    venkatawamy.y

Maybe you are looking for