← Back to team overview

c2c-oerpscenario team mailing list archive

[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