From 4152e99bbdd56f45b24fe71af6e4f58dd33358fb Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Mon, 4 Aug 2014 11:42:40 +0200 Subject: [PATCH] [FIX] mrp: duplicated find bom buttons The product_id field is not required on a mrp.bom (while product_tmpl_id is). When searching for BOMs linked to a product.product, we should display the one specific to this product and the ones linked to the template (but not linked to another variant). --- addons/mrp/mrp_view.xml | 22 ++++------------------ addons/mrp/product.py | 10 +++++++++- 2 files changed, 13 insertions(+), 19 deletions(-) diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml index 73b139605e0..1eb470e8488 100644 --- a/addons/mrp/mrp_view.xml +++ b/addons/mrp/mrp_view.xml @@ -1055,20 +1055,6 @@ groups="mrp.group_mrp_user" attrs="{'invisible':[('type', '=', 'service')]}" icon="fa-flask"> - - - - - - product.product.procurement - product.product - - -
-
- - - product.product.mrp.button + + + product.product.procurement product.product @@ -1094,7 +1080,7 @@ - + Stock Warehouse Inherited stock.warehouse diff --git a/addons/mrp/product.py b/addons/mrp/product.py index e767687512e..19c21098736 100644 --- a/addons/mrp/product.py +++ b/addons/mrp/product.py @@ -81,8 +81,16 @@ class product_product(osv.osv): for product in self.browse(cr, uid, ids, context=context): products.add(product.product_tmpl_id.id) result = tmpl_obj._get_act_window_dict(cr, uid, 'mrp.product_open_bom', context=context) + # bom specific to this variant or global to template + domain = [ + '|', + ('product_id', 'in', ids), + '&', + ('product_id', '=', False), + ('product_tmpl_id', 'in', list(products)), + ] result['context'] = "{}" - result['domain'] = "[('product_tmpl_id','in',[" + ','.join(map(str, list(products))) + "])]" + result['domain'] = str(domain) return result # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: