From 9df311fcfe769f8a8493675a06931faf1a2c6d4f Mon Sep 17 00:00:00 2001 From: eLBati Date: Mon, 13 Jan 2020 08:22:47 +0100 Subject: [PATCH] Skip sign check in module init and migration, fixing the case of module installation when accounts are already created (otherwise installation is blocked) --- l10n_it_account/models/account_group.py | 5 ++++- l10n_it_account/models/account_type.py | 3 ++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/l10n_it_account/models/account_group.py b/l10n_it_account/models/account_group.py index 87fbd44f47b6..af723ac7a943 100644 --- a/l10n_it_account/models/account_group.py +++ b/l10n_it_account/models/account_group.py @@ -41,7 +41,10 @@ def check_balance_sign_coherence(self): """ # Force recursion check self.check_parent_recursion() - done_group_ids, progenitor_ids = [], [] + if self.env.context.get('skip_check_balance_sign_coherence'): + return + done_group_ids =[] + progenitor_ids = [] for group in self: if group.id in done_group_ids: continue diff --git a/l10n_it_account/models/account_type.py b/l10n_it_account/models/account_type.py index 52e0a89710b0..94ea3a1446bf 100644 --- a/l10n_it_account/models/account_type.py +++ b/l10n_it_account/models/account_type.py @@ -29,7 +29,8 @@ def set_account_types_negative_sign(self): for xml_id in ACCOUNT_TYPES_NEGATIVE_SIGN: acc_type = self.env.ref(xml_id, raise_if_not_found=False) if acc_type: - acc_type.account_balance_sign = -1 + acc_type.with_context(skip_check_balance_sign_coherence=True) \ + .account_balance_sign = -1 @api.constrains('account_balance_sign') def check_balance_sign_value(self):