diff --git a/purchase.py b/purchase.py index ea34100eb5..e5dac654a2 100644 --- a/purchase.py +++ b/purchase.py @@ -1165,9 +1165,11 @@ class Line(sequence_ordered(), ModelSQL, ModelView): delivery_date = fields.Function(fields.Date('Delivery Date', states={ 'invisible': ((Eval('type') != 'line') - | Eval('delivery_date_edit', False)), + | (Eval('delivery_date_edit', False) + & ~Eval('purchase_state').in_( + ['processing', 'done', 'cancelled']))), }, - depends=['type', 'delivery_date_edit']), + depends=['type', 'delivery_date_edit', 'purchase_state']), 'on_change_with_delivery_date') delivery_date_edit = fields.Boolean( "Edit Delivery Date", @@ -1182,7 +1184,9 @@ class Line(sequence_ordered(), ModelSQL, ModelView): "Delivery Date", states={ 'invisible': ((Eval('type') != 'line') - | ~Eval('delivery_date_edit', False)), + | ~Eval('delivery_date_edit', False) + | Eval('purchase_state').in_( + ['processing', 'done', 'cancelled'])), 'readonly': Eval('purchase_state').in_([ 'processing', 'done', 'cancelled']), },