From 5bff95501fad0eb63e969b608ce36a7e25e5fdf0 Mon Sep 17 00:00:00 2001 From: Ali <010109ali@gmail.com> Date: Mon, 18 May 2026 13:40:53 +0000 Subject: [PATCH] refactor(bank-statement-importer): drop redundant Default Company field MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit System is single-company; Default Company on Bank Statement Importer duplicated what ERPNext already exposes via Global Defaults. Removed the field and replaced bi.default_company with erpnext.get_default_company() at the two usage sites (Bank Account creation, Bank Transaction bulk import). Existing column on tabBank Statement Importer is left in place — Frappe just ignores it. --- jey_erp/bank_integration/creation.py | 8 +++++--- jey_erp/bank_integration/import_api.py | 4 +++- .../bank_statement_importer/bank_statement_importer.json | 7 ------- 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/jey_erp/bank_integration/creation.py b/jey_erp/bank_integration/creation.py index 7e0bc9c..f22c68c 100644 --- a/jey_erp/bank_integration/creation.py +++ b/jey_erp/bank_integration/creation.py @@ -207,6 +207,8 @@ def create_unmapped_suppliers(bank_integration): @frappe.whitelist() def create_unmapped_accounts(bank_integration): """Create Bank Account records for unmapped account_mappings rows.""" + import erpnext + bi = frappe.get_doc("Bank Statement Importer", bank_integration) unmapped = [r for r in bi.account_mappings if not r.bank_account and r.iban] @@ -214,14 +216,14 @@ def create_unmapped_accounts(bank_integration): return {"success": True, "created_count": 0, "message": "No unmapped accounts to create"} default_bank = bi.default_bank - default_company = bi.default_company + default_company = erpnext.get_default_company() # Only need these for accounts that don't already exist as Bank Accounts. if any(not frappe.db.exists("Bank Account", {"bank_account_no": r.iban}) for r in unmapped): if not default_company: - frappe.throw(_("Set a Default Company on the Bank Integration before creating Bank Accounts.")) + frappe.throw(_("Set a Default Company in Global Defaults before creating Bank Accounts.")) if not default_bank: - frappe.throw(_("Set a Default Bank on the Bank Integration before creating Bank Accounts.")) + frappe.throw(_("Set a Default Bank on the Bank Statement Importer before creating Bank Accounts.")) created = 0 for row in unmapped: diff --git a/jey_erp/bank_integration/import_api.py b/jey_erp/bank_integration/import_api.py index 2413bfc..8cc0ae7 100644 --- a/jey_erp/bank_integration/import_api.py +++ b/jey_erp/bank_integration/import_api.py @@ -101,10 +101,12 @@ def import_bulk_bt(txn_list, bank_integration, bank_account): def _process_bulk_bt_import(txn_list, bank_integration, bank_account, user): """Background job: create one Bank Transaction per row.""" + import erpnext + frappe.set_user(user) bi = frappe.get_doc("Bank Statement Importer", bank_integration) - company = bi.default_company + company = erpnext.get_default_company() ba_doc = frappe.get_doc("Bank Account", bank_account) ba_account = ba_doc.account diff --git a/jey_erp/jey_erp/doctype/bank_statement_importer/bank_statement_importer.json b/jey_erp/jey_erp/doctype/bank_statement_importer/bank_statement_importer.json index 2c64907..c868d10 100644 --- a/jey_erp/jey_erp/doctype/bank_statement_importer/bank_statement_importer.json +++ b/jey_erp/jey_erp/doctype/bank_statement_importer/bank_statement_importer.json @@ -7,7 +7,6 @@ "field_order": [ "settings_tab", "bank_name", - "default_company", "default_bank", "general_section", "similarity_threshold_customers", @@ -75,12 +74,6 @@ "reqd": 1, "unique": 1 }, - { - "fieldname": "default_company", - "fieldtype": "Link", - "label": "Default Company", - "options": "Company" - }, { "fieldname": "default_bank", "fieldtype": "Link",