diff --git a/modules/purchase_amendment/purchase.py b/modules/purchase_amendment/purchase.py index af105586d2..2ede5ae9d8 100644 --- a/modules/purchase_amendment/purchase.py +++ b/modules/purchase_amendment/purchase.py @@ -237,12 +237,12 @@ class AmendmentLine(ModelSQL, ModelView): If(Eval('state') == 'draft', ('purchasable', '=', True), ()), - If(Eval('product_uom_category'), - ('default_uom_category', '=', Eval('product_uom_category')), - ()), + ('default_uom_category', '=', Eval('product_uom_category', -1)), ], states={ - 'readonly': Eval('state') != 'draft', + 'readonly': ( + (Eval('state') != 'draft') + | ~Eval('product_uom_category', None)), 'invisible': Eval('action') != 'line', }, depends=['action', 'state', 'product_uom_category']) diff --git a/modules/sale_amendment/sale.py b/modules/sale_amendment/sale.py index 93baa1113e..560cc8d200 100644 --- a/modules/sale_amendment/sale.py +++ b/modules/sale_amendment/sale.py @@ -272,12 +272,12 @@ class AmendmentLine(ModelSQL, ModelView): If(Eval('state') == 'draft', ('salable', '=', True), ()), - If(Eval('product_uom_category'), - ('default_uom_category', '=', Eval('product_uom_category')), - ()), + ('default_uom_category', '=', Eval('product_uom_category', -1)), ], states={ - 'readonly': Eval('state') != 'draft', + 'readonly': ( + (Eval('state') != 'draft') + | ~Eval('product_uom_category', None)), 'invisible': Eval('action') != 'line', }, depends=['action', 'state', 'product_uom_category'])