from osv import fields
from osv import osv
+import decimal_precision as dp
class mrp_subproduct(osv.osv):
_name = 'mrp.subproduct'
_description = 'Sub Product'
_columns={
'product_id': fields.many2one('product.product', 'Product', required=True),
- 'product_qty': fields.float('Product Qty', required=True),
+ 'product_qty': fields.float('Product Qty', digits_compute=dp.get_precision('Product UoM'), required=True),
'product_uom': fields.many2one('product.uom', 'Product UOM', required=True),
'subproduct_type': fields.selection([('fixed','Fixed'),('variable','Variable')], 'Quantity Type', required=True),
'bom_id': fields.many2one('mrp.bom', 'BoM'),
_defaults={
'subproduct_type': lambda *args: 'fixed'
}
- _sql_constraints = [
- ('_check_product_qty', 'CHECK (product_qty > 0)', 'Enter valid product quantity !'),
- ]
- def onchange_product_id(self, cr, uid, ids, product_id,context={}):
+ def onchange_product_id(self, cr, uid, ids, product_id, context=None):
""" Changes UoM if product_id changes.
@param product_id: Changed product_id
@return: Dictionary of changed values
"""
if product_id:
- prod = self.pool.get('product.product').browse(cr, uid, product_id)
+ prod = self.pool.get('product.product').browse(cr, uid, product_id, context=context)
v = {'product_uom': prod.uom_id.id}
return {'value': v}
return {}
mrp_bom()
class mrp_production(osv.osv):
- _name = 'mrp.production'
_description = 'Production'
_inherit= 'mrp.production'