User exit for transaction VA01 for screen validations

Hi All,
I would like to know a user exit where I can validate the entry for "sold to party" on second screen of VA01 transaction against the sales area entered in the first screen. 
Also please let me know how to code in "MV45AIZZ" to capture the same if it can be done.
Regards,
Usha.

Hi Usha,
Following are the User Exits for VA01.
V60F0001            SD Billing plan (customer enhancement) diff. to billing plan
SDTRM001            Reschedule schedule lines without a new ATP check          
V45A0001            Determine alternative materials for product selection      
<b>V45A0002            Predefine sold-to party in sales document                  </b>
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         
<b>Have a look at V45A0002.</b>
<b>Reward points if it helps.</b>

Similar Messages

  • User Exit for VA41 Validity Date

    Hi,
    I am giving order type in VA41 Tcode and then Clicking on 'Create with Reference' .Then a Pop Up is getting generated. In this i am giving Contract created with validity date lessthan today's date(in Contract Tab).For Example i created a Contract xxxxxx with 'valid to' 9.12.2008. When I am giving this contract and clicking on 'Copy' button a Warning message is getting generated 'The sales document is only valid until 09.12.2008'. Now i have to change this into Error message instead of Warning Message.
    i used User Exits mv45afzz,MV45AFZA,MV45AFZB. But the debugger is getting started only after Warning message got generated.Is there any User Exit for which debugger gets started when i give the Contract and then Click on 'Copy' button. Please Suggest.
    Thanks
    K Srinivas

    Hi,
    Create a file say breakpoint.txt file as follows:-
    [FUNCTION]
    Command=/H
    Title=Debugger
    Type=SystemCommand
    Once you come to the screen of 'Create with reference' where you are giving the contract, from  second session drag the above mentiuoned file to the session where you are running VA41, & drop it here. Now debugger has been activated. Proceed with debugging. This method you can use for any of the 'POP UPs'.
    I hope this helps,
    Regards
    Raju Chitale

  • User exit for PA61 - Validations to IT2001 & IT2002 upon save

    Hi,
    I got a requriement as follows:
    User enters time thru PA61 and I need perform some calculations upon saving the weeks time in PA61.
    I have to do two tasks:
    1) I need to read the hrs entered by the user in PA61 for that week
    2) Upon save, I need to calculations and save that to IT2001 & IT2002 based on Absence types.
    PLease let me know any user exit, where i can write code & how to read the time for the particular week.
    Thanks,
    Shrini

    HI Shreenivas
    As Omid said , PA61 is T-Code for maintain time data its like PA30. but if you need to put any validation or any business check, you can use the User Exit  (enhancement) PBAS0001 via t-code SMOD.
    here you can select the functional module EXIT_SAPFP50M_002 and write your customer logic (ABAP code) for IT2001 and IT2002 in the include ZXPADU02.
    Thanks,
    Dinesh

  • BADI/User exit for GR validations

    Hi Experts,
          I have one issue where i have performed GR for production order with (101) movement type,then delivery,and then created Transfer Order for that delivery, now I need to perform 102 movement type for reversal of GR,but
    My question is if a production order has a TO (Transfer order) then before doing 102 movment type it sholud through an error saying ex: "102 movement type not possible" error.
    please suggest a BADI or a User exit that can fulfill my need.
    I appreciate you response.
    Edited by: Mister SAP on Mar 9, 2010 6:52 AM

    Hi,
    The following exits are available in tcode MIGO,
    Exit Name           Description
    MBCF0002            Customer function exit: Segment text in material doc. item
    MBCF0005            Material document item for goods receipt/issue slip
    MBCF0006            Customer function for WBS element
    MBCF0007            Customer function exit: Updating a reservation
    MBCF0009            Filling the storage location field
    MBCF0010            Customer exit: Create reservation BAPI_RESERVATION_CREATE1
    MBCF0011            Read from RESB and RKPF for print list in  MB26
    MB_CF001            Customer Function Exit in the Case of Updating a Mat. Doc.
    Hope any one of them might help you,
    Regards,
    Soundarya.

  • User Exit for placing validation between Customer Group & Material Group

    Hi,
    Following is my client requirement.
    1. A validation check is to be placed in Sales Order of Document Type ZTRD.
    Validation to be placed between Customer Group 3 (CG3)   of Sold to party with Material Group( MG ) of Material.
    If CG3 of Sold to party is different with MG , then system should through Error message & should not allow to save the Sales Order.
    Please suggest me what best to be done. I am a SD consultant.

    A standard way to do this is to use product attributes.In material master you can define product attributes in the sales org 2 view. Next, within the customer master, you can define the product attributes a customer would accept. Finally, in the order type configuration, you can define that if the attributes don't match, the system should display an error message (or a warning message). So, you can do the check you are looking for without doing any ABAP work. See if that could work for you.

  • User Exit for Partner Determination in VA01, VA02 transaction ( Sales order

    Dear All,
    I have an issue in which i need to determine partner for every change in ship to party both at header and item level during sales order creation or change.
    Can you please suggest an appropriate user exit for the same.
    I have tried
    EXIT_SAPLV09A_003
    EXIT_SAPLV09A_004
    but they get triggered only when we enter into VA01 transaction and not when the ship to party is manually changed.
    If possible i want to avoid MV45 exits as there are chances of regression due to too many different functionalities already present in my system.
    In worst case scenario please specify the place wherein i need to code in MV45 exits and what are the fields i need to change.
    Most probably i filtered out on "USEREXIT_MOVE_FIELD_TO_VBAP" but i am not 100 percent sure on this, please suggest.
    Thanks in advance
    Ronak

    Hi,
    please use User exit function: EXIT_SAPMV45A_003
    Put your coding in include: ZXVVAU05 (create it by double clicking, if not already created) and activate.
    Regards,
    Sanjay Gogikar

  • User exits for transaction va11,va21,va01

    i was looking for <b>user exits</b> after the transactions <b>va11</b>,<b>va21</b> and <b>va01</b>(in the order to cash cycle)transactions <b>commit</b>. once the transaction commits i wanted to take some data and send it to another system after the transaction commits by calling an RFC at the user exit.
    if anyone know such an user exit please let me know

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

  • User Exit for Transaction QM01 & VA01

    Hi experts,
    I have a requirement such that the newly created QM Notification number(QMNUM) from QM01 will be exported to a memory ID and imported in transaction VA01 such that the Sales order(VBELN) will have the same value of Notification number(QMNUM). QMNUM = VBELN.
    QM notification number and the Sales Order number to be created for each claim filed by a customer should be the same. This is being done in QM01. The problem is that when this is done in BDC, we cannot simply "copy" the notification number in QM01 into the sales order number of the linked Sales order that is being created.
    Need a User Exit for this. Thanks.

    Hi Marc,
    <b>User-exit for QM01</b>
    IWO10026            User check on setting status 'Do not perform'
    IWO10027            User exit: Generate user-defined settlement rule
    IWOC0001            Create PM/SM notification: Determine reference object
    IWOC0002            PM/SM notification: Check whether status change is allowed
    IWOC0003            PM/SM authorization check of ref. object and planner group
    IWOC0004            Change single-level list editing PM/QM/SM ALV settings
    <b>User-exit for VA01</b>
    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
    <b>plz reward points if helpful or if it solves ur query.</b>
    Thanks
    Chinmay

  • BADI/ User Exit for transaction FTR_EDIT/FTR_CREATE initial screen

    Hi All,
    I want a BADI/User Exit for FTR_EDIT/FTR_CREATE transactions to validate company code and partner fields.
    please provide your suggestions.

    Hi,
    here is a coding example that I implemented in the BAdI FTR_TR_GENERIC. This coding is executed when the user press the check button. The method is EVT_TRANSACTION_CHECK. This example is checking the payment date dfaell if it is equal to the system date. If not then a message is sent to the message handler. Here is the code:
      DATA: faelligkeit TYPE d,
            faelligkeit_text type c length 10,
            meldungstext TYPE c LENGTH 100.
      FIELD-SYMBOLS: <it_source> LIKE LINE OF pi_proxy_transaction->a_tab_conditions.
      IF sy-uname = 'XYZ'.
    *    BREAK-POINT.
        READ TABLE pi_proxy_transaction->a_tab_conditions INDEX 1
          ASSIGNING <it_source>.
        faelligkeit = <it_source>-dfaell.
        CALL FUNCTION 'CONVERT_DATE_TO_EXTERNAL'
           EXPORTING
             DATE_INTERNAL                  = faelligkeit
           IMPORTING
             DATE_EXTERNAL                  = faelligkeit_text
           EXCEPTIONS
             DATE_INTERNAL_IS_INVALID       = 1
             OTHERS                         = 2
        IF sy-subrc <> 0.
           MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
        IF faelligkeit <> sy-datum.
          CONCATENATE 'Fälligkeit' faelligkeit_text 'incorrect' INTO meldungstext separated by space.
          CALL METHOD pi_proxy_messages->set_message
            EXPORTING
              pi_message_id       = 'T0'
              pi_message_number   = '101'
              pi_message_severity = 'E'
              pi_message_var1     = meldungstext
            EXCEPTIONS
              OTHERS              = 4.
        ENDIF.
      ENDIF.
    It is not a really nice coding but it shows in a simple way how to use the BAdI.
    Regards
    Robert

  • User exits for VA01

    Hi Experts,
    For transaction VA01, is it possible to know list of  user-exits available.
    Thank you

    Hi Peter,
    You can have the User Exits for sales order processing not for the VA01 transaction.
    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.
    I hope it will help you,
    Regards,
    Murali.

  • User Exit for VA01 - Delivery Block

    Dear Friends
    I wanted to do a User Exit for VA01 which should set the Delivery Block = Credit Memo as default for a particular user.
    Can anyone give me the solution.
    REg
    S.K.Raj

    Hi Kamaraj,
    First of all u have to find out the perticular exit for make the changes, after that take one field TBTKZ which is flag for decit /credit memo. Based on the condition that flag set as 'X'. If that flag set as 'X' then populate the data.
    Here it ishow to find out the user exit.
    execute the following report and enter the t-code VA01 it will display all the exits. then search them by seeing coments..
    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.
    Hope this helps you..
    Regards,
    Kumar.

  • How to find the user-exit for transaction fpp2

    Hi experts,
    could you help me how can I find the user-exit for transaction fpp2. I tried to after the package, but I did not find it.

    Hi,
    Use the following program to find user exits of specified code.
    *& 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® Modifications
        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.
    I executed the above program but there are no user exits for the specified Transaction.
    Thanks,
    Naveen Kumar.

  • How to  find the user exit for a screen..

    Hi,
    plz help me how to find the user exit for a screen..?
    Regards
    Anbu

    Hi,
    check this program this will give you the list of user-exit and BADI for the perticular Tcode.
    REPORT  zuserexit_badi.
    TABLES : tstc,
    tadir,
    modsapt,
    modact,
    trdir,
    tfdir,
    enlfdir,
    sxs_attrt ,
    tstct.
    DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
    DATA : field1(30).
    DATA : v_devclass LIKE tadir-devclass.
    PARAMETERS : p_tcode LIKE tstc-tcode,
    p_pgmna LIKE tstc-pgmna .
    DATA wa_tadir TYPE tadir.
    START-OF-SELECTION.
      IF NOT p_tcode IS INITIAL.
        SELECT SINGLE * FROM tstc WHERE tcode EQ p_tcode.
      ELSEIF NOT p_pgmna IS INITIAL.
        tstc-pgmna = p_pgmna.
      ENDIF.
      IF sy-subrc EQ 0.
        SELECT SINGLE * FROM tadir
        WHERE pgmid = 'R3TR'
        AND object = 'PROG'
        AND obj_name = tstc-pgmna.
        MOVE : tadir-devclass TO v_devclass.
        IF sy-subrc NE 0.
          SELECT SINGLE * FROM trdir
          WHERE name = tstc-pgmna.
          IF trdir-subc EQ 'F'.
            SELECT SINGLE * FROM tfdir
            WHERE pname = tstc-pgmna.
            SELECT SINGLE * FROM enlfdir
            WHERE funcname = tfdir-funcname.
            SELECT SINGLE * FROM tadir
            WHERE pgmid = 'R3TR'
            AND object = 'FUGR'
            AND obj_name EQ enlfdir-area.
            MOVE : tadir-devclass TO v_devclass.
          ENDIF.
        ENDIF.
        SELECT * FROM tadir INTO TABLE jtab
        WHERE pgmid = 'R3TR'
        AND object IN ('SMOD', 'SXSD')
        AND devclass = v_devclass.
        SELECT SINGLE * FROM tstct
        WHERE sprsl EQ sy-langu
        AND tcode EQ p_tcode.
        FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
        WRITE:/(19) 'Transaction Code - ',
        20(20) p_tcode,
        45(50) tstct-ttext.
        SKIP.
        IF NOT jtab[] IS INITIAL.
          WRITE:/(105) sy-uline.
          FORMAT COLOR COL_HEADING INTENSIFIED ON.
    Sorting the internal Table
          SORT jtab BY object.
          DATA : wf_txt(60) TYPE c,
          wf_smod TYPE i ,
          wf_badi TYPE i ,
          wf_object2(30) TYPE c.
          CLEAR : wf_smod, wf_badi , wf_object2.
    Get the total SMOD.
          LOOP AT jtab INTO wa_tadir.
            AT FIRST.
              FORMAT COLOR COL_HEADING INTENSIFIED ON.
              WRITE:/1 sy-vline,
              2 'Enhancement/ Business Add-in',
              41 sy-vline ,
              42 'Description',
              105 sy-vline.
              WRITE:/(105) sy-uline.
            ENDAT.
            CLEAR wf_txt.
            AT NEW object.
              IF wa_tadir-object = 'SMOD'.
                wf_object2 = 'Enhancement' .
              ELSEIF wa_tadir-object = 'SXSD'.
                wf_object2 = ' Business Add-in'.
              ENDIF.
              FORMAT COLOR COL_GROUP INTENSIFIED ON.
              WRITE:/1 sy-vline,
              2 wf_object2,
              105 sy-vline.
            ENDAT.
            CASE wa_tadir-object.
              WHEN 'SMOD'.
                wf_smod = wf_smod + 1.
                SELECT SINGLE modtext INTO wf_txt
                FROM modsapt
                WHERE sprsl = sy-langu
                AND name = wa_tadir-obj_name.
                FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
              WHEN 'SXSD'.
    For BADis
                wf_badi = wf_badi + 1 .
                SELECT SINGLE text INTO wf_txt
                FROM sxs_attrt
                WHERE sprsl = sy-langu
                AND exit_name = wa_tadir-obj_name.
                FORMAT COLOR COL_NORMAL INTENSIFIED ON.
            ENDCASE.
            WRITE:/1 sy-vline,
            2 wa_tadir-obj_name HOTSPOT ON,
            41 sy-vline ,
            42 wf_txt,
            105 sy-vline.
            AT END OF object.
              WRITE : /(105) sy-uline.
            ENDAT.
          ENDLOOP.
          WRITE:/(105) sy-uline.
          SKIP.
          FORMAT COLOR COL_TOTAL INTENSIFIED ON.
          WRITE:/ 'No.of Exits:' , wf_smod.
          WRITE:/ 'No.of BADis:' , wf_badi.
        ELSE.
          FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
          WRITE:/(105) 'No userexits or BADis exist'.
        ENDIF.
      ELSE.
        FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
        WRITE:/(105) 'Transaction does not exist'.
      ENDIF.
    AT LINE-SELECTION.
      DATA : wf_object TYPE tadir-object.
      CLEAR wf_object.
      GET CURSOR FIELD field1.
      CHECK field1(8) EQ 'WA_TADIR'.
      READ TABLE jtab WITH KEY obj_name = sy-lisel+1(20).
      MOVE jtab-object TO wf_object.
      CASE wf_object.
        WHEN 'SMOD'.
          SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).
          CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
        WHEN 'SXSD'.
          SET PARAMETER ID 'EXN' FIELD sy-lisel+1(20).
          CALL TRANSACTION 'SE18' AND SKIP FIRST SCREEN.
      ENDCASE.
    Reagards,
    Bharat.

  • To find the User Exits for a particular Transaction.

    hi,
        I want to find the number of User Exits for a The Transaction MM01 or MM02,
        I serched in the forums but could not find satisfactory ans,
        I tried with:
                 T.Code-> System>Status->Prog Name>SE38>find Call Customer-Exit.
        But its not helping me,
        Please help me.
    Thanks and Regards
    Suraj S Nair.

    hi ,
    if you are new to user exist use --> follw the below methos to find the user exit for a particular transaction or t-code
    create one custom pgm in se38 and execute >selection screenenter t-code and execute it will return all the user exists for a specific transaction..
    Finding the user-exits of a SAP transaction code
    * 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.
    * Written by : SAP Basis, ABAP Programming and Other IMG Stuff
    *              http://www.sap-img.com
    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
    Regards,
    Prabhudas

  • BADI/User Exit for validation in WAK1

    Hi,
    I need to put validations in transaction WAK1.
    for the Site Groups under the site groups TAB.
    Please suggest if any BADI or User Exit is available to do this.
    I checked there are BADI's "WAKT_BADI_001" to "WAKT_BADI_008" but they are for SAP Internal Use only.
    Regards
    Ankur

    Hi
    Below are some of BADIs available for WAK1. Please check.
    Exit 
    WCOUP001  User exit for coupon processing in POS inbound
    BADIs
    RDM_BAPI_PROMO_CREATE - Enhancement Spot (RDM_OPT_PROMO_IN)
    RDM_PROMO_POST - Enhancement Spot
    RDM_PROMOTION_WAK1 - Enhancement Spot
    WAKT_BADI_001  -
    ~~~Ganesh Kumar K.

Maybe you are looking for

  • Zen Style M300 problem lock button

    Hi, I have my new Zen Style M300 with a problem. The lock button is not working. If I move the button to the right position the device is not blocked, so if I touch any other button (an arrow...) it is possible to modify the music, radio or wathever.

  • IPod 5 won't sync, old songs "broken"

    After importing a CD into my iTunes library, I tried to sync my iPod 5 and after the sync was finished none of the songs appeared on my iPod, so I tried again. When I sync my iPod, as it goes through the tracks it's syncing, it lists 256 tracks that

  • Airtunes works with music but not with tv show

    I have an AE wired to my to my A/V receiver and I play itunes music wirelessly thru the AE and it works fine. Problem: I downloaded a TV show and the audio will not stream via the AE and will only play thru the computer. The video works fine fine in

  • U201CValid Tou201D date set before the date that the report is run u2013 print u201Cnullu201D.

    Hi Experts I had a requirement for  the Query, when we executing the through slection screen we will be giving 0fiscyear "from and to" dates. the "Valid to" (0date)  has to check the relation of the Client partner and contract of relationship, if it

  • ECL viewer

    Hi.. I need to know in details of ECL.. We are having SAP 720 Component version    SAP ECC 6.0 1.when and where we can use this opion with Sap DMS? 2.What is the system requirement? 3.Does we need to go with additional interface? 4.What is the advant