c2c-oerpscenario team mailing list archive
-
c2c-oerpscenario team
-
Mailing list archive
-
Message #12428
[Bug 688493] Re: Stock wizard_partial_picking Average price computation doesn't work as expected
** Changed in: openobject-addons/trunk
Milestone: None => 6.0
--
You received this bug notification because you are a member of C2C
OERPScenario, which is subscribed to the OpenERP Project Group.
https://bugs.launchpad.net/bugs/688493
Title:
Stock wizard_partial_picking Average price computation doesn't work as
expected
Status in OpenObject Addons Modules:
Fix Released
Status in OpenObject Addons 5.0 series:
Fix Released
Status in OpenObject Addons trunk series:
Fix Released
Bug description:
In the wizard_partial_picking.py in line 146 the new standard_price of a product (cost_method = average) is calculated:
new_std_price = ((product.standard_price * product.qty_available) + (new_price * qty))/(product.qty_available + qty)
I've a product with a standard_price of 1500 and an available qty of
2, now i purchase 2 additional product with a unit price of 1000:
if ive one move_line with qty:2 price 1000 the calculation works fine:
((1500 * 2) + (1000 * 2)) / (2 + 2) = 1250
but if i split the the line in 2 lines each with a qty of 1 and a
price of 1000 the product_qty_available will not be taken in count
wich causes this problem:
((1500 * 2) + (1000 * 1)) / (2 + 1) = 1333,33
after calculating the new cost_price for the first line the new price is written in the product but the qty_available doesnt change
as the workflow action that ends the move is called later in the method.
((1333,33 * 2) + (1000 * 1)) / (2 + 1) = 1222,22
This average price is wrong, the right one would take the additional qty of the first line in count :
((1333,33 * 3) + (1000 * 1)) / (2 + 1) = 1250
References