Show price and currency fields on stock move when they are not required but still filled

This is to let the user clear the invalid fields from past moves.

Closes #14919
(grafted from d5ace112f8a9315a6740ef75c2bda4cc8b94b90e)

--HG--
branch : 8.0
This commit is contained in:
Cédric Krier
2026-10-01 09:54:29 +02:00
parent 175cfc21b5
commit 072cd3b91f
+9 -5
View File
@@ -322,8 +322,10 @@ class Move(Workflow, ModelSQL, ModelView):
()),
],
states={
'invisible': ~Eval('unit_price_required'),
'required': Bool(Eval('unit_price_required')),
'invisible': (
~Eval('unit_price_required', False)
& (Eval('unit_price', None) == None)), # noqa: E711
'required': Eval('unit_price_required', False),
'readonly': Eval('state') != 'draft',
})
unit_price_company = fields.Function(
@@ -346,7 +348,7 @@ class Move(Workflow, ModelSQL, ModelView):
()),
],
states={
'invisible': ~Eval('cost_price_required'),
'invisible': ~Eval('cost_price_required', False),
'required': (
(Eval('state') == 'done')
& Eval('cost_price_required', False)),
@@ -370,8 +372,10 @@ class Move(Workflow, ModelSQL, ModelView):
()),
],
states={
'invisible': ~Eval('unit_price_required'),
'required': Bool(Eval('unit_price_required')),
'invisible': (
~Eval('unit_price_required')
& (Eval('currency', None) == None)), # noqa: E711
'required': Eval('unit_price_required', False),
'readonly': Eval('state') != 'draft',
},
help="The currency in which the unit price is specified.")