From 11cf8f5e5bbde29344fae039f1bbdac48adcdd0d Mon Sep 17 00:00:00 2001 From: "Ajay Chauhan (OpenERP)" Date: Wed, 3 Oct 2012 16:43:35 +0530 Subject: [PATCH] [IMP] mrp_subproduct: added onchange method for product_uom field in mrp.subproduct object bzr revid: cha@tinyerp.com-20121003111335-qyu7e0683gj3zt3o --- addons/mrp_subproduct/mrp_subproduct.py | 12 ++++++++++++ addons/mrp_subproduct/mrp_subproduct_view.xml | 4 ++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/addons/mrp_subproduct/mrp_subproduct.py b/addons/mrp_subproduct/mrp_subproduct.py index bacdeb2c675..87a9fc6fdd7 100644 --- a/addons/mrp_subproduct/mrp_subproduct.py +++ b/addons/mrp_subproduct/mrp_subproduct.py @@ -22,6 +22,7 @@ from osv import fields from osv import osv import decimal_precision as dp +from tools.translate import _ class mrp_subproduct(osv.osv): _name = 'mrp.subproduct' @@ -51,6 +52,17 @@ class mrp_subproduct(osv.osv): return {'value': v} return {} + def onchange_uom(self, cr, uid, ids, product_id, product_uom, context=None): + res = {'value':{}} + if not product_uom or not product_id: + return res + product = self.pool.get('product.product').browse(cr, uid, product_id, context=context) + uom = self.pool.get('product.uom').browse(cr, uid, product_uom, context=context) + if uom.category_id.id != product.uom_id.category_id.id: + res['warning'] = {'title': _('Warning'), 'message': _('Selected Unit of Measure does not belong to the same category as the product Unit of Measure.')} + res['value'].update({'product_uom': product.uom_id.id}) + return res + mrp_subproduct() class mrp_bom(osv.osv): diff --git a/addons/mrp_subproduct/mrp_subproduct_view.xml b/addons/mrp_subproduct/mrp_subproduct_view.xml index 94da87ef0de..b9e8fcc41ed 100644 --- a/addons/mrp_subproduct/mrp_subproduct_view.xml +++ b/addons/mrp_subproduct/mrp_subproduct_view.xml @@ -11,13 +11,13 @@ - +
- +