details:   https://code.tryton.org/tryton/commit/94f0ca2155a6
branch:    7.8
user:      Cédric Krier <[email protected]>
date:      Tue Jun 02 12:00:50 2026 +0200
description:
        Prevent modifying the company of project work with parent, children or 
timesheet

        Closes #14871
        (grafted from 8e66491c57a6e2eee0d4c3e88d52a84b72c0a933)
diffstat:

 modules/project/work.py |  8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diffs (18 lines):

diff -r 6747a6de2535 -r 94f0ca2155a6 modules/project/work.py
--- a/modules/project/work.py   Thu May 28 16:30:28 2026 +0200
+++ b/modules/project/work.py   Tue Jun 02 12:00:50 2026 +0200
@@ -114,7 +114,13 @@
             ('task', 'Task')
             ],
         "Type", required=True)
-    company = fields.Many2One('company.company', "Company", required=True)
+    company = fields.Many2One('company.company', "Company", required=True,
+        states={
+            'readonly': (
+                Eval('parent', None)
+                | Eval('children', [])
+                | Eval('timesheet_duration', 0)),
+            })
     party = fields.Many2One('party.party', 'Party',
         states={
             'invisible': Eval('type') != 'project',

Reply via email to