From 7ac91deb83eac0eab279523b537d11a8ddde8615 Mon Sep 17 00:00:00 2001 From: Deepesh Garg Date: Sun, 31 Mar 2024 19:48:40 +0530 Subject: [PATCH] fix: Default company bank account --- erpnext/accounts/doctype/bank_account/bank_account.py | 4 ++++ erpnext/accounts/doctype/payment_entry/payment_entry.js | 3 +++ erpnext/accounts/doctype/payment_entry/payment_entry.py | 6 +++++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/erpnext/accounts/doctype/bank_account/bank_account.py b/erpnext/accounts/doctype/bank_account/bank_account.py index bfc8b339bdd..8da4566a366 100644 --- a/erpnext/accounts/doctype/bank_account/bank_account.py +++ b/erpnext/accounts/doctype/bank_account/bank_account.py @@ -115,6 +115,10 @@ def get_party_bank_account(party_type, party): return frappe.db.get_value(party_type, party, "default_bank_account") +def get_default_company_bank_account(company): + return frappe.db.get_value("Bank Account", {"company": company, "is_company_account": 1, "is_default": 1}) + + @frappe.whitelist() def get_bank_account_details(bank_account): return frappe.get_cached_value( diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.js b/erpnext/accounts/doctype/payment_entry/payment_entry.js index 781d9f52467..0ac0156e8a7 100644 --- a/erpnext/accounts/doctype/payment_entry/payment_entry.js +++ b/erpnext/accounts/doctype/payment_entry/payment_entry.js @@ -470,6 +470,9 @@ frappe.ui.form.on("Payment Entry", { () => frm.events.set_dynamic_labels(frm), () => { frm.set_party_account_based_on_party = false; + if (r.message.party_bank_account) { + frm.set_value("party_bank_account", r.message.party_bank_account); + } if (r.message.bank_account) { frm.set_value("bank_account", r.message.bank_account); } diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py index e2041bf16e9..79a6c9c0988 100644 --- a/erpnext/accounts/doctype/payment_entry/payment_entry.py +++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py @@ -16,6 +16,7 @@ import erpnext from erpnext.accounts.doctype.accounting_dimension.accounting_dimension import get_dimensions from erpnext.accounts.doctype.bank_account.bank_account import ( get_bank_account_details, + get_default_company_bank_account, get_party_bank_account, ) from erpnext.accounts.doctype.invoice_discounting.invoice_discounting import ( @@ -2109,7 +2110,9 @@ def get_party_details(company, party_type, party, date, cost_center=None): party_name = frappe.db.get_value(party_type, party, _party_name) party_balance = get_balance_on(party_type=party_type, party=party, cost_center=cost_center) if party_type in ["Customer", "Supplier"]: - bank_account = get_party_bank_account(party_type, party) + party_bank_account = get_party_bank_account(party_type, party) + + bank_account = get_default_company_bank_account(company) return { "party_account": party_account, @@ -2117,6 +2120,7 @@ def get_party_details(company, party_type, party, date, cost_center=None): "party_account_currency": account_currency, "party_balance": party_balance, "account_balance": account_balance, + "party_bank_account": party_bank_account, "bank_account": bank_account, }