diff --git a/modules/document_incoming/document.py b/modules/document_incoming/document.py index 5bf678a104..acfbc0edc4 100644 --- a/modules/document_incoming/document.py +++ b/modules/document_incoming/document.py @@ -54,7 +54,7 @@ class Incoming(DeactivableMixin, Workflow, ModelSQL, ModelView): ('document_incoming', "Unknown"), ], "Type", states={ - 'required': Eval('state') == 'done', + 'required': Eval('active', True) & (Eval('state') == 'done'), 'readonly': _states['readonly'], }) source = fields.Char("Source", states=_states) @@ -74,7 +74,7 @@ class Incoming(DeactivableMixin, Workflow, ModelSQL, ModelView): result = fields.Reference( "Result", selection='get_results', readonly=True, states={ - 'required': Eval('state') == 'done', + 'required': Eval('active', True) & (Eval('state') == 'done'), 'invisible': ~Eval('result'), }) state = fields.Selection([ diff --git a/modules/document_incoming/tests/scenario_document_incoming_split.rst b/modules/document_incoming/tests/scenario_document_incoming_split.rst index 2dfb96de1c..e7d84c6f3d 100644 --- a/modules/document_incoming/tests/scenario_document_incoming_split.rst +++ b/modules/document_incoming/tests/scenario_document_incoming_split.rst @@ -37,3 +37,11 @@ Split in 2:: >>> len(document.children) 2 + +Process parent document:: + + >>> document.click('process') + >>> document.state + 'done' + >>> bool(document.result) + False