From 9bf114754e0a4cfcc27b964ef89e4a3a7a87ef65 Mon Sep 17 00:00:00 2001 From: Henrik Norlin Date: Sun, 31 Mar 2024 07:28:42 +0200 Subject: [PATCH] [IMP] account_financial_report: reversed variable only_one_unaffected_earnings_account --- .../wizard/general_ledger_wizard.py | 21 ++++++++++++------ .../wizard/general_ledger_wizard_view.xml | 13 +++++------ .../wizard/trial_balance_wizard.py | 22 ++++++++++++------- .../wizard/trial_balance_wizard_view.xml | 13 +++++------ 4 files changed, 38 insertions(+), 31 deletions(-) diff --git a/account_financial_report/wizard/general_ledger_wizard.py b/account_financial_report/wizard/general_ledger_wizard.py index 761bc1e8..b5475d60 100644 --- a/account_financial_report/wizard/general_ledger_wizard.py +++ b/account_financial_report/wizard/general_ledger_wizard.py @@ -56,8 +56,10 @@ class GeneralLedgerReportWizard(models.TransientModel): cost_center_ids = fields.Many2many( comodel_name="account.analytic.account", string="Filter cost centers" ) - - not_only_one_unaffected_earnings_account = fields.Boolean(readonly=True) + only_one_unaffected_earnings_account = fields.Boolean( + readonly=True, + default=lambda self: self._only_one_unaffected_earnings_account(), + ) foreign_currency = fields.Boolean( string="Show foreign currency", help="Display foreign currency for move lines, unless " @@ -141,16 +143,21 @@ class GeneralLedgerReportWizard(models.TransientModel): else: wiz.fy_start_date = False - @api.onchange("company_id") - def onchange_company_id(self): - """Handle company change.""" + def _only_one_unaffected_earnings_account(self): count = self.env["account.account"].search_count( [ ("account_type", "=", "equity_unaffected"), - ("company_id", "=", self.company_id.id), + ("company_id", "=", self.company_id.id or self.env.company.id), ] ) - self.not_only_one_unaffected_earnings_account = count != 1 + return count == 1 + + @api.onchange("company_id") + def onchange_company_id(self): + """Handle company change.""" + self.only_one_unaffected_earnings_account = ( + self._only_one_unaffected_earnings_account() + ) if ( self.company_id and self.date_range_id.company_id diff --git a/account_financial_report/wizard/general_ledger_wizard_view.xml b/account_financial_report/wizard/general_ledger_wizard_view.xml index e8bf581a..8e3616d6 100644 --- a/account_financial_report/wizard/general_ledger_wizard_view.xml +++ b/account_financial_report/wizard/general_ledger_wizard_view.xml @@ -13,7 +13,7 @@ groups="base.group_multi_company" /> -
+
@@ -93,11 +93,8 @@
-
- +
+

General Ledger can be computed only if selected company have @@ -106,7 +103,7 @@

-
+
-
+
diff --git a/account_financial_report/wizard/trial_balance_wizard.py b/account_financial_report/wizard/trial_balance_wizard.py index ff4351dd..3dccca6e 100644 --- a/account_financial_report/wizard/trial_balance_wizard.py +++ b/account_financial_report/wizard/trial_balance_wizard.py @@ -50,9 +50,10 @@ class TrialBalanceReportWizard(models.TransientModel): show_partner_details = fields.Boolean() partner_ids = fields.Many2many(comodel_name="res.partner", string="Filter partners") journal_ids = fields.Many2many(comodel_name="account.journal") - - not_only_one_unaffected_earnings_account = fields.Boolean(readonly=True) - + only_one_unaffected_earnings_account = fields.Boolean( + readonly=True, + default=lambda self: self._only_one_unaffected_earnings_account(), + ) foreign_currency = fields.Boolean( string="Show foreign currency", help="Display foreign currency for move lines, unless " @@ -107,16 +108,21 @@ class TrialBalanceReportWizard(models.TransientModel): else: wiz.fy_start_date = False - @api.onchange("company_id") - def onchange_company_id(self): - """Handle company change.""" + def _only_one_unaffected_earnings_account(self): count = self.env["account.account"].search_count( [ ("account_type", "=", "equity_unaffected"), - ("company_id", "=", self.company_id.id), + ("company_id", "=", self.company_id.id or self.env.company.id), ] ) - self.not_only_one_unaffected_earnings_account = count != 1 + return count == 1 + + @api.onchange("company_id") + def onchange_company_id(self): + """Handle company change.""" + self.only_one_unaffected_earnings_account = ( + self._only_one_unaffected_earnings_account() + ) if ( self.company_id and self.date_range_id.company_id diff --git a/account_financial_report/wizard/trial_balance_wizard_view.xml b/account_financial_report/wizard/trial_balance_wizard_view.xml index c9a1c125..87a1cfeb 100644 --- a/account_financial_report/wizard/trial_balance_wizard_view.xml +++ b/account_financial_report/wizard/trial_balance_wizard_view.xml @@ -13,7 +13,7 @@ groups="base.group_multi_company" /> -
+
@@ -95,11 +95,8 @@ />
-
- +
+

Trial Balance can be computed only if selected company have only @@ -108,7 +105,7 @@