diff options
| author | Ravi Gohil (OpenERP) <> | 2012-11-23 17:13:39 +0530 |
|---|---|---|
| committer | Mayur Maheshwari (OpenERP) <mma@tinyerp.com> | 2012-11-23 17:13:39 +0530 |
| commit | f57f48100eb7aa8ff9e2aa06a8ca9c75a67b945e (patch) | |
| tree | dabffc9cc847fe555611cc84cd874dfd2d80799e /addons | |
| parent | b5a04899791b048f00a7ac05a71912525e24a333 (diff) | |
[FIX]mrp_byproduct: Fixed the UoM conversion issue between subproduct defined in BOM and UoM defined in manufacturing order
bzr revid: mma@tinyerp.com-20121123114339-2ffxfzjn0aa5rfrh
Diffstat (limited to 'addons')
| -rw-r--r-- | addons/mrp_byproduct/mrp_byproduct.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/addons/mrp_byproduct/mrp_byproduct.py b/addons/mrp_byproduct/mrp_byproduct.py index 9caf626834a..4b03c9a7d9d 100644 --- a/addons/mrp_byproduct/mrp_byproduct.py +++ b/addons/mrp_byproduct/mrp_byproduct.py @@ -86,18 +86,23 @@ class mrp_production(osv.osv): @return: Newly generated picking Id. """ picking_id = super(mrp_production,self).action_confirm(cr, uid, ids) + product_uom_obj = self.pool.get('product.uom') for production in self.browse(cr, uid, ids): source = production.product_id.product_tmpl_id.property_stock_production.id if not production.bom_id: continue for sub_product in production.bom_id.sub_products: + product_uom_factor = product_uom_obj._compute_qty(cr, uid, production.product_uom.id, production.product_qty, production.bom_id.product_uom.id) qty1 = sub_product.product_qty qty2 = production.product_uos and production.product_uos_qty or False + product_uos_factor = 0.0 + if qty2 and production.bom_id.product_uos.id: + product_uos_factor = product_uom_obj._compute_qty(cr, uid, production.product_uos.id, production.product_uos_qty, production.bom_id.product_uos.id) if sub_product.subproduct_type == 'variable': if production.product_qty: - qty1 *= production.product_qty / (production.bom_id.product_qty or 1.0) + qty1 *= product_uom_factor / (production.bom_id.product_qty or 1.0) if production.product_uos_qty: - qty2 *= production.product_uos_qty / (production.bom_id.product_uos_qty or 1.0) + qty2 *= product_uos_factor / (production.bom_id.product_uos_qty or 1.0) data = { 'name': 'PROD:'+production.name, 'date': production.date_planned, |
