line/splitline: quantitiy-states korrigiert

This commit is contained in:
Frederik Jaeckel 2023-01-16 22:23:13 +01:00
parent b9b500624e
commit bf84b092fc
3 changed files with 40 additions and 28 deletions

View file

@ -6,27 +6,27 @@
from trytond.pool import PoolMeta, Pool
from trytond.model import fields
from trytond.pyson import Eval, Or
from trytond.pyson import Eval, Or, And
from trytond.modules.cashbook.line import STATES
from .mixin import SecondUomMixin
from .line import STATESQ1, DEPENDSQ1
STATES = {
'readonly': Or(
Eval('state', '') != 'edit',
Eval('state_cashbook', '') != 'open',
),
'required': Eval('feature', '') == 'asset',
'invisible': Eval('feature', '') != 'asset',
}
DEPENDS=['state', 'state_cashbook', 'feature']
STATESQ1A = {}
STATESQ1A.update(STATESQ1)
STATESQ1A['readonly'] = ~And(
~STATES['readonly'],
Eval('bookingtype', '').in_(['spin', 'spout']),
Or(
Eval('feature', '') == 'asset',
Eval('booktransf_feature', '') == 'asset',
))
class SplitLine(SecondUomMixin, metaclass=PoolMeta):
__name__ = 'cashbook.split'
quantity = fields.Numeric(string='Quantity',
digits=(16, Eval('quantity_digits', 4)),
states=STATES, depends=DEPENDS+['quantity_digits'])
states=STATESQ1A, depends=DEPENDSQ1)
quantity_digits = fields.Function(fields.Integer(string='Digits',
readonly=True, states={'invisible': True}),
'on_change_with_quantity_digits')