Change PO Price

If PO has been posted goods receipt already, I sure that I need to reverse the material document if I need to change the PO price. But sometime, the delivery has been posted, in worst case the invoice has been issued and the payment has been cleared. I would like to know, any efficient way to handle those senarios. thanks!

Hi
You have two options
1. Post a subsequent debit to the vendor for excess payment requested and then clear this invoice for payment. You can clear the payment document through FBRA and then again clear the original invoice, subsequent debit invoice in one single clearing payment.
2. Reverse the clearing document (if payment is made to vendor) through FB08, reverse the invoice through MR8M, cancel the goods receipt and change purchase order.
Thanks

Similar Messages

  • After creation of PO system should not allow to change the price in PO

    Hi There,
    In my scenario once PO is created then after send to vendor PO print document,Users are changing the price in PO.so system should not allow to change the price in PO once PO got saved.
    So please advice.

    Hi,
    you could set in customizing for field selection keys the net price      
    to display for ME22N so that changes can not be made         
    (transaction OLME -> purchase order -> Define Screen Layout at Document Level).
    Please check that you have set all the relevant field selection      
    groups to display: AKTV, ME22, ME22N... (read and apply note 30316)                                                                               
    Other workaround is try to do by yourself with the badi                      
    ME_PROCESS_PO_CUST and send your own error message.    
    Regards,
    Edit

  • Is there any transaction that will change net price in a purchase order

    Hi All,
               Is there any program / transaction where i can change the net price for few materials in the purchase orders (say 100 purchase orders) which has been created few days back. Please let me know at the earliest.
    Regards,
    PSS

    Hi,
    By changing the price in the Info Record price condition it is possible to made to reflect the same in PO Net Price through Automatic document Adjustment.
    MEI1 & MEI2 are used for Invidual & Mass processing.
    Its applicable to Vendor / Material combination i.e. Info Record.
    Regards,
    Ramesh

  • Help to change the price in sales order create bapi

    hi,
       i am able to change the price but not what i am trying to do.
       can anybody please help . here i am submitting the code.
        i am trying to enter the 40 into price field but it is takeing 400
    <b>report  zmybapi1        .
    data : my_order_header_in like bapisdhd1 occurs 0 with header line,
           my_order_header_ix like bapisdhd1x occurs 0 with header line.
    data : my_orderitemsin like bapisditm  occurs 0 with header line,
           my_orderitemsix like bapisditmx occurs 0 with header line.
    data : my_order_partners like bapiparnr occurs 0 with header line.
    data : my_return like bapiret2 occurs 0 with header line.
    data : w_vbeln like bapivbeln-vbeln.
    data:
         my_orderschedulesin like bapischdl occurs 0 with header line,
         my_orderschedulesinx like bapischdlx occurs 0 with header line.
    data : my_orderconditionsin like bapicond occurs 0 with header line,
           my_orderconditionsinx like bapicondx occurs 0 with header line.
    start-of-selection.
    this is to assign values to internal table my_order_header_in
      my_order_header_in-doc_type   = 'TA'.
      my_order_header_in-sales_org  = 'JNJ1'.
      my_order_header_in-distr_chan = '02'.
      my_order_header_in-division   = 'J1'.
      my_order_header_in-sales_off  = 'JNJ1'.
      my_order_header_in-purch_no_c = 'testbapipo'.
      my_order_header_in-purch_date = sy-datum.
      my_order_header_in-req_date_h = sy-datum.
      append my_order_header_in.
    this is to assign values to internal table my_orderitemsin
      my_orderitemsin-material      = '000000000000000727'.
      my_orderitemsin-plant         = 'JNJ1'.
      my_orderitemsin-target_qu     = 'EA'.
      my_orderitemsin-target_qty    = '10'.
      append my_orderitemsin.
    this is to assign values to internal table my_order_partners
      my_order_partners-partn_role = 'AG'.
      my_order_partners-partn_numb = '0000000011'.
      append my_order_partners.
      my_order_partners-partn_role = 'WE'.
      my_order_partners-partn_numb = '0000000011'.
      append my_order_partners.
    This is to assign values to internal table my_orderschedulesin
    my_orderschedulesin-itm_number = '10'.
      my_orderschedulesin-itm_number = '000010'.
      my_orderschedulesin-req_qty   = '10'.
      my_orderschedulesin-SCHED_LINE = '0001'.
      append my_orderschedulesin.
    *This is to assign values to internal table my_orderconditionin
      my_orderconditionsin-itm_number = '000010'.
    my_orderconditionsin-cond_type = 'ZPR1'.
      my_orderconditionsin-cond_value = '40'.
      append my_orderconditionsin.
      my_order_header_ix-updateflag = 'I'.
      my_order_header_ix-doc_type   = 'X'.
      my_order_header_ix-sales_org  = 'X'.
      my_order_header_ix-distr_chan = 'X'.
      my_order_header_ix-division   = 'X'.
      my_order_header_ix-sales_off  = 'X'.
      my_order_header_ix-purch_no_c = 'X'.
      my_order_header_ix-purch_date = 'X'.
      my_order_header_ix-req_date_h = 'X'.
      append my_order_header_ix.
      my_orderitemsix-updateflag    = 'I'.
      my_orderitemsix-material      = 'X'.
      my_orderitemsix-target_qty    = 'X'.
      my_orderitemsix-plant         = 'X'.
      my_orderitemsix-target_qu     = 'X'.
      append my_orderitemsix.
      my_orderschedulesinx-updateflag = 'I'.
    my_orderschedulesinx-sched_line = '0001'.
      my_orderschedulesinx-req_qty    = 'x'.
      append my_orderschedulesinx.
      my_orderconditionsinx-itm_number = '000010'.
      my_orderconditionsinx-cond_type = 'ZPR1'.
      my_orderconditionsinx-updateflag = 'U'.
      my_orderconditionsinx-cond_value = 'X'.
      append my_orderconditionsinx.
      call function 'BAPI_SALESORDER_CREATEFROMDAT2'
        exporting
      SALESDOCUMENTIN               =
          order_header_in               = my_order_header_in
          order_header_inx              = my_order_header_ix
      SENDER                        =
      BINARY_RELATIONSHIPTYPE       =
      INT_NUMBER_ASSIGNMENT         =
      BEHAVE_WHEN_ERROR             =
      LOGIC_SWITCH                  =
      TESTRUN                       =
      CONVERT                       = ' '
        importing
          salesdocument                 = w_vbeln
        tables
          return                        = my_return
          order_items_in                = my_orderitemsin
          order_items_inx               = my_orderitemsix
          order_partners                = my_order_partners
        ORDER_SCHEDULES_IN            =  my_orderschedulesin
          order_schedules_inx           = my_orderschedulesinx
       ORDER_CONDITIONS_IN           =  my_orderconditionsin
       ORDER_CONDITIONS_INX          =  my_orderconditionsinx
      ORDER_CFGS_REF                =
    if sy-subrc ne 0.
        write: my_return-message, my_return-number, my_return-type.
      else.
         call function 'BAPI_TRANSACTION_COMMIT'
         EXPORTING
           WAIT          =
         IMPORTING
           RETURN        =
          write: my_return-message, my_return-number, my_return-type.
    endif.</b>
    Message was edited by: pavan kumar pisipati

    Is there any Multiplication happening in the condition type or any other conditions executes. Please check those..
    Another way is, if always  a multiplication of 10 is happening then pass the value by dividing it by 10. But this way is not a nice way or programming...
    Check out both and let me know if not working.
    Cheers,
    Thomas.

  • Mass Change Standard Price in Accounting view of material master

    Hi anybody,
    I am maintaining more than 5000 records material master . Each time  change material prices using MR21, but I don't want go MR21. need to develope one abap program for change material standard prices using BAPI or normal ABAP Program. how do I develope?
    please give me sample program for that.
    Thanks
    S.Muthu

    Hello Mani
    I have already checked all the open items.....
    No sale order. No entry in table MSEG.
    Only one PO without GR.....So that should not make any difference.
    Br
    Avinash

  • What is the effect of change material price in previous period?

    i have changed the material price in 31/12/2010 and we are in period 01/2011
    but the moving price doesn't changed in period 01/2011 its still the old price.
    i want to know why the system didn't change the price for period 01/2011
    and  i want to change the price for now and all next periods.?

    Hi,
    you are using moving average price and not standard price.
    You can change standard price thru costing run. you can't change moving average price it is calculated based on procurement. further you can change thru MR21 but beware it will generate revaluation entry that will have financial impact.
    If you still has doubt then please elaborate the requirements.
    Regards,
    Atul
    Edited by: Mr. Atu on Jan 23, 2011 2:40 PM

  • How to change PO price after Goods receipt

    Hi Expert,
    This is very urgent. I have created PO with account assignment (Individual order/project (D)) and has material master last month and received goods last month too.
    PO item already been issued and used for production. There is no stock balance both urestricted and sales order stock.
    Now we need to change the PO price for paying the vendor right price. I have tried MBST to cancel/reverse material document and give me error message saying "Sales ord stk deficit" I think because of no stock avaible in the system.
    I need a urgent solution: How can  i change PO price or cancel material doc to adjust the PO price.
    Thanks,
    Mohammed Rahman

    Hi Mohammed
    Which step system appear error ?
    Example: Qty PO have already receipt 4 set, you already used 3 set. Stock have 1 set.
    When you use 561with quantity 5 set, stock have 6 set.
    after u cancel PO wrong price (qty is 4 set) - stock have 2 set  but when you change PO and Goods Receipt again stock will have 6 set.
    And you use 562 with Qty 5set => now stock still have 1 set.
    And price already changed.
    Regards,
    Thang
    Edited by: Cao Danh Thang on Jun 13, 2008 4:30 AM

  • Problem in bdc to change  std price to moving price

    hi
    I had created BDC for changing std price ' S ' to moving price ' V ' . I had done recording for MM02 Trans.
    At the time of creation of material ,MM person selects different views for same type of material .
    moving price presents  in Accounting 1 View. In recording this view was at 13th position  .but If I check my BDC for other material while running BDC in foreground it takes MRP1 view which is at 13th position 
    because here the no of views are more as compared to the recorded material .Again position of recording is also not matching.
    please advice what to do in this case ?
    Thanks in Advance.
    Regards,
    Atul

    hiii,
    take the PSTAT field from mara for that particular material and make the following changes in ur code.
      PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         '1' 'SAPLMGMM' '0060',
         ' ' 'BDC_CURSOR' 'RMMG1-MATNR',
         ' ' 'BDC_OKCODE' '/00',
         ' ' 'RMMG1-MATNR' new_material,
         ' ' 'RMMG1-MBRSH' ind_sec,
         ' ' 'RMMG1-MTART' mat_type.
    PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
           ' ' 'BDC_OKCODE' '=P+'.
    SEARCH pstat FOR 'K'. "BASIC DATA
      IF sy-subrc = 0.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         ' ' 'MSICHTAUSW-KZSEL(01)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(02)' 'X'.
      ENDIF.
        SEARCH pstat FOR 'V'. "SALES ORG DATA
      IF sy-subrc = 0.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         ' ' 'MSICHTAUSW-KZSEL(04)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(05)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(06)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(07)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(08)' 'X'.
      ENDIF.
      CLEAR flag_pur.
      SEARCH pstat FOR 'E'. "PURCHASING
      IF sy-subrc = 0.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         ' ' 'MSICHTAUSW-KZSEL(09)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(10)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(11)' 'X'.
    *************SHAFI********
        flag_pur = 'X'.
      ENDIF.
        SEARCH pstat FOR 'D'. "MRP
      IF sy-subrc = 0.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         ' ' 'MSICHTAUSW-KZSEL(12)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(13)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(14)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(15)' 'X'.
      ENDIF.
    SEARCH pstat FOR 'P'. "FORECASTING
    IF sy-subrc = 0.
       PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
        ' ' 'MSICHTAUSW-KZSEL(16)' 'X'.
    ENDIF.
      SEARCH pstat FOR 'A'. "WORK SCHEDULING
      IF sy-subrc = 0.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         ' ' 'MSICHTAUSW-KZSEL(17)' 'X'.
      ENDIF.
      PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
             '1' 'SAPLMGMM' '0070',
           ' ' 'BDC_OKCODE' '=ENTR'.
      SEARCH pstat FOR 'Z'. "GENERAL PLANT DATA/STORAGE LOCATION
      IF sy-subrc = 0.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         ' ' 'MSICHTAUSW-KZSEL(01)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(02)' 'X'.
      ENDIF.
    ****************shafi**********
      IF NOT v_drg IS INITIAL.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
        ' ' 'MSICHTAUSW-KZSEL(02)' 'X'.
      ENDIF.
      SEARCH pstat FOR 'S'. "WAREHOUSE MGMT
      IF sy-subrc = 0.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         ' ' 'MSICHTAUSW-KZSEL(03)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(04)' 'X'.
      ENDIF.
      SEARCH pstat FOR 'Q'. "QUALITY MGMT
      IF sy-subrc = 0.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         ' ' 'MSICHTAUSW-KZSEL(05)' 'X'.
      ENDIF.
      SEARCH pstat FOR 'B'. "ACCOUNTING
      IF sy-subrc = 0.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         ' ' 'MSICHTAUSW-KZSEL(06)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(07)' 'X'.
      ENDIF.
      SEARCH pstat FOR 'G'. "COSTING
      IF sy-subrc = 0.
        PERFORM POPULATE_BDC_TAB1  tables itab1 USING :
         ' ' 'MSICHTAUSW-KZSEL(08)' 'X',
         ' ' 'MSICHTAUSW-KZSEL(09)' 'X'.
      ENDIF.
    make sure that u have the ok code 'P+' for view which are displayed after u press page down event.
    Hope it helps u..
    Regards,
    Anil N.

  • How to change the price list in document?

    Dear All,
    Is it possible to change the price list in document (e.g. Sales Order) by program (UI)?
    If no, any other way to do so? Thanks!
    Regards,
    On

    Dear Gordon,
    It may be Purchase Order or Sales Order. But different target will have different solution?
    Regards,
    On

  • Change of price control from "s" to "v" in the material master

    Dear All,
    Due to business requirement, we would like to change the price control for FERT items in the material master from "S-Standard Cost" to "V-Moving Average Price". This change we would like to do only at sales plants (Non-Manufacturing Locations). Very few materilas are having the stock on the date of the price control change
    I would like to know is there any SAP Note / Any of you are having such experience? Please arrange the same.
    Regards
    Anilkumar

    Hi,
       i am not sure about any program but through MR21 you can change tthe Price in material master.
    If stock is available system will hit to closing stock of the material for price change in case stock is not available it will hit price difference gl account.
    Regards,
    Sankar

  • How to change the price of a material in PO

    Hi,
      Please tell me how to change the price of a material while raising a  PO,for example  i am raising a PO and in conditions  the price is 100 and i wanna update it to 110.Please help me

    HI,
    If you are using condion record, you can change the value for the required condition type so that it will flow to PO. IF you are not using that, you can change the price at the line item level in PO itself.
    Regards
    Ram

  • Can change the price in the PO line item

    Hello experts,
    I have this Purchase order document where I can change the price in the PO line item(ME22N) where as in the other PO that I have created, changing the price in ME22N is not possible(shaded). They are all the same document type and plant combination. For the PB00 condition type configuration, It is set to D- not possible to process manually.
    Please help.

    Thanks for your answer. Yes i am aware of that, basically the settings is what the price indicated in the info record and as long it is included in the validty periiod then when you create the PO, that price will be detected by the system. i am clear for that, my issue is why there are some materials that i can change the price in the PO directly while the others are the pricing tab is disabled(cannot change the price)
    Settings in the SPRO-MM - PURHASING- CONDITIONS-DEFINE PRICE DETERMINATION PROCESS- DEFINE CONDITION TYPES PB00 is D(NOT POSSIBLE TO PROCESS MANUALLY) but stilll the system is showing some PO's that can be changed the price

  • Change the price of my book online

    Hi,
    How i can change the price of my book online ?
    I want to sell a € 10.99 instead of € 6.99
    What i have to do ?
    Thanks

    But why i've to choose : Price Effective Date & Price End Date ?
    The following error(s) occurred: 
    You must select a Price Effective Date
    You must select a Price End Date

  • Not able to change the price of PO

    Hi All,
    I am not able to edit the price on PO.
    Materail is free text catalog orders from SRM, I am not able to change the price.
    Could you please help me in changing the price.
    Is there any other steps i need to do to change the price.
    Thanks

    Hi there,
    Is it greyed out or do you get an error?
    Are there any follow-on documents?
    Regards,
    Matthew

  • How to change net Price by using BAPI_PO_change

    Hi experts..
    How i can change net price by using bapi_po_change.
    What parameters i have to pass in this fm.
    if possible please tell me , which table this FM will update.
    Thanks.
    I will award points for all help.

    See the below code and have tested and it works great..
    REPORT  ZTEST_PG_07 NO STANDARD PAGE HEADING
                        MESSAGE-ID z9_msg_prash.
    Tables Declaration  ****
    TABLES: ekpo.
    Variables Declaration  ****
    DATA: v_purchaseorder TYPE bapimepoheader-po_number.
    DATA: v_ebelp TYPE ekpo-ebelp.
    Constants Declaration  ****
    CONSTANTS: x VALUE 'X'.
    Internal Tables Declaration  ****
    DATA: it_return  TYPE STANDARD TABLE OF bapiret2 WITH HEADER LINE.
    DATA: it_poitem  TYPE STANDARD TABLE OF bapimepoitem WITH HEADER LINE.
    DATA: it_poitemx TYPE STANDARD TABLE OF bapimepoitemx WITH HEADER LINE.
    DATA: wa_return  TYPE bapiret2.
    Selection Screen  ****
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
    PARAMETERS: p_ebeln LIKE ekpo-ebeln OBLIGATORY.
    PARAMETERS: p_ebelp LIKE ekpo-ebelp.
    PARAMETERS: p_menge LIKE ekpo-menge.
    SELECTION-SCREEN END OF BLOCK b1.
    AT SELECTION-SCREEN
    AT SELECTION-SCREEN ON p_ebeln.
      IF p_ebeln IS NOT INITIAL.
        SELECT SINGLE ebeln INTO v_purchaseorder FROM ekpo
        WHERE ebeln = p_ebeln.
        IF sy-subrc <> 0.
          MESSAGE e002.
        ENDIF.
      ELSE.
        MESSAGE e005.
      ENDIF.
    AT SELECTION-SCREEN ON p_ebelp.
      if p_ebeln is not initial.
      IF p_ebelp IS NOT INITIAL.
        SELECT SINGLE ebelp INTO v_ebelp FROM ekpo
        WHERE ebeln = p_ebeln AND ebelp = p_ebelp.
        IF sy-subrc <> 0.
          MESSAGE e003.
        ENDIF.
      ELSE.
        MESSAGE e006.
      ENDIF.
      endif.
    START-OF-SELECTION
    START-OF-SELECTION.
      v_purchaseorder = p_ebeln.
      it_poitem-po_item  = p_ebelp.
      it_poitem-quantity = p_menge.
      it_poitem-net_price = '20.00'.
      APPEND it_poitem.
      it_poitemx-po_item  = p_ebelp.
      it_poitemx-po_itemx = x.
      it_poitemx-quantity = x.
      APPEND it_poitemx.
    *&----Calling BAPI function module
      CALL FUNCTION 'BAPI_PO_CHANGE'
        EXPORTING
         purchaseorder                = v_purchaseorder
        testrun                      = x
       TABLES
         return                       = it_return
         poitem                       = it_poitem
         poitemx                      = it_poitemx.
         CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
          EXPORTING
            WAIT          = space
         IMPORTING
           RETURN        =
    END-OF-SELECTION
    END-OF-SELECTION.
      LOOP AT it_return INTO wa_return.
        WRITE:/ wa_return-message.
      ENDLOOP.
    Thanks
    Seshu

  • SBO2007A can no longer change the Price after Discount on marketing docs

    In SBO2005A (subjecting to Document Settings), you could change the Price after Discount.  Thisis no longer available in SBO2007A (unless you upgrade from SBO2005A with the appropiate settings.
    I have not found a customer who thinks this is good idea.
    Good to reinstate the functionality.
    Regards
    Jeff

    Hi,
    The field "Price after discount" can become editable if you unmark the checkbox "Calculate the row Total using the Unit Price" (Document Settings->General Tab). As default this checkbox is disabled for new installations.
    Also, please check the following link as well :
    Re: Net price calculation
    Regards,
    Jitin
    SAP Business One Forum Team

Maybe you are looking for

  • UK iphone user - travel adapter advice needed

    Hi, We're heading off to Mexico shortly from the UK for a two week vacation. Since I intend to take my iPhone 3G with us for emergency use and to take advantage of the free wireless in the hotel (with data roaming switched off), I need some guidance

  • My phone goes straight to answer phone when people call

    My iPhone 4s sometimes goes straight to answer phone when people call. I don't hear the phone ring at all. It's really frustrating as I miss important calls.

  • Iphoto crashing and more...

    Running iPhoto 11, version 9.4.3 on a MacBook Pro 10.8.4.  The problem started with iPhoto when I scanned some old photos (1940's-1960's) and imported them into iPhoto.  Some photos say that they can't be edited because the original format is not sup

  • I have Firefox 5 and Reminderfox. But Reminderfox doesn't show. What's the problem?

    I have Firefox 5 and Reminderfox. But Reminderfox doesn't show. What's the problem?

  • JSP compile problem - Scriptlet

    Hello, I'm using weblogic 10.3. I have problem when i run a web application. The problem is accured when weblogic try to compile jsp page that contains such syntax : *<jsp:param name="messageKey" value="<%=request.getParameter("noCebMessageKey")%>" /