From 3cde81be651313d4ec88560e500f5ef10a521402 Mon Sep 17 00:00:00 2001 From: ruthra kumar Date: Sun, 17 Mar 2024 06:34:17 +0530 Subject: [PATCH 1/2] fix: don't validate for currency, if account is unavailable --- .../bank_transaction/bank_transaction.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/erpnext/accounts/doctype/bank_transaction/bank_transaction.py b/erpnext/accounts/doctype/bank_transaction/bank_transaction.py index 5e17881b6c1..4246ba5c032 100644 --- a/erpnext/accounts/doctype/bank_transaction/bank_transaction.py +++ b/erpnext/accounts/doctype/bank_transaction/bank_transaction.py @@ -56,17 +56,17 @@ class BankTransaction(Document): Bank Transaction should be on the same currency as the Bank Account. """ if self.currency and self.bank_account: - account = frappe.get_cached_value("Bank Account", self.bank_account, "account") - account_currency = frappe.get_cached_value("Account", account, "account_currency") + if account := frappe.get_cached_value("Bank Account", self.bank_account, "account"): + account_currency = frappe.get_cached_value("Account", account, "account_currency") - if self.currency != account_currency: - frappe.throw( - _( - "Transaction currency: {0} cannot be different from Bank Account({1}) currency: {2}" - ).format( - frappe.bold(self.currency), frappe.bold(self.bank_account), frappe.bold(account_currency) + if self.currency != account_currency: + frappe.throw( + _( + "Transaction currency: {0} cannot be different from Bank Account({1}) currency: {2}" + ).format( + frappe.bold(self.currency), frappe.bold(self.bank_account), frappe.bold(account_currency) + ) ) - ) def set_status(self): if self.docstatus == 2: From aec630c74f9f218147006a382456c57a0215318a Mon Sep 17 00:00:00 2001 From: ruthra kumar Date: Sun, 17 Mar 2024 06:46:06 +0530 Subject: [PATCH 2/2] fix: attribute error on Bank Statement Import retry --- .../doctype/bank_statement_import/bank_statement_import.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.py b/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.py index 30e564c8031..6728feae764 100644 --- a/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.py +++ b/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.py @@ -149,6 +149,9 @@ def start_import( import_file = ImportFile("Bank Transaction", file=file, import_type="Insert New Records") data = parse_data_from_template(import_file.raw_data) + # Importer expects 'Data Import' class, which has 'payload_count' attribute + if not data_import.get("payload_count"): + data_import.payload_count = len(data) - 1 if import_file_path: add_bank_account(data, bank_account)