fix: Party name field in trial balacne for party report (#19789)
diff --git a/erpnext/accounts/report/trial_balance_for_party/trial_balance_for_party.py b/erpnext/accounts/report/trial_balance_for_party/trial_balance_for_party.py
index bd2c34b..3e47906 100644
--- a/erpnext/accounts/report/trial_balance_for_party/trial_balance_for_party.py
+++ b/erpnext/accounts/report/trial_balance_for_party/trial_balance_for_party.py
@@ -18,14 +18,17 @@
return columns, data
def get_data(filters, show_party_name):
- party_name_field = "{0}_name".format(frappe.scrub(filters.get('party_type')))
+ if filters.get('party_type') in ('Customer', 'Supplier', 'Employee', 'Member'):
+ party_name_field = "{0}_name".format(frappe.scrub(filters.get('party_type')))
if filters.get('party_type') == 'Student':
party_name_field = 'first_name'
elif filters.get('party_type') == 'Shareholder':
party_name_field = 'title'
+ else:
+ party_name_field = 'name'
party_filters = {"name": filters.get("party")} if filters.get("party") else {}
- parties = frappe.get_all(filters.get("party_type"), fields = ["name", party_name_field],
+ parties = frappe.get_all(filters.get("party_type"), fields = ["name", party_name_field],
filters = party_filters, order_by="name")
company_currency = frappe.get_cached_value('Company', filters.company, "default_currency")
opening_balances = get_opening_balances(filters)
@@ -70,7 +73,7 @@
# totals
for col in total_row:
total_row[col] += row.get(col)
-
+
row.update({
"currency": company_currency
})
@@ -78,7 +81,7 @@
has_value = False
if (opening_debit or opening_credit or debit or credit or closing_debit or closing_credit):
has_value =True
-
+
if cint(filters.show_zero_values) or has_value:
data.append(row)
@@ -94,9 +97,9 @@
def get_opening_balances(filters):
gle = frappe.db.sql("""
- select party, sum(debit) as opening_debit, sum(credit) as opening_credit
+ select party, sum(debit) as opening_debit, sum(credit) as opening_credit
from `tabGL Entry`
- where company=%(company)s
+ where company=%(company)s
and ifnull(party_type, '') = %(party_type)s and ifnull(party, '') != ''
and (posting_date < %(from_date)s or ifnull(is_opening, 'No') = 'Yes')
group by party""", {
@@ -114,11 +117,11 @@
def get_balances_within_period(filters):
gle = frappe.db.sql("""
- select party, sum(debit) as debit, sum(credit) as credit
+ select party, sum(debit) as debit, sum(credit) as credit
from `tabGL Entry`
- where company=%(company)s
+ where company=%(company)s
and ifnull(party_type, '') = %(party_type)s and ifnull(party, '') != ''
- and posting_date >= %(from_date)s and posting_date <= %(to_date)s
+ and posting_date >= %(from_date)s and posting_date <= %(to_date)s
and ifnull(is_opening, 'No') = 'No'
group by party""", {
"company": filters.company,