Regarding Purchase order User-exit

Hello friends,
Here is the situation.
when we create purchase order ... I need to modify the planned delivery field value under delivery tab at item level.
For this I found user exit. 'EXIT_SAPMM06E_016' and I have written the logic in the include program.
when I tested in debbugmode... the cursor is not at all comming to that point. It was failing always at the function module 'MODX_FUNCTION_ACTIVE_CHECK'.
I don't know alwys active field showing blank. I think we need to activate the user exit some where. how to do and where to do?
plese help me ..
extract the code --from include program MM06EF0C_CUSTSCR1_ITEM_SET_D03
User-Exit für Positionsfelder versorgen (PBO)
FORM custscr1_item_set_data_pbo USING im_no_screen LIKE fc_call.
  DATA: l_enj_call TYPE c.
  STATICS: first_call(1) TYPE c VALUE 'X',
           active        LIKE sy-calld.
  IF NOT first_call IS INITIAL.
    CLEAR first_call.
    CALL FUNCTION 'MODX_FUNCTION_ACTIVE_CHECK'
      EXPORTING
        cprogname  = 'SAPMM06E'
        funcnumber = '016'
      IMPORTING
        active     = active
      EXCEPTIONS
        not_found  = 1
        OTHERS     = 2.
    IF NOT sy-subrc IS INITIAL.
      CLEAR active.
    ENDIF.
  ENDIF.
  CHECK NOT active IS INITIAL.         ==========================> always active sowing blank
  IF fc_vorga EQ cva_en.
    l_enj_call = 'X'.
  ELSE.
    l_enj_call = space.
  ENDIF.
*-Define Fields:
  DATA: l_ci_ekpo LIKE ekpo_ci,
        lt_usr_tekpo LIKE bekpo OCCURS 0,
        lt_usr_teket LIKE beket OCCURS 0,
        lt_usr_tekkn LIKE ekknu OCCURS 0,
        lt_usr_tkomv LIKE tkomv OCCURS 0.
*-Copy Tables:
  MOVE-CORRESPONDING ekpo TO l_ci_ekpo.
  lt_usr_tekpo[] = pot[].
  lt_usr_teket[] = ett[].
  lt_usr_tekkn[] = knt[].
  lt_usr_tkomv[] = tkomv[].
*-User Exit
  CALL FUNCTION 'EXIT_SAPMM06E_016'
    EXPORTING
      i_ekpo      = ekpo
===============
thanks in advance
Regards
Raghu

Hi Raghunath
I hope you have included your enhancement in a project and activated the project.
1-Needed help
2-SMOD and CMOD
Hope it is helpful.
Regards
Neha

Similar Messages

  • Purchase Order User Exit (ME21N)

    Hello experts,
    I have a request to enhance SAP for authorization when a user creates a PO (ME21N)that all of the line items have the same purchasing group as the what is in the header, or it cannot be created.
    Anybody have any idea what exit this would be in?
    Thanks.

    Hi Tom,
    Here are the user exits available for ME21N.
    AMPL0001 User subscreen for additional data on AMPL
    LMEDR001 Enhancements to print program
    LMELA002 Adopt batch no. from shipping notification when posting a GR
    LMELA010 Inbound shipping notification: Transfer item data from IDOC
    LMEQR001 User exit for source determination
    LMEXF001 Conditions in Purchasing Documents Without Invoice Receipt
    LWSUS001 Customer-Specific Source Determination in Retail
    M06B0001 Role determination for purchase requisition release
    M06B0002 Changes to comm. structure for purchase requisition release
    M06B0003 Number range and document number
    M06B0004 Number range and document number
    M06B0005 Changes to comm. structure for overall release of requisn.
    M06E0004 Changes to communication structure for release purch. doc.
    M06E0005 Role determination for release of purchasing documents
    ME590001 Grouping of requsitions for PO split in ME59
    MEETA001 Define schedule line type (backlog, immed. req., preview)
    MEFLD004 Determine earliest delivery date f. check w. GR (only PO)
    MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
    MEQUERY1 Enhancement to Document Overview ME21N/ME51N
    MEVME001 WE default quantity calc. and over/ underdelivery tolerance
    MM06E001 User exits for EDI inbound and outbound purchasing documents
    MM06E003 Number range and document number
    MM06E004 Control import data screens in purchase order
    MM06E005 Customer fields in purchasing document
    MM06E007 Change document for requisitions upon conversion into PO
    MM06E008 Monitoring of contr. target value in case of release orders
    MM06E009 Relevant texts for "Texts exist" indicator
    MM06E010 Field selection for vendor address
    MMAL0001 ALE source list distribution: Outbound processing
    MMAL0002 ALE source list distribution: Inbound processing
    MMAL0003 ALE purcasing info record distribution: Outbound processing
    MMAL0004 ALE purchasing info record distribution: Inbound processing
    MMDA0001 Default delivery addresses
    MMFAB001 User exit for generation of release order
    MRFLB001 Control Items for Contract Release Order
    For your case, please check <b>MM06E005</b> or you can try BADI <b>ME_PROCESS_PO_CUST</b>.
    Hope this will help.
    Regards,
    Ferry Lianto
    Please reward points if helpful.

  • Create Purchase Order : User Exit

    Hi,
    When creating a Purchase Order, before saving it, I want to check the line items for certain conditions and want to check or uncheck the Goods Receipt indicator based on the condition.
    Could someone please let me know the user exit for this. I would really appreciate your help.
    Thank You,
    Rekha

    Here is a program which shows you user exits by transaction code.  Implement the program, run it, and enter the transaction code, hit F8.  This will give you a listing of exits.  Look thru them, look at the function modules tied to them and look at the FM signature to see if your data is available.  I don't know for sure if any will actually update a value.
    report z_find_user_exit no standard page heading.
    tables: tstc, tadir, modsapt, modact,
            trdir, tfdir, enlfdir, tstct.
    data : jtab like tadir occurs 0 with header line.
    data : hotspot(30).
    parameters : p_tcode like tstc-tcode obligatory.
    at line-selection.
      get cursor field hotspot.
      check hotspot(4) eq 'JTAB'.
      set parameter id 'MON' field sy-lisel+1(10).
      call transaction 'SMOD' and skip first screen.
    start-of-selection.
      perform get_data.
      perform write_list.
    *       FORM get_data                                                 *
    form get_data.
      select single * from tstc
                  where tcode eq p_tcode.
      check sy-subrc eq 0.
      select single * from tadir
                where pgmid = 'R3TR'
                  and object = 'PROG'
                  and obj_name = tstc-pgmna.
      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.
        endif.
      endif.
      select * from tadir into table jtab
                 where pgmid = 'R3TR'
                   and object = 'SMOD'
                   and devclass = tadir-devclass.
      select single * from tstct
              where sprsl eq sy-langu
                and tcode eq p_tcode.
    endform.
    *       FORM write_list                                               *
    form write_list.
      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.
    endform.
    Regards,
    Rich Heilman

  • Outbound Purchase order user exit EXIT_SAPLEINM_002 help

    Hi,
    Can somebody tell me how to stop the IDOC processing if the conditions are not met? My detail question is
    I am modifying the data in the outbound IDOC (IDOC_OUTPUT_ORDERS) for purchase order. I am using the user exit EXIT_SAPLEINM_002 to modify the segment data.
    But I would like to know how to stop for creating the IDOC if one of the condition will not met (for example if there is no data in Ztable while fetching then IDOC should not be created )?
    If the condition will fail I don't want to create the IDOC but Purchase order has to create in R/3.
    Any suggestions on my above query is highly appreciable.
    Regards,
    Noorul

    Hi
    The purchase order should always be created because it's created before creating the IDOC, I suppose it will be created by a particular message.
    Have you tried to raise the exception DATA_NOT_RELEVANT_FOR_SENDING?
    Max

  • Purchase order user exit / BADI / Enhancement points

    Hello  experts,
    Please Help me to get the user exit or any way to enhance the PO functionality. I am trying to set the PO line item status to "Blocked" or "Unblocked" whenever a change is triggered in PO line item for transactions Me21N / Me22N. The blocked status will be triggered by the custom enhancement, this is the requirement.
    Thanks in advance for your help.
    I tried the user exit MM06E005, but not working.
    - Nagarajan

    Hello  Nagarajan Ramudu,
    inside of MM06E005 you should try the function module EXIT_SAPMM06E_012,
    i'm using this user-exit from all things in my company.
    Regards,
    Welinton Rocha

  • Purchase order : user-exit to fill new field in table EBAN

    Hi,
    in EBAN table i created a new field named ZTYPE_SITE. Now i would like to fill this field when i save my purchase requisition. I don't found the user-exit or BADI to do that.
    Thanks for help.
    Cheers.

    up

  • Purchase order user exit

    Hello Firends,
    I am unable to find suitable user exit. My requirement is whenever a new PO is created from Preq,the system should check a Z table where certain material/Sloc combinations are allowed. If combination is not maintained in z table, error message should be diaplayed and PO should not be created.
    Please advise.
    Sanjay

    Dear Sanjay,
    You want to find User Exits its very simple, please do this way
    Go to 'SMOD' and give here enhancement name and click Test or F8
    if you dont know Enhancement name press F4 and give package "ME" press enter and here so many exit names displays select relavent and press test or F8 inside of that exit your user exit will appear
    Hope this may helps you
    Prem.

  • Change Confirmed Qty in Sales Order User exit/ATP User exit

    HI
    We have a requirement to change the ATP Qty for certain meterials & Order Types  duing sales Order User exit(FORM USEREXIT_MOVE_FIELD_TO_VBEP.? ) or ATP User exit.( ATP...OUT?).
    Is this ok to update the XVBEP in FORM USEREXIT_MOVE_FIELD_TO_VBEP of MV45AFZZ ?
    Our requirement will be like this, for one order type ZSAL( and for certain Materials)  we need to reserve 4 qty, if any order comes with 10 qty and the confimed qty is only 6( total available stock at present) , then we should only confirm  2 qty for the other order type( For Non ZSAL Order Type), and reserve the 4 QTY for ZSAL Order Type.
    If there are multiple schedule lines for an Item, we need to reduce the qty equally( as possible) from all schdule lines.
    i.e. date1 qty 4
         date2 qty 6,
    in  this case we should confirm  Date1 QTY 2, date2 qty 4, so that the remaining 4 will be reserved for ZSAL Order type.
    Whats the Best way to achieve this ?
    Edited by: agrud agrud on Sep 8, 2011 4:01 AM

    Hi Agrud,
    Did you check the possibilities with configuration.If it is not possible with configuration then you can use that exit.Before i used this but only to display not to change any thing.
    Regards,
    Madhu.

  • Purchase order screen exit SAPMM06E,screen number 0111

    Hi
    I am working on purchase order screen exit SAPMM06E and screen number 0111
    i am able to see customer screen in transaction but program control is not going to flow logic
    due to that i couldn't able to fetch data into custom fields.pls suggest me wat to do.
    Thanks & Regards
    Vinay

    Hi Vinay ,
    I think you are implementing the screen exit with the enhancement component 'MM06E005'.
    if thats the case you add your fiels in the screen area provided
    in the screen 'SAPMM06E' 0111 by creating the subscreen in the SE51 with the name space 'SAPLXM06' 0111 with then will be reflected (fields added) in the ME21n transaction .
    You have to write your logic in the EXITS provided in that enhancement component
    You have to write your logic in the exit 'EXIT_SAPMM06E_008'
    as it imports data from screen field which you placed in the tcode.
    Revert back to me for any queries.
    Reward points if useful.
    Thanks ,
    Surya Pydikondala.

  • ME21n - Purchase order field exit??

    Hi
    Does anybody know what the ME21n (enter purchase order) field exit would be so that I can default a particular G/L account (HKONT) when the account assignment group is 'F' & the purchasing org is a particular value?
    If you can also confirm if that is going to be possible with coding in that field exit I would appreciate it....
    Thanks all for your time...

    Screen Exit
    Please remove the TDS-related input fields on the PO entry screen on the customer data tab  (PO line details).
    - TDS account
    - TDS cost code
    - TDS sub code
    1.     Goto Transaction Code Me21n
    Fill the following fields
    Enter
    Give the input values in following fields from  ORGDATA TAB
    Purchasing org
    Purchasing group
    Company code
    Vendor
    Enter
    Select Customer Data tab like following
    USER EXIT  : MM06E005 (Customer fields in purchasing document )
    &#61664;  Goto  : T.Code : SMOD
    &#61664;     Give the Enhacement Name : MM06E005
    &#61664;     Click on Display
    &#61664;     Click on Components Push Button
    &#61664;     Double click on function module EXIT_SAPMM06E_016( Export Data to Customer Subscreen for Purchasing document item)
    &#61664;     Double click on Include ZXM06O01.
    &#61664;     Insert the following coding in that include
    SET PARAMETER ID 'BUK' FIELD g_ekko-bukrs.
      LOOP AT SCREEN.
        IF screen-name = 'EKPO_CI-ISMSUBTITLE1'.
          screen-input = '0'.
          MODIFY SCREEN.
        ENDIF.
    *>>>>>>>>>>>>>>>>>>>>>> Begin of insert CR336/BG1 >>>>>>>>>>>>>>>>>>>>>>
        IF screen-name = 'G_EAN11'.
          screen-input = '0'.
          MODIFY SCREEN.
        ENDIF.
    *<<<<<<<<<<<<<<<<<<<<<<< End of insert CR336/BG1 <<<<<<<<<<<<<<<<<<<<<<<
    *>>>>>>>>>>>>>>>>>> Begin of Changes for K896570/501411945 <<<<<<<<<<<<<
    IF screen-name = 'EKPO_CI-TDSACCOUNT'.
          screen-input = '0'.
          MODIFY SCREEN.
        ENDIF.
    IF screen-name = 'EKPO_CI-TDSCOST'.
          screen-input = '0'.
          MODIFY SCREEN.
        ENDIF.
    IF screen-name = 'EKPO_CI-TDSSUB'.
          screen-input = '0'.
          MODIFY SCREEN.
        ENDIF.
    *>>>>>>>>>>>>>>>>>> End of Changes for K896570/501411945 <<<<<<<<<<<<<
    *>>>>>>>>>>>>>>>>>>>>>> Begin of insert SM1 >>>>>>>>>>>>>>>>>>>>>>
        IF ( screen-name = 'EKPO_CI-TDSACCOUNT'
          OR screen-name = 'EKPO_CI-TDSCOST'
          OR screen-name = 'EKPO_CI-TDSSUB'
          OR screen-name = 'TDS_TXT_1'
          OR screen-name = 'TDS_TXT_2'
          OR screen-name = 'TDS_TXT_3'
          OR screen-name = 'TDSACCOUNT-DESC'
          OR screen-name = 'TDSCOST-DESC'
          OR screen-name = 'TDSSUB-DESC'  ).
          IF g_ekko-bukrs(2) <> 'U6'.       "not a theatrical company
            screen-invisible = '1'.
            screen-input     = '0'.
          ELSEIF g_flag = 0.                "display only
            screen-invisible = '0'.
            screen-input     = '0'.
          ELSEIF g_flag = 1.                "change
            screen-invisible = '0'.
    *>>>>>>>>>>>>>>>>>> Begin of Changes for K896570/501411945 <<<<<<<<<<<<<
           screen-input     = '1'.       "Fharook Syed
            screen-input     = '0'.        "Fharook Syed
    *>>>>>>>>>>>>>>>>>> End of Changes for K896570/501411945 <<<<<<<<<<<<<
          ENDIF.
          IF screen-name = 'EKPO_CI-TDSACCOUNT'.
            screen-required  = '1'.
          ENDIF.
          MODIFY SCREEN.
        ENDIF.
    *>>>>>>>>>>>>>>>>>>>>>> End of insert SM1 >>>>>>>>>>>>>>>>>>>>>>
    &#61664; save & activate.
    &#61664; Repeat the above process in ME21N to see customer data fileds in CUSTOMER DATA tab
    After the above Modifications CUSTOMER DATA is   displaying like this
    rewars if useful

  • PO Creation from Sales Order User Exit

    Hi,
    I have a business requirement where I need to  create a Stock Transport Order (STO) for a particular kind of sales order. I outlined different options for achieving this functionality.
    1. Trigger a workflow for creating STO.
    2. Configure it an EDI output for sales orders. Using the EDI document, create STO in the same system.
    3. Create STO using BAPI from the sales order exit 'USEREXIT_SAVE_DOCUMENT'.
    I am trying to understand the issues if I go with option of creating STO from sales order user-exit. I tested it and it is working fine. But what concerns is me transaction integrity. In other words I am trying to  execute another transaction within a transaction. Both Transactions (VA01 and ME21N/BAPI) may be trying to access same tables. Anyways I havent see any potential overlap.
    I would like to know anybody implemented such a solution?
    What could be the potential issues? Does it really affect transaction integrity?
    Thanks A Lot
    Anil

    I would also be concerned with the possibility of the order failing to update AFTER you call the BAPI.  You could create a custom output type that processes on order create for that order type.  You could add your BAPI call to the processing routine of the output type.

  • Regarding purchase order pricing conditions using exits or badi

    Hi friends can anybody help me and  let me know the solution.
    Please explain how the change in the pricing condition amount value should update the cost in PO.
    and which EXITS or BADI use for .
    if anybody have the solution send me reply AS SOON AS
    Thanks,
    srinivas

    OK
    But the problem is pricing conditions like transport cost. Because when I do a new purchase order the system use last transport cost and i don´t want it.
    What I want (if possible) with infoupdate is:
    - Update ( PBXX & PB00)
    - Don´t update (other conditions like transport).
    Thanks....

  • Sales Area Determination in Stock Transfer Order - user exit

    Dear SD gurus,
    We have different distribution channels for inter company and intra company stock transfers; since only one sales area can be set in the configuration (setup STO -> shipping data for plants), we want to use a user exit to determine the sales area dynamically.
    We have created an enhancement of function exit V02V0001 (Sales area determination for stock transport order); but the program flow doesn't seem to stop in this exit despite setting break-points.
    Can someone suggest why this exit is not fired during runtime or if this can be used at all for our purpose.
    Regards,
    KC

    Is user exit required, as the sales area will be different. Incase of Intra company stock transfer the process will be as under:
    Create Purchase Order (ME21N)
    Create Delivery in background (VL04, VL10a, VL10C, etc)
    Change Delivery for picking / packing & PGI (VL02n)
    Create Billing Document (VF01)
    Assumption: Stock Transfer configuration is in place. Assistance can be taken from SAP Best Practices in help.sap.com
    Incase of Inter-company, the process will be as under:
    Create Sales Order (VA01)
    Create Delivery (VL01N, etc)
    Change Delivery (VL02N)
    Create Billing Document (VF01)
    Assumption: Configuration is in place. Assistance can be taken from SAP Best Practices in help.sap.com
    Regards,
    Rajesh Banka

  • Need All Sales Order user exit

    Neeed all Sales Order user exits

    Hi,
    Check these Exits and their corresponding Programs
    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.
    Reward points if helpful.
    Regards
    Ravi

  • PM Order User Exit

    To all the SAP expats,
    I'm looking for PM user exit or business add-in that would perform validation on purchasing group before I save the PM order.  I've tried one of the user exit : EXIT_SAPLCOIH_009, but I've to click on the save button in order to trigger the validation function.
    Plz help.
    Regards,
    Rachel

    Hi,
    To check the purchasing group on the component lines use exit CNEX0026. This is called whenever a component is created or changed.
    -Paul
    Please use [Enterprise Asset Management (EAM)|Enterprise Asset Management (SAP EAM); forum for PM/CS specific topics

Maybe you are looking for