diff --git a/partner_statement/report/outstanding_statement.py b/partner_statement/report/outstanding_statement.py index 2cbd7846..d011428e 100644 --- a/partner_statement/report/outstanding_statement.py +++ b/partner_statement/report/outstanding_statement.py @@ -2,6 +2,7 @@ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). from odoo import api, models +from odoo.tools.float_utils import float_is_zero class OutstandingStatement(models.AbstractModel): @@ -139,6 +140,11 @@ class OutstandingStatement(models.AbstractModel): res[row.pop("partner_id")].append(row) return res + def _add_currency_line(self, line, currency): + if float_is_zero(line["open_amount"], precision_rounding=currency.rounding): + return [] + return [line] + @api.model def _get_report_values(self, docids, data=None): if not data: diff --git a/partner_statement/report/report_statement_common.py b/partner_statement/report/report_statement_common.py index e48f83b5..f4db9028 100644 --- a/partner_statement/report/report_statement_common.py +++ b/partner_statement/report/report_statement_common.py @@ -287,6 +287,9 @@ class ReportStatementCommon(models.AbstractModel): currencies, ) + def _add_currency_line(self, line, currency): + return [line] + @api.model def _get_report_values(self, docids, data=None): # flake8: noqa: C901 @@ -396,7 +399,9 @@ class ReportStatementCommon(models.AbstractModel): line["date_maturity"] = format_date( line["date_maturity"], date_formats.get(partner_id, default_fmt) ) - line_currency["lines"].append(line) + line_currency["lines"].extend( + self._add_currency_line(line, currencies[line["currency_id"]]) + ) if data["show_aging_buckets"]: for line in buckets[partner_id]: