From 4ad2eaf06a44e4405ff09775d9618ce01ab9d737 Mon Sep 17 00:00:00 2001 From: AjmalCybro Date: Tue, 20 Aug 2024 14:33:07 +0530 Subject: [PATCH] Aug 20 [UPDT] Updated 'base_accounting_kit' --- base_accounting_kit/doc/RELEASE_NOTES.md | 5 ++ .../report/report_aged_partner.py | 50 ++++++++++++------- 2 files changed, 37 insertions(+), 18 deletions(-) diff --git a/base_accounting_kit/doc/RELEASE_NOTES.md b/base_accounting_kit/doc/RELEASE_NOTES.md index e8ce7d957..07b041e2e 100644 --- a/base_accounting_kit/doc/RELEASE_NOTES.md +++ b/base_accounting_kit/doc/RELEASE_NOTES.md @@ -14,3 +14,8 @@ #### Version 17.0.1.0.2 ##### UPDT - Bug Fix-Resolved the style issues in report templates. + +#### 20.08.2024 +#### Version 17.0.1.0.3 +##### UPDT +- Bug Fix-Resolved the Aged Partner Balance Report. diff --git a/base_accounting_kit/report/report_aged_partner.py b/base_accounting_kit/report/report_aged_partner.py index 5926a387a..d53175076 100644 --- a/base_accounting_kit/report/report_aged_partner.py +++ b/base_accounting_kit/report/report_aged_partner.py @@ -131,20 +131,26 @@ class ReportAgedPartnerBalance(models.AbstractModel): partner_id = line.partner_id.id or False if partner_id not in undue_amounts: undue_amounts[partner_id] = 0.0 - line_amount = ResCurrency._get_conversion_rate(line.company_id.currency_id, - user_currency, line.balance) + line_amount = ResCurrency._convert(line.balance, user_currency, + line.company_id, date_from) if user_currency.is_zero(line_amount): continue for partial_line in line.matched_debit_ids: if partial_line.max_date <= date_from: - line_amount += ResCurrency._get_conversion_rate( - partial_line.company_id.currency_id, user_currency, - partial_line.amount) + line_amount += ResCurrency._convert( + from_amount=partial_line.amount, + to_currency=user_currency, + company=partial_line.company_id, + date=date_from + ) for partial_line in line.matched_credit_ids: if partial_line.max_date <= date_from: - line_amount -= ResCurrency._get_conversion_rate( - partial_line.company_id.currency_id, user_currency, - partial_line.amount) + line_amount -= ResCurrency._convert( + from_amount=partial_line.amount, + to_currency=user_currency, + company=partial_line.company_id, + date=date_from + ) if not self.env.company.currency_id.is_zero(line_amount): undue_amounts[partner_id] += line_amount lines[partner_id].append({ @@ -159,7 +165,6 @@ class ReportAgedPartnerBalance(models.AbstractModel): args_list = ( tuple(move_state), tuple(account_type), tuple(partner_ids),) dates_query = '(COALESCE(l.date_maturity,l.date)' - if periods[str(i)]['start'] and periods[str(i)]['stop']: dates_query += ' BETWEEN %s AND %s)' args_list += ( @@ -189,21 +194,30 @@ class ReportAgedPartnerBalance(models.AbstractModel): partner_id = line.partner_id.id or False if partner_id not in partners_amount: partners_amount[partner_id] = 0.0 - line_amount = ResCurrency._get_conversion_rate( - line.company_id.currency_id, - user_currency, line.balance) + line_amount = ResCurrency._convert( + from_amount=line.balance, + to_currency=user_currency, + company=line.company_id, + date=date_from + ) if user_currency.is_zero(line_amount): continue for partial_line in line.matched_debit_ids: if partial_line.max_date <= date_from: - line_amount += ResCurrency._get_conversion_rate( - partial_line.company_id.currency_id, user_currency, - partial_line.amount) + line_amount += ResCurrency._convert( + from_amount=partial_line.amount, + to_currency=user_currency, + company=partial_line.company_id, + date=date_from + ) for partial_line in line.matched_credit_ids: if partial_line.max_date <= date_from: - line_amount -= ResCurrency._get_conversion_rate( - partial_line.company_id.currency_id, user_currency, - partial_line.amount) + line_amount -= ResCurrency._convert( + from_amount=partial_line.amount, + to_currency=user_currency, + company=partial_line.company_id, + date=date_from + ) if not self.env.company.currency_id.is_zero( line_amount): partners_amount[partner_id] += line_amount