User exit in sales document processing

Hi Friends,
My requirement is to add new sub items to the sales order with the reference to the item entered while saving the document. I have added the sub items to the respective tables XVBAP, XVBEP and XKOMV. This works great in transaction VA01 but when I change the main item of same document in VA02, the changes have to reflect in the sub items. But the changes are not reflected. Please some body help me in this regard.
Thanx in advance,
Ram

Hi Ram
I also use 'USEREXIT_SAVE_DOCUMENT_PREPARE in similar solution.
First of all you should make sure (debug) that your code is also executed when called from VA02. That is the normal case, but you may have some conditions in the code (if or case or ..) that cause an exit from the userexit.
And I will repete from my first answer: Please make sure that changes in XVBAP, XV.... are made according to OSS note 50551.
The methode of OSS note 50551 suggest that you don't update XVBAP etc. but directly in VBAP etc.
Ex.:
   loop at xvbap where updkz ne updkz_delete.              "OSS 50551 
     svbap-tabix = sy-tabix.                                           "OSS 50551 
     perform vbap_bearbeiten_vorbereiten(sapfv45p).        "OSS 50551 
     perform vbap_fuellen(sapfv45p).                               "OSS 50551 
     if vbak-vgtyp = 'G'.                                     "Custom code        
       vbkd-kurrf = vbkd-kursk.                           "Custom code                    
     else.                                                        "Custom code                    
       vbkd-kursk = vbkd-kurrf.                           "Custom code                    
     endif.                                                       "Custom code                    
     vbap-someotherfield = 'X'.                           "Custom code
     perform vbap_bearbeiten(sapfv45p).                          "OSS 50551 
     perform vbap_bearbeiten_ende(sapfv45p).                 "OSS 50551 
   endloop.                                                                  "OSS 50551 
Plase also consider other actions needed depending on what field you change. I.e. an other thread in this forum says:
"if you override the plant at the time of order save - you have to redetermine shipping point & route based on new plant."
Good luck
Thomas Madsen Nielsen

Similar Messages

  • Update vbup/vbuk from user-exit for sales document

    Dear All.
    Is it possible to update the sales document status for an item (vbup) from a user exit , customer function, badi, or other, in the billing document?
    We'd like to make the control of updating the status tables dynamic, rather than based on the confiuration for an exception process.
    For example, when service item (order related billing) is partially billed, depending on some conditions we would set the sales order service item to fully invoiced. 
    In this case vbup-FKSAA = C.
    Many thanks!

    There is a BAdI LE_SHP_ITEM_STATUS that can change the item status in VBUP. Be sure to read the documentation first. It states
    If you use this BAdI to change the delivery item status that was set in delivery
    processing, it can affect further processing of the delivery extensively, and
    lead to data inconsistencies. Therefore, SAP recommends that you only use
    the BAdI to modify your own status fields.
    Regards,
    Brenda

  • What are the User Exits for Sales Order creation process?

    Hi,
    what are the User Exits for Sales Order creation process? how can I find them?
    thanks in advance,
    will reward,
    Mindaugas

    Please check this info:
    User Exits In Sales Document Processing
    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
    You can use this user exit to decide whether intercompany billing data is used in the profitability segment for cross-company code sales, or whether the data comes from external billing (external customer, sales data from the selling company code.
    Regards
    Eswar

  • User exits for sales order

    Dear all SAP experts,
    How to find out the user exits for sales document type? Especially the user exits which are called when we save the sales order.
    With best regards,
    Allabaqsh G. Patil

    Hi,
    Also there is user exit to refresh data
    USEREXIT_REFRESH_DOCUMENT
           It is always necessary to refresh user-specific data before   *
          the next document will be processed.                          *
          This can be done in this userexit.                            *
          This userexit can be used to refresh user-specific data       *
          when the processing of a sales document is finished           *
          - after the document is saved                                 *
          - when you leave the document processing with F3 or F15       *
          It may be necessary to refresh user-specific data before      *
          the next document will be processed.                          *

  • In FBL5N report user wants the sales document number to be displayed,

    HI, Guys
    Need ur help to sort out the problem
    In FBL5N report user wants the sales document number to be displayed,
    but the sales ducument number column is coming blank and this needs to pick from VBRP table
    As I discussed with Abaper, he reqiures a key field which common in BSEG abd VBRP table
    So,Please guide me in approaching the right way
    Munender

    Hi,
        Speak with your SD consultant. They can set up the copy control in SD so that the sales order is populated in the invoice in field ZUONR (Assignment).This will then copy to the assignment field in accounting.
    Alternatively you can use an exit to populate another field during the Posting.
    Kind regards

  • Field Exit for Sales Document Type in VA01

    hi
       i want to do field exit for Sales Document Type in VA01.
    but i dont know to find the correct exit.
    pls tell the exit name and the steps to find it.
    thank u

    Hi,
    Goto this link u will get the information u required....
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/9cd334f3-0a01-0010-d884-f56120039915
    Check the numerous threads that already exist in SDN :
    CMOD and SMOD
    http://www.sap-img.com/abap/what-is-user-exits.htm
    Regards,
    Manish

  • User exit for FI document

    Hi All,
    I need a user exit for FI document posting.
    My purpose is based on types of G/L accounts i need to add line item data to FI document.(i.e.,inserting into BSEG table )
    Can you please suggest me the user exir.
    Thanks and regards
    Praveen

    Transaction Code - FB01                     Post Document                                    
    Exit Name           Description                                                                               
    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 send                
    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                   
    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)                      
    If you know tcode then you can find out user exits associated with the same with the following code:
    *& Report  ZUSEREXIT                                                   *
    *& Finding the user-exits of a SAP transaction code                    *
    *& Enter the transaction code in which you are looking for the         *
    *& user-exit and it will list you the list of user-exits in the        *
    *& transaction code. Also a drill down is possible which will help you *
    *& to branch to SMOD.                                                  *
    REPORT zuserexit NO STANDARD PAGE HEADING.
    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.
    I hope it helps.
    Best Regards,
    Vibha
    *Please mark all the helpful answers

  • User Exit after posting document (FB01)

    Dear all,
    I want to change the BSEG entries based on a mapping table.
    Is there any User Exit after posting document. I debuged long time and couldnt find any User Exit where u can change the BSEG.
    Thank u very much!
    best regards

    thank u for ur answer. I know it but not really! I know there is also an option. But my question here:
    -> Is here no User Exit where I can change the BSEG?
    -> It is possible to write a normal ABAP code in the substitution?
    Thank u very much

  • User exit for sales order - schedule lines

    Hi all,
    I have requirement in SO, that user has not to change the scheduled lines date and quantity in va01, va02.
    I could find FV45EFZ1 as the include program for this and the value of CH_SUBRC should set to > 0.
    But i put break point here and the control wont come to the line. Anyone can help me to find the correct user exit ?
    Thanks and regards
    Jijo

    hii
    Exit Name Description
    SDTRM001 Reschedule schedule lines without a new ATP check
    V45A0001 Determine alternative materials for product selection
    V45A0002 Predefine sold-to party in sales document
    V45A0003 Collector for customer function modulpool MV45A
    V45A0004 Copy packing proposal
    V45E0001 Update the purchase order from the sales order
    V45E0002 Data transfer in procurement elements (PRreq., assembly)
    V45L0001 SD component supplier processing (customer enhancements)
    V45P0001 SD customer function for cross-company code sales
    V45S0001 Update sales document from configuration
    V45S0003 MRP-relevance for incomplete configuration
    V45S0004 Effectivity type in sales order
    V45W0001 SD Service Management: Forward Contract Data to Item
    V46H0001 SD Customer functions for resource-related billing
    V60F0001 SD Billing plan (customer enhancement) diff. to billing plan
    SDAPO001 Activating Sourcing Subitem Quantity Propagation
    put a break point int he user exit and check.
    hope , this will solve ur problem.
    Regards,
    sabarinathan.L

  • Reg:User-Exit In Sales Order to Invoice

    Hi All,
    I have An requirement that to create automatic sales order and invoice  in one go, i have used BAPI_SALESORDER_CREATEFROMDAT2 to create sales order and bdc invoice to create invoice its worked fine.
    My problem is now i got an requirement as after creating sales order it should not create invoice as such because they will manually check whether the sales order is correct then only i should proceed to invoice also they need the option to create,change,delete sales order and same too invoice how can i acheive this scenario through user exits?
    Since am new to user exit can any one tell me how to use user exits and what user exits need like this scenario?

    Hi Suresh,
    For sales order following user exits can be used. These are available in include MV45AFZZ.
    USEREXIT_DELETE_DOCUMENT : At the time of deletion of sales order
    USEREXIT_SAVE_DOCUMENT : At the time of updations or creation of sales order.
    Following are the user exits available in smod.
    SDVFX007  User exit: Billing plan during transfer to Accounting
    SDVFX008  User exit: Processing of transfer structures SD-FI
    SDVFX009  Billing doc. processing KIDONO (payment reference numbe
    SDVFX010  User exit item table for the customer lines
    SDVFX011  Userexit for the komkcv- and kompcv-structures
    V05I0001  User exits for billing index
    V05N0001  User Exits for Printing Billing Docs. using POR Procedu
    V60A0001  Customer functions in the billing document
    V60P0001  Data provision for additional fields for display in lis
    V61A0001  Customer enhancement: Pricing
    Please check this exits which will help you for your requirement.
    Thanks,
    Naveen Kumar.

  • User Exit during Sales Order Creation - New Line Item needed

    I have a situation during the process of sales order creation. If a Material in a line item has say 27 EA and the Base Unit is EA. But the Sales Unit is CSE. Then whenever the user enters 27 EA and presses enter he should get two line items.
    The first line item needs to convert to maximum number of CSE posible and the rest will be the second line item with the remaining EA. The order isn't important but that is what is needed. Question is how do I approach this problem and code my user exit accordingly and where do I code it.
    I was looking at SAPMV45A and saw the program MV45AIZZ which is meant as a user exit for any PAI event handling. If anybody has encountered this kind of requirement can you please share your view on this.
    I will definitely reward points for useful answers.
    Clark

    Hello Mahendra
    The requirement is as follows :
    PART 1:
    Sales Order Enter: 
    1.     When a line item is entered on a sales order (VA01 or VA02), at enter, check the sales unit of measure (VBAP-VRKME).
    •     Do not check line items where item category (VBAP-PSTYV) = TANN, TAPS or ZTAP.  TANN are free goods that should not be considered for consolidation.  TAPS & ZTAP are lower level materials as a result of product selection.  They will be attached to a higher-level material with an item category of TAX, which is relevant for consolidation.
    •     Do not check items where VRKME <> EA
    2.     If VRKME = EA, go to MARM for MATNR.
    3.     Go to record where alternate unit of measure (MEINH) = CSE, get the value from the numerator field (UMREZ).
    4.     Divide the order quantity (VBEP-WMENG) by UMREZ.
    5.     If the result is greater than 1.0, the customer has ordered more than one case and a new line item needs to be added to the sales order for the case quantity.
    6.     Add a new line to VBAP for the same material with the case quantity.  If not a whole value, the remainder of eaches (bottles) should update the qty on the first item on VBAP.
    •     Part 1 is relevant for order types ZCA, ZOR, ZSO, RE, ZSM
    PART 2:
    Batch Job to run prior to the Delivery Due List:
    1.     Read VBUK for Delivery Status (LFSTK) = A (delivery not processed).  Get all of the document numbers (VBELN).
    2.     Go to VBEP for those document numbers to get the goods issue date for the order.  There will be many records in VBEP for the same sales order.  Look at all orders with a goods issue date (WADAT) of next day.
    3.     Go to VBAK for those document numbers to see if there are multiple sales orders for the same Sold To party (KUNNR).
    4.     For customers who have more than one order in VBAK, search all line items (for all orders).  If there are no duplicate materials across sales orders, do nothing.
    •     Do not check line items where item category (VBAP-PSTYV) = TANN, TAPS or ZTAP.  TANN are free goods that should not be considered for consolidation.  TAPS & ZTAP are lower level materials as a result of product selection.  They will be attached to a higher-level material with an item category of TAX, which is relevant for consolidation.
    •     Do not check line items where reason for rejection (VBAP-ABGRU) is not blank
    5.     If there are duplicate materials, go through the same logic as in part 1.  If the quantity across the sales orders adds up to greater than one case, add the appropriate quantity to a new line item on the first sales order.   If there is a remainder qty, update the line item on the first sales order with this qty. In this case, the quantities on the second sales order needs to be closed out with a reason for rejection code of 50, ‘Line Item Consolidation’. If there is no remainder,  update the qty on this item directly.
    •     Part 2 is relevant for order types ZOR, ZCA, ZSM
    •     This batch job will have to be run manually for Day Pick orders.  The end of this program should automatically kick off the delivery due list for Day Pick orders, shipping condition 02.
    Business Justification:
    The business requires that like order line items be consolidated to one line item prior to the order going to the warehouse for picking.  This will aid in picking at the warehouse as well as result in the customer invoice not reflecting more than one line item for the same material.  In the case where the customer has truly ordered more than a case, i.e;, 1 case, 2 bottles, the documents in SAP will still reflect 2 lines.

  • User exits for Sales Order Data

    Hi,
    May i ask if there's any user exit that will get data from Sales order like ex. the order qty and the net price and pass to SHP_OBDLV_SAVE_REPLICA like ex in the segment  E1BPOBDLVITEMRFO of delivery note.
    or get the commodity code (STAWN) from MatMas and pass also to SHP_OBDLV_SAVE_REPLiCA
    Thanks in advance..
    aileen

    These are the user exits for VA01
    V45E0001 Update the purchase order from the sales order
    V45S0001 Update sales document from configuration
    V45S0004 Effectivity type in sales order
    V45W0001 SD Service Management: Forward Contract Data to Item
    V45A0001 Determine alternative materials for product selection
    V45A0002 Predefine sold-to party in sales document
    V45A0003 Collector for customer function modulpool MV45A
    V45A0004 Copy packing proposal
    V45E0002 Data transfer in procurement elements (PRreq., assembly)
    V45L0001 SD component supplier processing (customer enhancements)
    Use this also USEREXIT_SAVE_DOCUMENT
    Regards,
    Shamma

  • User exit for sales order creation VA01.

    Hi friends,
    While creating Sales order, before saving the document, I need to check the Customer (Sold to pary?) details in KNEX table. KNEX-KUNNR  KNEX-TDOCO KNEX-DHRCO. if condition fails, I need to display an error message V1525,
    which should contain
    1)customer(sold-to -party?KNEX-KUNNR)
    2)partner function PARVW  (VBPA-PARVW?)
    3)country LNDEX KNEX-LNDEX
    Functional spec says, 1)V45A0002
                                  2)V45A0003
                                  3)V45S0001
                                  4)V50EPROP User exits can be levaraged.
    1)triggers before we enter customer (sold-to-party) in VA01. so may not be used.
    remaining i tried, but I am not able to get the proper PARVW, LNDEX from function module parameters / structures like VBAP/VBPA etc.
    Please help me the way.
    i) the above user exits can be used?if not, help me with user exit name.
    ii)if yes, how to fetch PARVW  , LNDEX, KUNNR...as all the primary keys must be used in the selection query.
    Please help me ASAP.

    Hi,
    Use this enhancement V45A0002.
    Reward points if it helps,
    Satish

  • MIRO user exit  at material document creation

    I need to find out where or how material documents are created.  Right now we have one material document per day per invoice so a single document can have many payments made against it (if they are made in the same day).  What I need to do is change it so that each payment has its own material document.  If you have 3 payments against invoice 001 in the same day then you have three material documents against that invoice instead of just one.
    I am assuming this is done, or can be changed, in a user exit.  If not is this a configuration issue?
    Regards,
    Davis

    Here is the list of User Exits and BADIs for MIRO.
    Enhancement/ Business Add-in            Description
    Enhancement
    LMR1M001                                User exits in Logistics Invoice Verification
    LMR1M002                                Account grouping for GR/IR account maintenance
    LMR1M003                                Number assignment in Logistics Invoice Verification
    LMR1M004                                Logistics Invoice Verification: item text for follow-on docs
    LMR1M005                                Logistics Inv. Verification: Release Parked Doc. for Posting
    LMR1M006                                Logistics Invoice Verification: Process XML Invoice
    MRMH0001                                Logistics Invoice Verification: ERS procedure
    MRMH0002                                Logistics Invoice Verification: EDI inbound
    MRMH0003                                Logistics Invoice Verification: Revaluation/RAP
    MRMN0001                                Message output and creation: Logistics Invoice Verification
    Business Add-in
    INVOICE_UPDATE                          Business Add-In: Logistics Invoice Verification

  • User exit during VF04 background process

    Hi ,
    I am creating billing through the background run of VF04.
    Before a billing document is created I have to check the following condition.
    If the payment terms of the relevant billing item not equal to 'X' then system shoudl check the billing date and only create billing document if the date is equal to system date.
    If the payment terms is equal to 'X' then billing document should be created.
    I am plannign to use the userexit RV60AFZC and in there
    FORM USEREXIT_FILL_VBRK_VBRP
    I tried to find out of this user exit was called during background processing of VF04 by putting ina breakpoint. It did not give any pop-up.During creation of billing through VF01 it gave me the breakpoint.
    I want to know if for my requirement this is the right place to put the logic.
    Regards
    BGS

    Hi ,
    We had to change the logic and the user exit because it was not possible to pull the item level data into the VF04 screen.
    We are trying to do the following with variant which looks for all billing items due in next 5 working days
    Before system gets data from VKDFS into VKDFIF we are trying to aplly the logic
    If Payment terms <>  direct debit the include in the list VKDFIF
    If Payment terms <> direct debit
    Check  IF Billing date <= system date
    Yes -include in VKDFIF
    No- Remove entry
    When I call the variant in try to display the billing due list It shows the correct value
    But when we run the same variant in backgorund it fails
    BADI used
    Include LV60AA93
    Badi badi_sd_billing methode:vbrk_vbrp_fill
    CALL METHOD l_sd_billing_item_exit->vbrk_vbrp_fill
    Any help wpuld be appreciated

Maybe you are looking for

  • Cannot send email with Yahoo! on iPhone

    Since last evening (3rd May), I've been having intermittent issues sending email through my Yahoo! mail account. Common symptoms include a pop-up window stating: Cannot Send Mail The connection to the outgoing server "apple.smtp.mail.yahoo.com" faile

  • Urgent: Problem with special characters

    Hi, For one of the data record in text description field I have following: COMPUSA#0344        KNOXVILLE # =      N In RSKC I have put ALL_CAPITAL Still this record error’s out in PSA. Data is coming out of R3 and this case it won’t be possible to fi

  • TRACKING

    hi one and all I want a monthly report in which MIRO and MIGO Documents no.s come. I want to track MIRO document no.s with the MIGO Document No.s for a month. The main purpose is to know out of how many GRNs (migo) done by store, thanks in advance

  • Changing the account number through DTW.

    Hello All, wheather Its possible to replace the existing G/L account through DTW. For example, Inventory account is '1021000'(Raw materials) in Inventory data tab in Item Master data. But I want to replace it to '1021201'(Industrial Stock account). P

  • How to install ABAP as a backend system in my EHP1 composition enviornment

    I have successfully installed EHP1 composition enviornment from SDN , now i m able to work on NWDS for JAVA and Enterprise portal . it contains java application server . but in order to get data from ABAP Backend system from NWDS(JAVA) , I don't have