← Back to team overview

c2c-oerpscenario team mailing list archive

[Bug 779064] [NEW] incorrect invoice price - average price + real time missing code

 

Public bug reported:

to reproduce

product with
* costing method: average price
* inventory valuation: real time
* stockable

PO: 
* Invoice control from picking

create some PO , process picking, validate invoice
etc

the problem
create PO , price= 10
process picking AND modify price = 11
* create stock move - 
** with modified and correct price_unit = 11

* create invoice from picking
invoice line takes price from product

def _get_price_unit_invoice:
takes standard (= average) price from product

IMHO in this case the invoice should take the (modified) price from
stock move.

because:
./stock.py:1213: 
                        # used for inventory valuation if real-time valuation is enabled.
                        move_obj.write(cr, uid, [move.id],
                                {'price_unit': product_price,
                                 'price_currency_id': product_currency})

if the invoice is created from the picking (which is very often the case
in small companies where no pricelists and standard price exists for
purchased products) it does not make much sense to use/propose a
different price in the invoice.

the users has to correct the price during "process picking" AND on the
invoice line again. - a source of errors.

** Affects: openobject-addons
     Importance: Undecided
         Status: New

-- 
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/779064

Title:
  incorrect invoice price - average price + real time missing code

Status in OpenERP Modules (addons):
  New

Bug description:
  to reproduce

  product with
  * costing method: average price
  * inventory valuation: real time
  * stockable

  PO: 
  * Invoice control from picking

  create some PO , process picking, validate invoice
  etc

  the problem
  create PO , price= 10
  process picking AND modify price = 11
  * create stock move - 
  ** with modified and correct price_unit = 11

  * create invoice from picking
  invoice line takes price from product

  def _get_price_unit_invoice:
  takes standard (= average) price from product

  IMHO in this case the invoice should take the (modified) price from
  stock move.

  because:
  ./stock.py:1213: 
                          # used for inventory valuation if real-time valuation is enabled.
                          move_obj.write(cr, uid, [move.id],
                                  {'price_unit': product_price,
                                   'price_currency_id': product_currency})

  if the invoice is created from the picking (which is very often the
  case in small companies where no pricelists and standard price exists
  for purchased products) it does not make much sense to use/propose a
  different price in the invoice.

  the users has to correct the price during "process picking" AND on the
  invoice line again. - a source of errors.


Follow ups

References