From 1731863f597bed80b6cab126cdbae62b6a3d106e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt?= Date: Wed, 26 Feb 2025 11:18:14 +0100 Subject: [PATCH 1/2] [FIX] account_financial_report: replace old field company_id in account.account by company_ids --- account_financial_report/wizard/general_ledger_wizard.py | 6 +++--- account_financial_report/wizard/open_items_wizard.py | 6 +++--- account_financial_report/wizard/trial_balance_wizard.py | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/account_financial_report/wizard/general_ledger_wizard.py b/account_financial_report/wizard/general_ledger_wizard.py index a9c1149b..46ce5c21 100644 --- a/account_financial_report/wizard/general_ledger_wizard.py +++ b/account_financial_report/wizard/general_ledger_wizard.py @@ -108,7 +108,7 @@ class GeneralLedgerReportWizard(models.TransientModel): ) if self.company_id: self.account_ids = self.account_ids.filtered( - lambda a: a.company_id == self.company_id + lambda a: self.company_id in a.company_ids ) def _init_date_from(self): @@ -177,7 +177,7 @@ class GeneralLedgerReportWizard(models.TransientModel): self.onchange_type_accounts_only() else: self.account_ids = self.account_ids.filtered( - lambda a: a.company_id == self.company_id + lambda a: self.company_id in a.company_ids ) if self.company_id and self.cost_center_ids: self.cost_center_ids = self.cost_center_ids.filtered( @@ -195,7 +195,7 @@ class GeneralLedgerReportWizard(models.TransientModel): if not self.company_id: return res else: - res["domain"]["account_ids"] += [("company_id", "=", self.company_id.id)] + res["domain"]["account_ids"] += [("company_ids", "in", self.company_id.ids)] res["domain"]["account_journal_ids"] += [ ("company_id", "=", self.company_id.id) ] diff --git a/account_financial_report/wizard/open_items_wizard.py b/account_financial_report/wizard/open_items_wizard.py index 161315a8..dbe7eb89 100644 --- a/account_financial_report/wizard/open_items_wizard.py +++ b/account_financial_report/wizard/open_items_wizard.py @@ -79,7 +79,7 @@ class OpenItemsReportWizard(models.TransientModel): ) if self.company_id: self.account_ids = self.account_ids.filtered( - lambda a: a.company_id == self.company_id + lambda a: self.company_id in a.company_ids ) return { "domain": { @@ -103,13 +103,13 @@ class OpenItemsReportWizard(models.TransientModel): self.onchange_type_accounts_only() else: self.account_ids = self.account_ids.filtered( - lambda a: a.company_id == self.company_id + lambda a: self.company_id in a.company_ids ) res = {"domain": {"account_ids": [], "partner_ids": []}} if not self.company_id: return res else: - res["domain"]["account_ids"] += [("company_id", "=", self.company_id.id)] + res["domain"]["account_ids"] += [("company_ids", "in", self.company_id.ids)] res["domain"]["partner_ids"] += self._get_partner_ids_domain() return res diff --git a/account_financial_report/wizard/trial_balance_wizard.py b/account_financial_report/wizard/trial_balance_wizard.py index edb39bb1..7e9f6c0b 100644 --- a/account_financial_report/wizard/trial_balance_wizard.py +++ b/account_financial_report/wizard/trial_balance_wizard.py @@ -166,7 +166,7 @@ class TrialBalanceReportWizard(models.TransientModel): if not self.company_id: return res else: - res["domain"]["account_ids"] += [("company_id", "=", self.company_id.id)] + res["domain"]["account_ids"] += [("company_ids", "in", self.company_id.ids)] res["domain"]["partner_ids"] += self._get_partner_ids_domain() res["domain"]["date_range_id"] += [ "|", From 138b1bff7f2d61b64a31691b699a0b48b6e5ca2a Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Fri, 4 Jul 2025 18:26:05 +0200 Subject: [PATCH 2/2] [FIX] Account filter on general ledger wizard This commit both improves perfs by doing a single search() instead of search() + filtered and also make account selection by interval really work. --- account_financial_report/wizard/general_ledger_wizard.py | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/account_financial_report/wizard/general_ledger_wizard.py b/account_financial_report/wizard/general_ledger_wizard.py index 46ce5c21..edce54c7 100644 --- a/account_financial_report/wizard/general_ledger_wizard.py +++ b/account_financial_report/wizard/general_ledger_wizard.py @@ -103,13 +103,10 @@ class GeneralLedgerReportWizard(models.TransientModel): ): start_range = int(self.account_code_from.code) end_range = int(self.account_code_to.code) - self.account_ids = self.env["account.account"].search( - [("code", ">=", start_range), ("code", "<=", end_range)] - ) + domain = [("code", ">=", start_range), ("code", "<=", end_range)] if self.company_id: - self.account_ids = self.account_ids.filtered( - lambda a: self.company_id in a.company_ids - ) + domain.append(("company_ids", "in", self.company_id.ids)) + self.account_ids = self.env["account.account"].search(domain) def _init_date_from(self): """set start date to begin of current year if fiscal year running"""