From 0aa0fdfab9b7274b8e8547d4cbc1b6d705811b76 Mon Sep 17 00:00:00 2001 From: hugues de keyzer Date: Wed, 14 Aug 2024 18:56:03 +0200 Subject: [PATCH] [FIX] avoid error in aged partner balance report avoid error in aged partner balance report when processing journal items without a due date (account.move.line.date_maturity field is not set). --- .../report/aged_partner_balance.py | 33 +++++++++++-------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/account_financial_report/report/aged_partner_balance.py b/account_financial_report/report/aged_partner_balance.py index 8bc0f6ea92f..47f8db17c88 100644 --- a/account_financial_report/report/aged_partner_balance.py +++ b/account_financial_report/report/aged_partner_balance.py @@ -71,20 +71,25 @@ def _calculate_amounts( else: ag_pb_data[acc_id]["older"] += residual ag_pb_data[acc_id][prt_id]["older"] += residual - days_difference = abs((today - due_date).days) - for index, line in enumerate(interval_lines): - lower_limit = 0 if not index else interval_lines[index - 1].inferior_limit - next_line = interval_lines[index] if index < len(interval_lines) else None - interval_range = self._get_values_for_range_intervals( - lower_limit, next_line.inferior_limit - ) - if ( - days_difference in interval_range - or days_difference == line.inferior_limit - ): - ag_pb_data[acc_id][line] += residual - ag_pb_data[acc_id][prt_id][line] += residual - break + if due_date: + days_difference = abs((today - due_date).days) + for index, line in enumerate(interval_lines): + lower_limit = ( + 0 if not index else interval_lines[index - 1].inferior_limit + ) + next_line = ( + interval_lines[index] if index < len(interval_lines) else None + ) + interval_range = self._get_values_for_range_intervals( + lower_limit, next_line.inferior_limit + ) + if ( + days_difference in interval_range + or days_difference == line.inferior_limit + ): + ag_pb_data[acc_id][line] += residual + ag_pb_data[acc_id][prt_id][line] += residual + break return ag_pb_data def _get_values_for_range_intervals(self, num1, num2):