[IMP] account_financial_report: Add grouping by analytical account in Trial balance

TT48969
This commit is contained in:
Víctor Martínez
2024-07-03 10:08:14 +02:00
committed by chaule97
parent e4e301af0e
commit 0e6c43603a
5 changed files with 416 additions and 77 deletions

View File

@@ -68,6 +68,15 @@ class TrialBalanceReportWizard(models.TransientModel):
comodel_name="account.account",
help="Ending account in a range",
)
grouped_by = fields.Selection(
selection=[("analytic_account", "Analytic Account")], default=False
)
@api.onchange("grouped_by")
def onchange_grouped_by(self):
if self.grouped_by == "analytic_account":
self.show_partner_details = False
self.show_hierarchy = False
@api.onchange("account_code_from", "account_code_to")
def on_change_account_range(self):
@@ -208,6 +217,7 @@ class TrialBalanceReportWizard(models.TransientModel):
"""Handle partners change."""
if self.show_partner_details:
self.receivable_accounts_only = self.payable_accounts_only = True
self.grouped_by = False
else:
self.receivable_accounts_only = self.payable_accounts_only = False
@@ -264,6 +274,7 @@ class TrialBalanceReportWizard(models.TransientModel):
"show_partner_details": self.show_partner_details,
"unaffected_earnings_account": self.unaffected_earnings_account.id,
"account_financial_report_lang": self.env.lang,
"grouped_by": self.grouped_by,
}
def _export(self, report_type):

View File

@@ -6,6 +6,14 @@
<field name="model">trial.balance.report.wizard</field>
<field name="arch" type="xml">
<form>
<div
class="alert alert-warning"
role="alert"
invisible="grouped_by!='analytic_account'"
>
<i class="fa fa-exclamation-triangle mr-3" />
Duplicate amounts may be shown because more than one analytical account may be defined in the journal items.
</div>
<group name="main_info">
<field
name="company_id"
@@ -23,11 +31,16 @@
</group>
<group name="other_filters">
<field name="target_move" widget="radio" />
<field name="grouped_by" invisible="1" />
<field
name="grouped_by"
groups="analytic.group_analytic_accounting"
/>
<field name="hide_account_at_0" />
<field name="show_partner_details" />
<field name="show_partner_details" invisible="grouped_by" />
<field
name="show_hierarchy"
invisible="show_partner_details == True"
invisible="show_partner_details == True or grouped_by"
/>
<field
name="limit_hierarchy_level"