Restriction for purchase Requisition Number in ME21N

Hi All,
I want to raise an error message in ME21N, if the user creating PO without perchase rechase requisition number. For this i choosed one BADI.
Definition Name: ME_PROCESS_PO_CUST
Interface Name : IF_EX_ME_PROCESS_PO_CUST
i have implemented the BADI  ZCHECK_PR
Method :  IF_EX_ME_PROCESS_PO_CUST~PROCESS_ITEM
I have written code like this in PROCESS_ITEM method
DATA: ls_mepoitem TYPE mepoitem,
        ls_customer TYPE mepo_badi_exampl,
        ls_tbsg     TYPE tbsg.
  INCLUDE mm_messages_mac. "useful macros for message handling
* here we check customers data
  ls_mepoitem = im_item->get_data( ).
BREAK-POINT.
if ls_mepoitem-bstyp = 'ZV01'.
   if ls_mepoitem-banfn is INITIAL.
      message 'Enter Purchase Requisition Number' type 'E'.
   endif.
endif.
Saved & Activated  this.
But while testing this in ME21N, it is not at all going to debug mode( I have created PO for ZV01 order type only).
Is there any thing not finished for BADI?
Can any one help me.
Thank You.

Vishnu,
Very strange, just try deactivating and deleting your implementation and create a fresh one in the same client where you are testing and assign it to a transport request and check.
Actually this BADI is already migrated to an Enhance spot in ECC 6 with same name 'ME_PROCESS_PO_CUST' but I still believe that SIMPLE badi implementation is still supported. OR Better do it with the latest way.
Create an enhancement implementation of Enh spot ME_PROCESS_PO_CUST in SE19 and then for that Enh implementation, create a BADI implementation and an implementing class. Code the required thing in the implementing class methods and then check if it works. It's actually almost same way as implementing a simple BADI. If you need any help, search Forums or get back here.
Pls note that Enh framework implementations are much faster than conventional BADIs and should always be used.
BR,
Diwakar

Similar Messages

  • BAPI_PO_CHANGE me22n add profit center for purchase requisition number

    Hello all,
    I have to add an item line for a specific sales order( p_vbeln ).
    for that i use BAPI_SALESORDER_CHANGE and it works and the item is inserted.
    ( p_posnr = sales order item and ln_etnr = schedule_line = 1 )
    Now I have to maintain the specific po item line and to insert the Profit Center related to the Purchase Requisition Number that was assigned to the above sales order item like using transaction ME22N.
    when i use the transaction all i have to do is to ADD the Purchase requisition number to the PO Order Number and to add the PROFIT CENTER.
    for this i use BAPI_PO_CHANGE.
    i colect the folowing data:
    from table VBFA( vbelv = sales order number vbeln = l_ebeln)
    PO Number = p_ebeln.
    from table VBEP ( vbeln = sales order number, posnr = the previously inserted sales order item )
    Purchase Requisition Number = l_banfn
    Purchase Requisition Item = l_bnfpo
    from table VBAP (vbeln = sales order number, posnr = the previously inserted sales order item )
    Profit Center = l_prctr
    from table EKKN
    select max(  ebelp )
    from ekkn
    into l_ebelp
    where ebeln = l_ebeln.
    add 10 to l_ebelp
    Purchase Order Item = l_ebelp .
    and i move the data:
      i_t_poitem-po_item = l_ebelp.
      i_t_poitem-preq_no = l_banfn.
      i_t_poitem-preq_item = l_bnfpo.
      i_t_poitem-acctasscat = cc_x.
      APPEND i_t_poitem.
      i_t_poitemx-po_item = l_ebelp.
      i_t_poitemx-po_itemx = cc_x.
      i_t_poitemx-preq_no = cc_x.
      i_t_poitemx-preq_item = cc_x.
      i_t_poitemx-acctasscat = cc_x.
      APPEND i_t_poitemx.
      i_t_poaccount-po_item = l_ebelp.
      i_t_poaccount-itm_number = p_posnr.
      i_t_poaccount-SCHED_LINE = ln_etnr.
      i_t_poaccount-profit_ctr = l_prctr.
      APPEND i_t_poaccount.
      i_t_poaccountx-po_item = l_ebelp.
      i_t_poaccountx-profit_ctr = cc_x.
      APPEND i_t_poaccountx.
    then i use the function BAPI_PO_CHANGE:
      CALL FUNCTION 'BAPI_PO_CHANGE'
        EXPORTING
          purchaseorder                = p_ebeln
          testrun                          = l_test
       TABLES
         return                            = i_t_return_po
         poitem                          = i_t_poitem
         poitemx                        = i_t_poitemx
         poaccount                    = i_t_poaccount
         poaccountx                   = i_t_poaccountx.
    BUT i get the folowing result ( messages in return table)
    Insert item for PO-order                                                                               
    Message:  Changing of PO using Enjoy BAPI unsuccessful ;                                                
      Message:  Purchase order item 00120 still contains faulty account assignments ;   
      Message:  Enter Profit Center ;                         
    what should i do?
    best regards,
    emilia

    hello,
    i debugged the function.
    first the data from poaccount is copied in lt_account.
    then this happens:
      PERFORM get_current_data
          TABLES    poitem               poschedule               poaccount
                    pocondheader         pocond
                    extensionout
                    poexpimpitem         allversions              popartner
                    potextheader         potextitem               return
          USING
                    l_po                 lf_header_currency
          CHANGING
                    expheader            exppoexpimpheader.
      exppoexpimpheader = poexpimpheader. "foreign trade export workaround
    after this form is executed poaccount-profit_ctr is empty.
    lt_account-profit_ctr in not empty but then it is not anymore.
    in the form this happens:
    item data
      CALL METHOD im_po->get_items
        IMPORTING
          ex_items = lt_items.
      LOOP AT lt_items INTO an_item.
        l_item ?= an_item-model.
        CALL METHOD l_item->get_data
          IMPORTING
            ex_data = ls_mepoitem.
        ls_mepoitem-ebeln = ls_header-ebeln.
        APPEND ls_mepoitem TO lt_item.
    schedules
    accountings*
        CALL METHOD l_item->get_po_accountings
          IMPORTING
            ex_accountings = lt_accountings.
        LOOP AT lt_accountings INTO an_item.
          l_accounting ?= an_item-model.
          CALL METHOD l_accounting->get_data
            IMPORTING
              ex_data = ls_mepoaccounting.
          ls_mepoaccounting-ebeln = ls_header-ebeln.
          APPEND ls_mepoaccounting TO lt_account.
        ENDLOOP.
    item conditions
    foreign trade (item data; EIPO)
      ENDLOOP.
    so it acctualy copies every item from purchase number ebeln in lt_item.
    for each one of them it copies the account data into lt_account.
    so the last loop is for the item that i want to enhance.
    here it copies all the necessary data in lt_account except of course the profit center because that's the one that i need to insert.
    after this loop there is a form:
      PERFORM move_account_out TABLES lt_account
                                                                ext_poaccount
                               USING  header_currency.
    where the ext_poaccount is the poaccount parameter.
    this form:
    clears ext_poaccount.
    copies the data from lt_account into ext_poaccount.
    and returns the ext_poaccount with the empty Profit center field
    and so after performing get_current_data my parameter is deleted.
    then it's almost the end of the function and nothing else related to the poaccount parameter.
    so it's no use for me to insert the field Profit_Center?
    is there another FM that i should use to be able to insert the profit center?
    what should i do?
    Best regards,
    Emilia

  • User Exit for Purchase Requisition Number Range

    Dear Experts,
    I searched on sdn, i got M06B0003 &M06B0004 this 2 user exit for PR Number range.
    I have activated both User exits but while creating PR is not getting effect of that user exit.
    I have checked by putting Break-point in respective user exit but while saving the PR it should go to that break-point but it not going there aslo.
    And also i have checked user exit MM06E003 but it is for Purchase Order number range.And for PO it is working.
    Please help me to solve this issue.Solution will be appreciated.
    Regards,
    Sanket.

    Hi,
    Sorry that badi will not help try this one ...EXIT_SAPLMEREQ_009 in MEREQ001 where the export parameters is purchase requisition number....
    Thanks,
    Shailaja Ainala.

  • Is it possible to define a seperate number range for purchase requisitions

    Hi Experts,
    Is it possible to define a seperate number range for purchase requisitions that come from Forecast vs normal MRP requisitions so that our purchasing department can identify the origin of the document?
    Thanks
    for the thoughts
    Sreeni

    You'd need to figure out manually how forecast PR's are different from MRP PR's (the field from PR tables ) and then in the user exit I mentioned the program looks at the table T161 and field NUMKI, and if the PR getting created is from forecast change that NUMKI in the program to a different one else keep it as it is. If you're know abap programming it won't take long to figure out the logic else work with your developer to implement it.

  • User Exit for ME52N with Purchase Requisition number & line item number

    Does anyone know which user exit I could use to get at the purchase requisition number and line item number when I am trying to change a PR.  I see various exits with im_req_item but when I code a popup in the include it is not appearing.  I am just not finding the right exit.

    You can use enhancement MEREQ001, function exit EXIT_SAPLMEREQ_005. This enhancement description gives impression that it can only be used if you have custom fields but it can be used even when you don't have custom fields.

  • "No selectable item exist for purchase requisition I_Banfn"

    Dear all
    While creating Po system show a massage"no selectable item exist for purchase requisition I_Banfn"
    Please help.

    Hi,
    PR status in status TAB in item details  You have following:
    Processing status :Specifies the current processing status of the purchase requisition: IS PO Created or RFQ created etc...
    Block ID:The requester (PR creator)can block a requisition item to prevent it from being converted to a purchase order
    Processing State: Released or not Released
    You need check above & then act to unblock if blocked , release it if it is not released  or check if this PR already converted to PO.
    Follow the steps to create PO from PR:
    Enter ME21N T.Code
    Click u201CDocument Overview onu201D
    Click u201CSelection Variantu201D and Select Purchase requisition and double click & Execute
    Now  you will PR Numbers,Select your PR Number , you will have line items(10,20,30 etc..) , you will have all the details of PR (like item category,material , quanitites for each line items) and Now click u201CAdoptu201D and u will see all PR related copy to PO.
    Regards,
    Biju K

  • Can't use Overall Release for Purchase Requisitions

    I have two groups, AA and ZZ.  Each group has it's own Class.
    Group AA uses Cost Center Class (CN)  (uses Characteristics Cost Center and Line Amount)
    Group ZZ uses Order Class (OC) (uses Characteristic Order)
    I have built one and only one Release Strategy for each of these Groups.  These Strategies both work successfully when I select the other group to be the group for Overall Release.  That is, if I set ZZ to be for Overall Release, then create a requisition, the release strategy for Group AA is applied successfully.  However, if I modify the req the strategy for ZZ, does not get applied.
    The opposite is true.  When AA is set to be for Overall release, then ZZ works.  However, if I modify the req, then AA's release strategy does not get applied.
    Again, both strategies work correctly when the other Group is set to be the one to use for Overall Release.  However, neither strategy works if its group is set to be the one for Overall Release.
    What am I missing?  I only have two classes, two groups, and two release strategies.

    SAP Standard system allows only 8 levels of release codes.If client requirement is more than 8 then for excess release codes customisation is done by the technical team (Abapers).Lets take an example of 15 release levels required for a client according to his Business needs then in this case initial 7 codes are customised and remaining 8 release codes are configured in the system.
    Release procedure is of two types
    Release Procedure without classification
                 This procedure is applicable only for Purchase Requisitions.
                 Here PR is released Item by Item only.
    Release Procedure with classification
                This procedure is applicable to PR,RFQ,Service Entry sheet,RFQ,PO,Contract  and scheduling agreements.
                Item by Item and Header level releases can be configured
                For PR - both item by item and Header level release can be configured
                For external purchasing documents - Release is possible only at Header level.
    Step 1:
    Create Characteristics
    In this step we need to create characteristics - conditions to be satisfied for triggering Release startegy.For example client has asked to set release strategy based on 3 inputs.Combination of value, Plant and Purchasing group
                1) Total value of PR more than Rs 50,000
                   create  characteristic as "Release_PR_total_value" in transaction code CT04.
                  Tab -  Basic data " Data type --- CURR currency format", "Decimal places - eg. 2 " and "currency  eg. INR or USD"
                  Tab -values key in > 50000 INR
                  Tab -  Additional Data-  Table Name "CEBAN" and Field Name "GSWRT"
                  Tab - Restrictions - class type - 032 - Release strategy
                2) Plant
                     Create characteristic "Release_PR_plant" in transaction code CT04.
                     Tab - Basic data - Data type - CHAR; Number of chars - 4
                     Tab - Values - Key in all the plants for which you are required to configure release proc.  eg. 1000,2000,3000
                     Tab - Additional data - Table name CEBAN and Field Name is WERKS.
                3) Purchaisng Group
                     Create characteristic "Release_PR_PurchasingGroup" in TCode CT04
                    Tab - Basic data - Data Type - char, Number of chars eg. 3
                    Tab - values - Key in all the purchasing Groups for which Release proc. is to be configured as required by Client.
                    Tab - Addnl Data - Table Name CEKKO and field name - EKGRP
    Step 2:
    Define class in transaction code CL02
    Menu path SPRO>Materials Mgmt>Purchasing>Purchase Requisition>Release Procedure>Procedure with Classification>Edit classes
    Here we assign all the above created Characteristics to a CLASS so that a release strategy to be triggered when all the conditions are met.
    Create a new class with free choice of names as "PR_Release_proc" in transaction code CL02.*Key in the class name and select class type as 032 - RELEASE STRATEGY then click on symbol create to enter all the details as mentioned below.
    Tab - Basic data - Enter description as "PR_Release-Proc",
    status- Released, Same classification - check the push button - Warning Message
    Tab- CHAR Enter above created 3 characteristics
    1.Release_PR_total_value
    2.Release_PR_plant
    3.Release_PR_PurchasingGroup
    step3:   
    Menu path is
    SPRO>Materials Mgmt>Purchasing>Purchase Requisition>Release Procedure>Procedure with Classification>set up procedure with classification>
    here define
    1.Release Groups
    Release group 01 is used for Purchase requisitions and 02 for Purchase orders.
    Here assign class "PR_Release_proc" against release code "01"
    check "OvRelPReq" indicator for over all release (All line items )of document in one shot else it will be released line item wise.
    2.Release codes
    Release codes are assigned to Release groups, in Workflow these release codes are tagged to users' SAP IDs through which they will be able to approve or reject a PR in SBWP(Inbox in SAP Business workplace.
    PRs are released by users in transaction code ME54N.
    Eg
    Type of user            - Level -             Release code                    
    PR creator - clerk or Business user -  
    Approver    -  Supervisor                 -   R1
    Approver  -   Project Lead              -   R2
    Approver   -  Asst. Manager             -  R3
    Approver   -  HOD/General Manager  - R4
    Release codes R1 to R5 are assigned to corresponding users.Manager R4 can only approve the PR if prior approvals till R3 are completed else not in ideal situation.
    For detailed info please refer
    http://help.sap.com/saphelp_erp60_sp/helpdata/en/75/ee1fa755c811d189900000e8322d00/frameset.htm
    3. Release Indicator:
    Release indicators show the release status of a Purchase Requisition.
    For detailed info please refer SAP Help official site
    http://help.sap.com/saphelp_erp60_sp/helpdata/en/75/ee1fa755c811d189900000e8322d00/frameset.htm
    4.Release Pre requisites:
    These define the order in which individuals or departments release the PR in sequence.
    3.Release strategies
    Create a new release startegy  eg ."A1" or "U1" , write its description PR release for value >1 lakh
    Now select release codes according to the Chart of Authority set by your client.
    Eg.
    Release startegy " A1 - PR release for value >1 lakh"
    R1 - Supervisor   
    R2- Project Lead    
    R3- Asst. Manager 
    R4- General Manager
    Now click on" Release  Prerequisites "push button and check all the boxes in ascending order.Save the document
    click on "Release statuses" push button, check release statuses then click on "Continue" push button.
    In third push button you can maintain CLASSIFICATION data or later you can directly mainatain in transaction code CL20N for this strategy.
    Classification data for example
    1. Value - > 100000
    2. Plant - 1000,2000,3000 etc
    3. Purchasing groups - 101,102,103 etc
    By clicking on "Release Simulation" push button you can check whether release is getting affected for configured release codes or not.
    In this way you can configure all the required Release startegies.
    Now create a PR in T code ME51N with the above conditions then a new tab will appear in PR creation screen at the time of check.Save the document and this can be released by respective users in TCode ME54N.
    Tcode - ME54N - For Individual Release
    Tcode - ME55 - For Collective Release
    For detailed info please visit SAP HELP website
    http://help.sap.com/saphelp_erp60_sp/helpdata/en/75/ee1fa755c811d189900000e8322d00/frameset.htm
    http://help.sap.com/saphelp_erp60_sp/helpdata/en/75/ee1fa755c811d189900000e8322d00/frameset.htm
    Regards,
    Indranil

  • Customer Subscreen for Purchase Requisition

    Hello All,
    I need a custom subscreen on requisition at <b>HEADER</b> level.  'MEREQ001' adds a screen at item level. Is there any Screen Exit / BADI to add a custom screen at header level? Any kind of help is really appreciated.
    Thank you all,
    Chandni

    Hi Chandi Reddy,
    The t.code is ME51 For this available exits are :
    AMPL0001  User subscreen for additional data on AMPL
    LMEDR001  Enhancements to print program
    LMELA002  Adopt batch no. from shipping notification when posting
    LMELA010  Inbound shipping notification: Transfer item data from
    LMEQR001  User exit for source determination
    LMEXF001  Conditions in Purchasing Documents Without Invoice Rece
    LWSUS001  Customer-Specific Source Determination in Retail
    M06B0001  Role determination for purchase requisition release
    M06B0002  Changes to comm. structure for purchase requisition rel
    M06B0003  Number range and document number
    M06B0004  Number range and document number
    M06B0005  Changes to comm. structure for overall release of requi
    M06E0004  Changes to communication structure for release purch. d
    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., previe
    MEFLD004  Determine earliest delivery date f. check w. GR (only P
    MELAB001  Gen. forecast delivery schedules: Transfer schedule imp
    MEQUERY1  Enhancement to Document Overview ME21N/ME51N
    MEVME001  WE default quantity calc. and over/ underdelivery toler
    MM06E001  User exits for EDI inbound and outbound purchasing docu
    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 P
    MM06E008  Monitoring of contr. target value in case of release or
    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 proces
    MMAL0004  ALE purchasing info record distribution: Inbound proces
    MMDA0001  Default delivery addresses
    MMFAB001  User exit for generation of release order
    MRFLB001
    For t.code we51n the available exits and badi are :
    Enhancement/ Business Add-in            Description
    Enhancement
    MEREQ001                                Customers' Own Data in Purchase Requisition
    Business Add-in
    ME_COMMITMNT_PARKING                    BAdI for Redefining Commitment Interface When Parking
    ME_MEREQ_PARKING                        BAdI Purchase Requisition: "Hold"
    ME_REQ_HEADER_TEXT                      Copy Header Text: Enjoy Purchase Requisition
    o.of Exits:          1
    o.of BADis:          3
    Rewards some points.
    Rgds,
    P.Naganjana Reddy

  • User exit/BADI  for Purchase requisition through release of Process order

    Hi ,
    i need to add some text to the Pur Req.
    The Pur Req will be created THROUGH the release of PROCESS order. Please let me know any exits are available for the same.
    regards

    Hi
    Check the following Exits and BADI for Pur Requisition
    Enhancement
    MEVME001                                WE default quantity calc. and over/ underdelivery tolerance
    MM06E001                                User exits for EDI inbound and outbound purchasing documents
    MM06E003                                Number range and document number
    MM06E004                                Control import data screens in purchase order
    MM06E005                                Customer fields in purchasing document
    MM06E007                                Change document for requisitions upon conversion into PO
    MM06E008                                Monitoring of contr. target value in case of release orders
    MM06E009                                Relevant texts for "Texts exist" indicator
    MM06E010                                Field selection for vendor address
    MM06E011                                Activate PReq Block
    MMAL0001                                ALE source list distribution: Outbound processing
    MMAL0002                                ALE source list distribution: Inbound processing
    MMAL0003                                ALE purcasing info record distribution: Outbound processing
    MMAL0004                                ALE purchasing info record distribution: Inbound processing
    MMDA0001                                Default delivery addresses
    MMFAB001                                User exit for generation of release order
    MRFLB001                                Control Items for Contract Release Order
    AMPL0001                                User subscreen for additional data on AMPL
    LMEDR001                                Enhancements to print program
    LMELA002                                Adopt batch no. from shipping notification when posting a GR
    LMELA010                                Inbound shipping notification: Transfer item data from IDOC
    LMEQR001                                User exit for source determination
    LMEXF001                                Conditions in Purchasing Documents Without Invoice Receipt
    LWSUS001                                Customer-Specific Source Determination in Retail
    M06B0001                                Role determination for purchase requisition release
    M06B0002                                Changes to comm. structure for purchase requisition release
    M06B0003                                Number range and document number
    MEQUERY1                                Enhancement to Document Overview ME21N/ME51N
    MELAB001                                Gen. forecast delivery schedules: Transfer schedule implem.
    MEFLD004                                Determine earliest delivery date f. check w. GR (only PO)
    MEETA001                                Define schedule line type (backlog, immed. req., preview)
    ME590001                                Grouping of requsitions for PO split in ME59
    M06E0005                                Role determination for release of purchasing documents
    M06E0004                                Changes to communication structure for release purch. doc.
    M06B0005                                Changes to comm. structure for overall release of requisn.
    M06B0004                                Number range and document number
    Business Add-in
    ME_PROCESS_REQ_CUST                     Enhancements for Processing Enjoy PReqs: Customer
    ME_PROCESS_REQ                          Enhancements for Processing Enjoy PReqs: Internal
    ME_PROCESS_PO_CUST                      Enhancements for Processing Enjoy Purchase Order: Customer
    ME_PROCESS_PO                           Enhancements for Processing Enjoy Purchase Order: Intern.
    ME_PROCESS_COMP                         Processing of Component Default Data at Time of GR: Custome
    ME_PO_SC_SRV                            BAdI: Service Tab Page for Subcontracting
    ME_PO_PRICING_CUST                      Enhancements to Price Determination: Customer
    ME_PO_PRICING                           Enhancements to Price Determination: Internal
    ME_INFOREC_SEND                         Capture/Send Purchase Info Record Changes - Internal Use
    ME_HOLD_PO                              Hold Enjoy Purchase Orders: Activation/Deactivation
    ME_GUI_PO_CUST                          Customer's Own Screens in Enjoy Purchase Order
    ME_FIELDSTATUS_STOCK                    FM Account Assignment Behavior for Stock PR/PO
    ME_DP_CLEARING                          Clearing (Offsetting) of Down Payments and Payment Requests
    ME_PURCHDOC_POSTED                      Purchasing Document Posted
    SMOD_MRFLB001                           Control Items for Contract Release Order
    EXTENSION_US_TAXES                      Extended Tax Calculation with Additional Data
    ARC_MM_EKKO_WRITE                       BAdI: Enhancement of Scope of Archiving (MM_EKKO)
    ARC_MM_EKKO_CHECK                       BAdI: Enhancement of Archivability Check (MM_EKKO)
    MM_EDI_DESADV_IN                        Supplementation of Delivery Interface from Purchase Order
    MM_DELIVERY_ADDR_SAP                    Determination of Delivery Address
    ME_WRF_STD_DNG                          PO Controlling Reminder: Extension to Standard Reminder
    ME_TRIGGER_ATP                          Triggers New ATP for Changes in EKKO, EKPO, EKPV
    ME_TRF_RULE_CUST_OFF                    BADI for Deactivation of Field T161V-REVFE
    ME_TAX_FROM_ADDRESS                     Tax jurisdiction code taken from address
    ME_REQ_POSTED                           Purchase Requisition Posted
    ME_REQ_OI_EXT                           Commitment Update in the Case of External Requisitions
    ME_RELEASE_CREATE                       BAdI: Release Creation for Sched.Agrmts with Release Docu.
    ME_DEFINE_CALCTYPE                      Control of Pricing Type: Additional Fields
    ME_CHANGE_OUTTAB                        Enrich ALV Output Table in Purchasing
    ME_CHANGE_CHARACTER                     Customer-Specific Characteristics for Product Allocation
    ME_CCP_DEL_DURATION                     Calc. of Delivery Duration in CCP Process (Not in Standard)
    ME_CCP_BESWK_AUTH_CH                    BAdI for authorization checks for procuring plant
    ME_CCP_ACTIVE_CHECK                     BAdI to check whether CCP process is active
    ME_BSART_DET                            Change document type for automatically generated POs
    ME_BAPI_PR_CREATE_02
    ME_BAPI_PR_CREATE_01
    ME_BAPI_PO_CREATE_02
    ME_BAPI_PO_CREATE_01
    ME_BADI_DISPLAY_DOC                     BAdI for Internal Control of Transaction to be Invoked
    ME_ACTV_CANCEL_PO                       BAdI for Activating the Cancel Function at Header Level
    MEGUI_LAYOUT                            BAdI for Enjoy Purchasing GUI
    ME_CHECK_ALL_ITEMS                      Run Through Items Again in the Event of Changes in EKKO
    ME_COMMTMNT_REQ_RE_C                    Check of Commitment Relevance of Purchase Requisitions
    ME_COMMTMNT_REQ_RELE                    Check of Commitment Relevance of Purchase Requisitions
    ME_COMMTMNT_PO_REL_C                    Check for Commitment-Relevance of Purchase Orders
    ME_COMMTMNT_PO_RELEV                    Check for Commitment-Relevance of Purchase Orders
    ME_COMMITMENT_STO_CH                    BadI for checking if commitments for STOs are active
    ME_COMMITMENT_RETURN                    Commitment for return item
    ME_CIP_REF_CHAR                         Enables Reference Characteristics in Purchasing
    ME_CIP_ALLOW_CHANGE                     Configuration in Purchasing: Changeability Control
    ME_CIN_MM06EFKO                         Copy PO data for use by Country version India
    ME_CIN_LEINRF2V                         BADI for LEINRF03 excise_invoice_details
    ME_CIN_LEINRF2R                         BADI for CIN India - Delivery charges
    ME_CHECK_SOURCES                        Additional Checks in Source Determination/Checking
    ME_CHECK_OA                             Check BAdI for Contracts
    Reward points if useful
    Regards
    Anji

  • Release strategy for purchase requisition does not kick in

    Hi Gurus!
    I've been struggling with this issue for some weeks now.
    I have set up the release strategy configuration for purchase requisitions with classifications.
    However, if I create a purchase requisition the release functionality is not taken into account by the system.
    See below some more information regarding my configuration:
    1. I've created a new characteristic "REL_PR_GROUP". Status: released, Multiple values, Number of Chars 3, 7 values (TR1, TR2, TR3....TR7), Table name: CEBAN, Field name: EKGRP, Procedure for value assignment set to not ready for input.
    2. I've created a new class: "REL_PR_ANPC". Class type 032, Status: released, Same classification: do not check, Char: "REL_PR_GROUP"
    3. I have one release group "T1", Rel. object 1, OverReqRel is marked, Class: "REL_PR_ANPC"
    4. I have 5 release codes. Grp: T1, Code: 01....05
    5. I have 2 release indicators:
    "R = Released", Rel. for ordering is marked, Changeabil: 4, Value chgs. 100,0
    "X = Blocked",  Changeabil: 4, Value chgs. 100,0
    6. I have 1 release strategy:
    "T1 with Grp T1"
    - one release group, 01 Manager
    - release prerequisites not applicable because of only one release group
    - release status, nothing marked = blocked, 01 marked = released
    - classification, purchasing group is TR1 or TR2 or TR3 or TR4 or TR5 or TR6 or TR7
    I intentionally kept the configuration as simple as possible so I can try to get it working first.
    Now if I create a purchase requisition for an item with release group T1, I would expect the release strategy to be activated. However, this is not the case. I don't see the "release status" tab in the PR, and if I try to relase via ME54 the system says the PR is not relevant for release.
    Could you please assist in getting this working?

    Hi,
    Have you checked in CL30/CL30N if your release strategy is derived successfully?
    See section 3 of Note 365604. A small section of it:
    You can use transaction CL30 search for an object using the data
    of the purchase requisition/purchase order. Here, it is important
    that the object search determines exactly one strategy. If this
    is not the case, this indicates that there are overlapping
    strategies in the system or that the release strategies in
    Customizing do not correspond with those from transaction CL24.
    See the previous point. If the object search returns more than
    one result, the system subsequently determines an incorrect
    release strategy or no release strategy at all.
    If it is derived successfully, next, check the user exit EXIT_SAPLEBND_001 as per Note 371667:
    The following assignment statement has to exist within activated SAP
    enhancements M06B0002 (include zxm06u13) and M06B0005 (include zxm06u31)
    for purchase requisitions:
         E_CEBAN = I_CEBAN.
    Regards,
    Purnima.

  • Fetch Sales Order number VBELN from Purchase requisition number BANFN

    Hi,
    I'm not able to find a suitable method to fetch the sales order number(VBELN) from the purchase requisition number(BANFN).
    I tried using VBEP table to fetch the data, but it is giving serious performance issues, as in for fetching one record it is taking approx 20 seconds!!!
    Kindly suggest a suitable method for this.
    I've used the query as folllows:
    select single vbeln banfn
    from vbep
    into (wa_vbep-vbeln, wa_vbep-banfn)
    where banfn eq wa_eban_zdd1_x-banfn.
    where: wa_vbep is the workarea having two fields vbeln and banfn, and wa_eban_zdd1_x-banfn is the reference preq number.
    Scenario in brief described below:
    Whenever a direct delivery sales order is created on a supply chain plant, a dummy purchase requisition without source of supply is created automatically at preferred supplying plant for the customer in the sales order. Direct Delivery Sales Orders which are still in Open status and for the associated dummy purchase requisitions with these sales order, the deletion flag set has to be unchecked.
    in this case, only one sales order is created corresponding to a preq..
    BAPI: BAPI_PR_GETDETAIL is not giving entries for the table as this is a special case of direct delivery from the production plant directly to the customer, bypassing the warehouse / distribution center...
    selection screen has input fields preq, matnr(product) and plant. we fetch entries depending on the data filled in selection screen and also they should be of document type(BSART in EBAN table) ZDD1 and deletion indicator is set(LOEKZ in EBAN).
    then we check if the sales order corresponding to the preq is in open status...
    for this i need to programmatically fetch the sales order number corresponding to the preq...
    this is causing a performance issue as i could find only one way -- fetching sales order number from VBEP table corresponding to BANFN... indexing for easier also didnt work...
    no other way i could find to fetch sales order number corresponding to the preq number....
    there is a bapi: BAPI_PR_GETDETAIL, but this is not fetching entries to the changing tables related to sales order...
    also EBKN table doesnt have any entries as this is a special case of direct delivery preq..
    Guess i couldnt find anyother way...
    Thanks.

    I'm not sure as to why the select query was still throwing performance issues. I could see that the index had been created on only BANFN in the DB. Prior to creating the index, it was taking approx 20 seconds per entry, but after creating the index, it took 13seconds approx.
    I used the select query as follows:
    select single vbeln banfn
    from vbep
    into (wa_vbep-vbeln, wa_vbep-banfn)
    where banfn eq wa_eban_zdd1_x-banfn.
    where: wa_vbep is the workarea having two fields vbeln and banfn, and wa_eban_zdd1_x-banfn is the reference preq number.
    I tried a few other combinations also, but  those also didnt work effectively:
    select vbeln banfn
    from vbep
    into (wa_vbep-vbeln, wa_vbep-banfn)
    where banfn eq wa_eban_zdd1_x-banfn.
    without using SINGLE in the select query as the select query would implicitly pickup only a single record,
    select vbeln banfn
    from vbep
    into wa_vbep
    where banfn eq wa_eban_zdd1_x-banfn.
    and another query where the INTO statement was directed directly to a workarea.
    But unfortunately, nothing seemed to be working.
    The index i had created was on BANFN alone in the VBEP table.

  • How to add a new line item to a Purchase Requisition number

    Hello All,
    Can anyone please provide me with some FM or BAPI to add a new line item to an existing Purchase Requisition number.
    Can it be done using BAPI_REQUISITION_CHANGE; if yes, then how do I pass the parameters into the BAPI tables..?
    Useful pointers would be appreciated...!!
    Thanks & Regards,
    Tarun Gambhir

    @Gautham,
    Thanks for the quick reply.
    I want to update the table EBAN, so should I use the parameter table XEBAN to put in the new line item and then execute..
    Also to fill up this table I need to pass certain value, so can I use BAPI_REQUISITON_GETDETAIL and pass the same details as found from the same BAPI and create a new line item...
    Regards,
    Tarun Gambhir

  • Purchase requisition  number Range in MRP Run (MD02)

    Hi Experts ,
    When I run the MRP through T-Code MD02 even in test mode the Purchase requisition number getting consumed with out saving the entries.
    for eg:- number range = 100 to 200.
    when I execute the MD02 by selecting the indicator "Display results before they are saved " system showed a Purchase requisition number 100 and exit with out saving the entries.Next time when I execute the same MD02 system is displaying the purchase requisation number as 101, where as i have not used PR number 100 at all.
    Please guide me....
    Regards,
    Sri.

    Sri,
    Nothing is missing.  This is standard behavior.  It appears to me that SAP makes no effort to ensure that all Purchase request numbers are contiguous.
    You can try turning off number range buffering.  This will reduce the number of gaps in your purchase req number sequences.  However, I don't know if it will eliminate all gaps.  Be aware that there is a performance tradeoff when you deactivate buffering.  Making this change is considered to be a system modification, and is not supported by SAP.
    https://service.sap.com/sap/support/notes/62077
    Rgds,
    DB49

  • Purchase Requisition number (current number) not seen correctly in OMI2

    Hi All,
    I see purchase requisition number created for the last number in the number range defined for Purchase Req., but i do not see the last number in the "current number" area. What are the possible reason for this ?
    Regards,
    PSS
    Edited by: PSS on May 26, 2011 7:47 PM

    PSS,
    This is not usually considered to be a problem.  Are you using number range buffering?
    https://service.sap.com/sap/support/notes/141497
    Best Regards,
    DB49

  • ESOA: Enterprise Service for Purchase Requisition Query.

    Hi,
    I am not sure whether I am posting this question to the right forum, if not then please let me know the correct route.
    I am trying to test the standard enterprise service for purchase requisition query response. It brings all the purchase requisitions even though they are deleted and not appearing in MD04.
    Is there a way I can restrict and get only active purchase requistion. I am using the service PurchaseRequestItemByProductAndOrganisationalDataQueryResponse_In

    Not Answered.

Maybe you are looking for