Mass Update Purchase Order Price
Dear folks,
I have a bunch of purchase orders already created in the system. However, I received notification that there is a price increase in most of the products in the purchase orders.
How do I mass update the prices in the purchase orders?
I already updated the info records.
Best Regards
Junwen
Hi Piyush,
Thank you.
I am looking for some functionality that can let me update the prices in the PO with the latest prices from the info records.
Something to the effect of the mass pricing update function in VA05.
Is there anything like that in MM?
Best Regards
Junwen
Similar Messages
-
Hi All
On which table will I be able to find the last purchase order price for a material
VishnuHello, Vishnu
Table name: EINE (Purchasing Info Record: Purchasing Organization Data)
in the above table you can find the last PO price for that material. And the Conditions (Item) values are stored in the table: KONP (table name for Conditions (Item).
Suggestion: The last PO document (i mean PO, which contains the price of the material in the PO line item) is updated in the Purchase Info record.(this you can see in the Info record display through t.code: ME13)
Reward, if it helps,
Regards,
Srin.K
Edited by: sapsrin on Feb 12, 2008 5:51 AM -
Purchase order price change report
Hello
How to retieve the purchase order price change report ? do we have any standard report for it or any table which gives these data?
kindlHI
Have you activate version management at your end for PO,i think this will help you to track changes of PO for qty,price etc.
[http://wiki.sdn.sap.com/wiki/display/ERPLO/Version+Management]
Regards
Kailas Ugale -
Update Purchase order number in Sales order item level from inbound ORDCHG iDoc
Hi Gurus,
I want to update purchase order number from the iDoc 'ORDCHG' to sales order item level (sold to party purchase order number) i.e, VBAK-BSTKD.
Which exit I need to use? where to update? Can you please help.
Thank you in advance.
Regards,
SanFinally Resolved the problem by writing 2 exits.
one exit 'EXIT_SAPLVEDB_007' for identify correct item in the sales order by updating the customer purchase order item number i.e., VBAP-POSEX. if we update the POSEX field then it wont create new item instead, it will update the item which it is referring to .
2nd exit for updating the purchase order number.
I have tried to pass the program name, screen number, field name, field value etc to bdcdata in the exit 'EXIT_SAPLVEDB_002'. but I observed that it is not going to that screen in the debugging.
when I try E1EDP02 with QUALF '044' it will update ship-to party's purchase order number. so to update ship-to party's purchase order number it is going to that screen.
so I have used that thing to update purchase order number in sold-to party's purchase order number.
so when it is going that screen iam changing the field name 'VBKD-BSTKD_E' to 'VBKD-BSTKD' in bdcdata. Then it is worked.
This is the solution I found in my time.
Any way it is solved. Hope it will be helpful for others who will get this problem. -
Updating Purchase Order data in VBKD table
Hello,
We are trying to update Purchase order data in VBKD table for Sales Order at Item level. When sales Order is created, VBKD has a default record with VBELN = 'sales order number' and Item = '00000'. We want to update BSTKD_E field with Purchase order number for VBELN= 'sales order number' and Item = '00010'.
We wrote our logic in USEREXIT_SAVE_DOCUMENT_PREPARE and USEREXIT_MOVE_FIELDS_TO_VBKD in MV50AFZZ to append new entries in XVBKD with VBELN= 'sales order number' and Item = '00010'. But in this case Sales order is not created with UPDATE TERMINATED message. We are not sure if we can append a new record in XVBKD.
wa_xvbkd = xvbkd.
wa_xvbkd-posnr = wa_xvbap-posnr. "00010
wa_xvbkd-bstkd_e = vbkd-bstkd. "PO no
wa_xvbkd-posex_e = wa_xvbap-posnr. "Purch. order item no
wa_xvbkd-updkz = C_I.
APPEND wa_xvbkd TO xvbkd.
CLEAR wa_xvbkd.
Please advice the suitable way to have a Purchase Order item level data in Sales Order.
Thanks
RohitHi,
You can try these FM to update info record.
ME_DB_UPDATE_INFORECORDS
ME_UPDATE_INFORECORD
ME_UPDATE_INFORECORD_COND
ME_UPDATE_INFORECORD_PD
Check the sample code on BAPI_PO_CHANGE
http://www.sap-img.com/abap/sample-abap-code-on-bapi-po-change.htm
Regards,
Shiva Kumar -
Unable to update purchase order after partial delivery
bold Issue:
After upgrading from v2005 > v2007:
1) We created a PO with two different purchase items :
row 1: 10 pcs Item x
row 2: 15 pcs item Y
2) create a Goods Receipt PO based on the PO row 2 (15 pcs Item Y) so this row will be closed in the PO.
3) after saving the GRPO item Y is set as a non purchase item (deselected the tick box "Purchase Item" on the Item master), because the supplier will not be able to deliver this item again.
4) After changing item Y, we want to update the amount of Item X to for example 11 (instead of 10). This item is still a purchase item > while updating the PO the following error appears:
[Purchase Order - Rows - Item No.][line: 2] , 'The item is not a purchase item (2)' [Message 131-10]
In v2005 it was possible to follow the above procedure, however since the upgrade of v2007 the error appears.
The problem is that that it happens very often that the suppliers change the items, so they cannot be delivered anymore.
bold Below the response of SAP Support:
Line: -
Yes, I understand what you mean that the item you want to deliver is the other item PQ which is still a purchase item. However, the system does the checking based on document level, and not filtering only per Open rows. Hence, even if the item for B8 is fully closed, the system still detects that there is a non-purchase item in an open document (B8).
In order to update the other item PQ, please set the item B8 back to Purchase Item. Once the Sales Order is updated, you may update B8 again to Non Purchase.
If the possibility of using the 'Active/Inactive' button is not possible, another workaround is to use a User Define Field to flag the item. For example, you can set it as 'Y', when the supplier stopp ed selling the item. Then, in the Item Search window, you can filter the records to group those items that are set as 'Y' and the rest as 'N'. Only those 'N' items can be used when placing orders.
As an added procedure, you can generate an approval procedure that will be triggered when an item that is set as 'Y' in the User Defined field is added in the Purchase Order. When the approval is trig gered, the user can then re-verify the items added and make the necessary changes before saving the purchase document.
I hope the above workaround is suitable. I agree with the expected logic, but per Note937297, the stock status of an item is not meant to be changed after documents are added in the system. It seems a limitation in the current system.
Line: -
bold Solution:
The system should check if the open row can be delivered, since it still is a purchase item.
The provided workarounds are not an option for our customer, so we are looking forward to a positive reaction!
Kind regards,
CharlotteUnable to update purchase order after partial delivery
Issue:
After upgrading from v2005 > v2007:
1) We created a PO with two different purchase items :
row 1: 10 pcs Item x
row 2: 15 pcs item Y
2) create a Goods Receipt PO based on the PO row 2 (15 pcs Item Y) so this row will be closed in the PO.
3) after saving the GRPO item Y is set as a non purchase item (deselected the tick box "Purchase Item" on the Item master), because the supplier will not be able to deliver this item again.
4) After changing item Y, we want to update the amount of Item X to for example 11 (instead of 10). This item is still a purchase item > while updating the PO the following error appears:
[Purchase Order - Rows - Item No.][line: 2] , 'The item is not a purchase item (2)' [Message 131-10]
In v2005 it was possible to follow the above procedure, however since the upgrade of v2007 the error appears.
The problem is that that it happens very often that the suppliers change the items, so they cannot be delivered anymore.
Below the response of SAP Support:
Yes, I understand what you mean that the item you want to deliver is the other item PQ which is still a purchase item. However, the system does the checking based on document level, and not filtering only per Open rows. Hence, even if the item for B8 is fully closed, the system still detects that there is a non-purchase item in an open document (B8).
In order to update the other item PQ, please set the item B8 back to Purchase Item. Once the Sales Order is updated, you may update B8 again to Non Purchase.
If the possibility of using the 'Active/Inactive' button is not possible, another workaround is to use a User Define Field to flag the item. For example, you can set it as 'Y', when the supplier stopp ed selling the item. Then, in the Item Search window, you can filter the records to group those items that are set as 'Y' and the rest as 'N'. Only those 'N' items can be used when placing orders.
As an added procedure, you can generate an approval procedure that will be triggered when an item that is set as 'Y' in the User Defined field is added in the Purchase Order. When the approval is trig gered, the user can then re-verify the items added and make the necessary changes before saving the purchase document.
I hope the above workaround is suitable. I agree with the expected logic, but per Note937297, the stock status of an item is not meant to be changed after documents are added in the system. It seems a limitation in the current system.
Solution:
The system should check if the open row can be delivered, since it still is a purchase item.
The provided workarounds are not an option for our customer, so we are looking forward to a positive reaction!
Kind regards,
Charlotte -
Bad performance updating purchase order (ME22N)
Hello!
Recently, we face bad performance updating purchase orders using transaction ME22N. The problem occurs since we implemented change documents for a custom table T. T is used to store additional data to purchase order positions using BAdIs ME_PROCESS_PO_CUST and ME_GUI_PO_CUST.
I've created a change document C_T for T using transaction SCDO. The update module of the change document is triggered in the method POST of BAdI ME_PROCESS_PO_CUST.
Checking transaction SM13, I recognized that the update requests of ME22n have status INIT for several minutes before they are processed. I also tried to exclude the call of the update module for change document C_T (in Method POST) - the performance problem still occurs!
The problem only occurs with transaction ME22N, thus I assume that the reason is the new change document C_T.
Thanks for your help!
Greetings,
WolfgangI agree with vikram, we don't have enough information, even not a small hint on usage of this field, so which answer do you expect (The quality of an answer depends ...) This analysis must be executed on your system...
From a technical point of view, the BAPI_PO_CHANGE has EXTENSIONIN table parameter, fill it using structure BAPI_TE_MEPOITEM[X] alreading containing CI_EKPODB (*) and CI_EKPODBX (**)
Regards,
Raymond
(*) I guess you have used this include
(**) I guess you forgot this one (same field names but data element always BAPIUPDATE) -
Can anyone give me user exit name for create/update purchase order partners
Hello guys
Can anyone gives me user exit name for create/update purchase order partners?
Requirement is to insert/update partner when SC flag is checked while creating/updating purchase order (ME22N / ME21N) by using user exit.hi,
check these exits.
Transaction Code - ME21N Create Purchase Order
Enhancement/ Business Add-in Description
Enhancement
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
MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
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
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
M06B0003 Number range and document number -
Update Purchase Order number.(Link GL to PO)
Hi all,
Currently i am using the below query for one of our report(R12). However there is a need to update Purchase Order Number .Could anyone please help on how to link GL to PO and provide the updated query.The query is as follows.
SELECT gjl.je_line_num,
gjl.code_combination_id,
SUM(NVL(GJL.accounted_dr, 0)) AS Accounted_DR,
SUM(NVL(GJL.accounted_cr, 0)) AS Accounted_CR,
( SUM(NVL(GJL.accounted_dr, 0)) - SUM(NVL(GJL.accounted_cr, 0)) ) AS Accounted_Balance,
gjb.actual_flag,
NULL AS "Check Number",
gjb.name AS "Batch Name",
TO_CHAR(gjh.currency_conversion_date, 'DD-Mon-YYYY') currency_conversion_date,
ROUND(gjh.CURRENCY_CONVERSION_RATE,4) CURRENCY_CONVERSION_RATE,
gjh.currency_conversion_type,
NULL AS Document_Number,
SUM(NVL(GJL.entered_dr, 0)) AS Entered_DR,
SUM(NVL(GJL.entered_cr, 0)) AS Entered_CR,
( SUM(NVL(GJL.entered_dr, 0)) - SUM(NVL(GJL.entered_cr, 0)) ) AS Entered_Balance,
gcc.segment1
|| '.'
|| gcc.segment2
|| '.'
|| gcc.segment3
|| '.'
|| gcc.segment4
|| '.'
||gcc.segment5
|| '.'
|| gcc.segment6
|| '.'
|| gcc.segment7
|| '.'
|| gcc.segment8 "Account Code",
gl.currency_code AS "Ledger Currency",
gjh.name AS "Header Name",
gjl.description AS "Journal Line Description",
NULL AS party_name,
NULL AS party_id,
GJH.period_name,
TO_CHAR(gjh.POSTED_DATE, 'DD-Mon-YYYY') POSTED_DATE,
NULL AS "Purchase Invoice Number",
NULL AS "AP Invoice Line Description",
NULL AS "Sales Invoice Number",
gcc.segment1 Company ,
gcc.segment2 Account,
DECODE(gcc.segment2,NULL,'',apps.gl_flexfields_pkg.get_description_sql(gcc.chart_of_accounts_id,2,gcc.segment2)) AS "Seg2 Desc",
gcc.segment3 AS "Business Model",
gcc.segment4 Region,
gcc.segment5 AS "Cost Profit Center",
gcc.segment6 AS "Product Group",
gcc.segment7 AS "Related Company",
gcc.segment8 AS "Reserve",
gjl.status AS "Journal Line Status",
GL.name AS "LEDGER NAME",
GJH.currency_code,
GJH.je_category je_cat_f,
GJCT.user_je_category_name je_category,
GJH.je_source,
NULL AS "Sales_order" ,
NULL AS "Purchase Order Number"
FROM APPS.gl_je_headers gjh,
APPS.gl_je_batches gjb,
APPS.gl_ledgers gl,
APPS.gl_je_lines gjl,
APPS.gl_code_combinations gcc,
(SELECT je_category_name,
user_je_category_name
FROM APPS.GL_JE_CATEGORIES_TL
WHERE language='E'
) GJCT
WHERE gjh.je_from_sla_flag IS NULL
--AND gjh.EXTERNAL_REFERENCE IS NULL
AND gjb.je_batch_id = gjh.je_batch_id
AND gjh.ledger_id = gl.ledger_id
AND gjh.je_header_id = gjl.je_header_id
AND gcc.code_combination_id = gjl.code_combination_id
AND GJH.JE_CATEGORY = GJCT.je_category_name(+)
AND GL.name NOT IN('NL ABX RepCorp USD (EUR)')
GROUP BY gjl.je_line_num,
gjl.code_combination_id,
gjb.actual_flag,
gjb.name,
gjh.currency_conversion_date,
ROUND(gjh.CURRENCY_CONVERSION_RATE,4),
gjh.currency_conversion_type,
gcc.segment1
|| '.'
|| gcc.segment2
|| '.'
|| gcc.segment3
|| '.'
|| gcc.segment4
|| '.'
||gcc.segment5
|| '.'
|| gcc.segment6
|| '.'
|| gcc.segment7
|| '.'
|| gcc.segment8,
gl.currency_code,
gjh.name,
gjl.description,
gjb.je_batch_id,
gjb.status,
gjb.posted_date,
gjb.description,
gl.name,
gjh.name,
GJH.period_name,
gjh.posted_date,
gcc.segment1,
gcc.segment2,
gcc.segment3,
gcc.segment4,
gcc.segment5,
gcc.segment6,
gcc.segment7,
gcc.segment8,
GL.name,
gjl.status,
GJH.je_category,
GJCT.user_je_category_name,
GJH.je_source,
GJH.currency_code,
DECODE(gcc.segment2,NULL,'',apps.gl_flexfields_pkg.get_description_sql(gcc.chart_of_accounts_id,2,gcc.segment2))Finally Resolved the problem by writing 2 exits.
one exit 'EXIT_SAPLVEDB_007' for identify correct item in the sales order by updating the customer purchase order item number i.e., VBAP-POSEX. if we update the POSEX field then it wont create new item instead, it will update the item which it is referring to .
2nd exit for updating the purchase order number.
I have tried to pass the program name, screen number, field name, field value etc to bdcdata in the exit 'EXIT_SAPLVEDB_002'. but I observed that it is not going to that screen in the debugging.
when I try E1EDP02 with QUALF '044' it will update ship-to party's purchase order number. so to update ship-to party's purchase order number it is going to that screen.
so I have used that thing to update purchase order number in sold-to party's purchase order number.
so when it is going that screen iam changing the field name 'VBKD-BSTKD_E' to 'VBKD-BSTKD' in bdcdata. Then it is worked.
This is the solution I found in my time.
Any way it is solved. Hope it will be helpful for others who will get this problem. -
Error in the purchase order price.
Hi
Can you show me the standard procedure to correct a price difference between the PO and the invoice for the following cases.
The PO was created in September/2010 with a price of 15.
The GR was conducted in September/2010 with the same price.
The invoice is from November/2010 with a price of 24.
I wanted to cancel the receipt, or the period is closed. On the other hand it handles no price difference account.
How can I fix this?
Thank you for your helpHi,
Check price control of the material , it must be V, so the system valuates goods receipts with the purchase order price only . And as you have sufficient stock in invoiced quantity, the differences between the order price and the invoice price are debited to the stock account.
If no sufficient stock available in invoiced quantity or quantity is consumed or issued already before invoicing, then the difference between the order price and the invoice price is only posted an u201CExpenses/Revenue from price differencesu201D account
Regards,
Biju K -
Update purchase Order using offline file
Hi Experts
How to create and update purchase Order using offline file. How to execute offline API from program in batch ?Hi Experts
How to create and update purchase Order using offline file. How to execute offline API from program in batch ? -
Purchase requsition and Purchase order Price Changes
Hi All,
When purchase requsition(XXXXXXXX) is converted in to a purchase order through ME 59N(YYYYYYYYYY),after converting in to a purchase order i will change the purchase order price to a new value.
How can i track the price changes for a purchase order that is converted from a purchase requsition.(i know i can see the changes to a PO,under item changes for PO)
Is this data is stored in any table?
with regards,
AmoghHi,
this change is not captured, because the price is being changed at the point of the PO creation and so there will be no record in the header or item changes option (the system does not see anything as being changed because this is a creation of a new PO).
The price from the requisition is merely a suggestion and it is not meant to be a purchase price anyway (it is designed to be used to value the requisition for the release strategy).
I know that you can configure the system to pass this req "price" to the PO, but it is not the same price and so you will not find the type of controls that you would expect.
In many cases a simple ABAP is written that reads POs that have a reference requisition and the ABAP compares the prices and reports on those that exceed a tolerance (either hard coded in the program or held on a new table in SAP).
None of this is standard SAP but it is something that many people create to handle the situation where the user enters the requisition at a deliberately low value to get it through the release strategy.
Steve B -
Purchase Order Price and Invoice verification price
Hi All,
In which report we can get purchase order price and Invoice verification price in SAP standard.
Thank in Advance........
Regards,
SanjayHello,
Check ME80FN transaction and select change view on the output screen and select Purchase order history.
Regards,
Shailesh -
I am signed to the VPP and need to know if I can purchase apps on mass via purchase order
I am signed to the Volume Purchasing Programe (VPP) and need to know if I can purchase apps on mass via purchase order as a credit card payment will not be possible.
ThanksIf this is the business VPP, no, apparently not. The information from Apple says "Corporate credit card or PCard to purchase apps".
Regards. -
How can I prevent any use to update Purchase order if status was "Approval"
I have some users can update any purchasing order update after "Approval"
Please I would any Purchasing oracle module expert to Assist me to get way to solve problem.
How can I prevent any use to update Purchase order if status was "Approval"?
Further Information :
Oracle Allpication Release : 11.5.9
Oracle Purchasing Module.
Oracle Data Base: 11i
Khaled,Try writing a personalization on the PO screen that adds the following condition to the where clause
"and authorization_status !='APPROVED'
However, I will be careful with a blanket restriction like this. There are situations when you need to modify an existing PO. So you should code some exceptions for this rule.
Hope this helps,
Sandeep Gandhi
Maybe you are looking for
-
My Itunes wont open and i get a message which reads as follows: Runtime Error! R6034 An Application has made an attempt to load the C Runtime Library incorrectly. Please can someone assist to resolve this problem.
-
Is a hard drive faster on a shorter IDE cable?
Hello, I am considering connecting my main hard drive with a 24" IDE cable rather than using my 18" cable which I used previously. (The IDE cable therefore will be 6" longer.) Will this slow down the performance of the hard drive? My hard drive is a
-
5800 - problems after installing skype
Hey all, I have a 5800 which I have been using without issue for 6 months or so. Several days ago, I decided to install the Skype app, for whatever reason. However, once I did this, several problems suddenly sprang up. First, when I receive a text m
-
Any problems with RH10 demo on the same machine as RH9?
I need to install the RH10 demo with captivate on a machine with RH9. Will that create any problems?
-
Why Isn't a Resource's Task Assignment showing up on the timesheet?
Hi, I have a resource who has been working on a project for weeks and charging the projhect via his timesheet accordingly. This week none of the project tasks are showing up on his timesheet NOR DOES THE PROJECT SHOW UP ON THE LIST OF PROJECTS FROM W