diff --git a/account_financial_report/wizard/aged_partner_balance_wizard.py b/account_financial_report/wizard/aged_partner_balance_wizard.py index e1eb65c7..a3a48b87 100644 --- a/account_financial_report/wizard/aged_partner_balance_wizard.py +++ b/account_financial_report/wizard/aged_partner_balance_wizard.py @@ -27,7 +27,10 @@ class AgedPartnerBalanceWizard(models.TransientModel): default="posted", ) account_ids = fields.Many2many( - comodel_name="account.account", string="Filter accounts" + comodel_name='account.account', + string='Filter accounts', + domain=[('reconcile', '=', True)], + required=True, ) receivable_accounts_only = fields.Boolean() payable_accounts_only = fields.Boolean() @@ -56,7 +59,11 @@ class AgedPartnerBalanceWizard(models.TransientModel): res["domain"]["partner_ids"] += self._get_partner_ids_domain() return res - @api.onchange("receivable_accounts_only", "payable_accounts_only") + @api.onchange('account_ids') + def onchange_account_ids(self): + return {'domain': {'account_ids': [('reconcile', '=', True)]}} + + @api.onchange('receivable_accounts_only', 'payable_accounts_only') def onchange_type_accounts_only(self): """Handle receivable/payable accounts only change.""" domain = [("company_id", "=", self.company_id.id)] @@ -66,10 +73,10 @@ class AgedPartnerBalanceWizard(models.TransientModel): elif self.receivable_accounts_only: domain += [("internal_type", "=", "receivable")] elif self.payable_accounts_only: - domain += [("internal_type", "=", "payable")] - elif not self.receivable_accounts_only and not self.payable_accounts_only: - domain += [("reconcile", "=", True)] - self.account_ids = self.env["account.account"].search(domain) + domain += [('internal_type', '=', 'payable')] + self.account_ids = self.env['account.account'].search(domain) + else: + self.account_ids = None def _print_report(self, report_type): self.ensure_one() diff --git a/account_financial_report/wizard/open_items_wizard.py b/account_financial_report/wizard/open_items_wizard.py index 1a5446be..7377dc33 100644 --- a/account_financial_report/wizard/open_items_wizard.py +++ b/account_financial_report/wizard/open_items_wizard.py @@ -28,9 +28,10 @@ class OpenItemsReportWizard(models.TransientModel): default="posted", ) account_ids = fields.Many2many( - comodel_name="account.account", - string="Filter accounts", - domain=[("reconcile", "=", True)], + comodel_name='account.account', + string='Filter accounts', + domain=[('reconcile', '=', True)], + required=True, ) hide_account_at_0 = fields.Boolean( string="Hide account ending balance at 0", @@ -80,7 +81,11 @@ class OpenItemsReportWizard(models.TransientModel): res["domain"]["partner_ids"] += self._get_partner_ids_domain() return res - @api.onchange("receivable_accounts_only", "payable_accounts_only") + @api.onchange('account_ids') + def onchange_account_ids(self): + return {'domain': {'account_ids': [('reconcile', '=', True)]}} + + @api.onchange('receivable_accounts_only', 'payable_accounts_only') def onchange_type_accounts_only(self): """Handle receivable/payable accounts only change.""" domain = [("company_id", "=", self.company_id.id)] @@ -90,10 +95,10 @@ class OpenItemsReportWizard(models.TransientModel): elif self.receivable_accounts_only: domain += [("internal_type", "=", "receivable")] elif self.payable_accounts_only: - domain += [("internal_type", "=", "payable")] - elif not self.receivable_accounts_only and not self.payable_accounts_only: - domain += [("reconcile", "=", True)] - self.account_ids = self.env["account.account"].search(domain) + domain += [('internal_type', '=', 'payable')] + self.account_ids = self.env['account.account'].search(domain) + else: + self.account_ids = None def _print_report(self, report_type): self.ensure_one()