[IMP] product : Improved onchange on min/max margin value.
authorDivyesh Makwana (Open ERP) <mdi@tinyerp.com>
Mon, 24 Sep 2012 09:53:22 +0000 (15:23 +0530)
committerDivyesh Makwana (Open ERP) <mdi@tinyerp.com>
Mon, 24 Sep 2012 09:53:22 +0000 (15:23 +0530)
bzr revid: mdi@tinyerp.com-20120924095322-jtgzlxkohon6qc6y

addons/product/pricelist.py
addons/product/pricelist_view.xml

index 7ac908e..7d47f2e 100644 (file)
@@ -436,20 +436,13 @@ class product_pricelist_item(osv.osv):
         return {}
 
     def onchange_margin(self, cr, uid, ids, price_min_margin, price_max_margin, context=None):
-        res = {'value': {}}
+        res = {'value': {'price_min_margin': 0.0, 'price_max_margin': 0.0}}
         if not price_min_margin and not price_max_margin:
             return res
         if price_min_margin > price_max_margin:
             res['warning'] = {'title': _('Warning!'), 'message': _('Minimum Margin must be lower than Maximum Margin !.')}
-            pricelist_rule = self.browse(cr, uid, ids, context=context)[0]
-            min_margin = 0.0
-            max_margin = 0.0
-            if price_min_margin:
-                min_margin = pricelist_rule.price_min_margin
-                res['value'] = dict(res['value'], price_min_margin = min_margin)
-            if price_max_margin:
-                max_margin = pricelist_rule.price_max_margin
-                res['value'] = dict(res['value'], price_max_margin = max_margin)
+        else:
+            res = {'value': {'price_min_margin': price_min_margin, 'price_max_margin': price_max_margin}}
         return res
 
 product_pricelist_item()
index 47fada8..7dcdeae 100644 (file)
                         <field name="price_surcharge" nolabel="1"/>
                         <newline/>
                         <field name="price_round" string="Rounding Method"/>
-                        <field name="price_min_margin" string="Min. Margin" on_change="onchange_margin(price_min_margin, False)"/>
-                        <field name="price_max_margin" string="Max. Margin" on_change="onchange_margin(False, price_max_margin)"/>
+                        <field name="price_min_margin" string="Min. Margin" on_change="onchange_margin(price_min_margin, price_max_margin)"/>
+                        <field name="price_max_margin" string="Max. Margin" on_change="onchange_margin(price_min_margin, price_max_margin)"/>
                     </group>
 
                 </form>