changeset 515175d90ca3 in modules/account:default
details: https://hg.tryton.org/modules/account?cmd=changeset&node=515175d90ca3
description:
        Enforce company of parent/childs of chart of accounts

        issue11613
        review417611003
diffstat:

 account.py |  10 ++++++++--
 tax.py     |  24 +++++++++++++++++++-----
 2 files changed, 27 insertions(+), 7 deletions(-)

diffs (65 lines):

diff -r 1bf313a302b5 -r 515175d90ca3 account.py
--- a/account.py        Sat Aug 06 10:44:58 2022 +0200
+++ b/account.py        Sat Aug 06 10:46:17 2022 +0200
@@ -884,11 +884,17 @@
         help="The type used if not empty and debit < credit.")
     parent = fields.Many2One(
         'account.account', 'Parent', select=True,
-        left="left", right="right", ondelete="RESTRICT", states=_states)
+        left="left", right="right", ondelete="RESTRICT", states=_states,
+        domain=[
+            ('company', '=', Eval('company', -1)),
+            ])
     left = fields.Integer('Left', required=True, select=True)
     right = fields.Integer('Right', required=True, select=True)
     childs = fields.One2Many(
-        'account.account', 'parent', 'Children')
+        'account.account', 'parent', "Children",
+        domain=[
+            ('company', '=', Eval('company', -1)),
+            ])
     balance = fields.Function(Monetary(
             "Balance", currency='currency', digits='currency'),
         'get_balance')
diff -r 1bf313a302b5 -r 515175d90ca3 tax.py
--- a/tax.py    Sat Aug 06 10:44:58 2022 +0200
+++ b/tax.py    Sat Aug 06 10:46:17 2022 +0200
@@ -134,9 +134,16 @@
     company = fields.Many2One('company.company', 'Company', required=True,
         select=True)
     parent = fields.Many2One(
-        'account.tax.code', 'Parent', select=True, states=_states)
+        'account.tax.code', "Parent", select=True, states=_states,
+        domain=[
+            ('company', '=', Eval('company', -1)),
+            ])
     lines = fields.One2Many('account.tax.code.line', 'code', "Lines")
-    childs = fields.One2Many('account.tax.code', 'parent', 'Children')
+    childs = fields.One2Many(
+        'account.tax.code', 'parent', "Children",
+        domain=[
+            ('company', '=', Eval('company', -1)),
+            ])
     currency = fields.Function(fields.Many2One('currency.currency',
         'Currency'), 'on_change_with_currency')
     amount = fields.Function(Monetary(
@@ -781,9 +788,16 @@
             },
         help=('If checked then the unit price for further tax computation will'
             ' be modified by this tax.'))
-    parent = fields.Many2One('account.tax', 'Parent', ondelete='CASCADE',
-        states=_states)
-    childs = fields.One2Many('account.tax', 'parent', 'Children')
+    parent = fields.Many2One(
+        'account.tax', "Parent", ondelete='CASCADE', states=_states,
+        domain=[
+            ('company', '=', Eval('company', -1)),
+            ])
+    childs = fields.One2Many(
+        'account.tax', 'parent', "Children",
+        domain=[
+            ('company', '=', Eval('company', -1)),
+            ])
     company = fields.Many2One(
         'company.company', "Company", required=True, select=True)
     invoice_account = fields.Many2One('account.account', 'Invoice Account',

Reply via email to