From 7650b0073a271c8f4799992a205f4da1c66e6e2e Mon Sep 17 00:00:00 2001 From: Gursheen Anand Date: Tue, 11 Jul 2023 15:18:28 +0530 Subject: [PATCH] fix: validate party filter for fetching payments --- .../report/purchase_register/purchase_register.py | 3 ++- erpnext/accounts/report/sales_register/sales_register.py | 3 ++- erpnext/accounts/report/utils.py | 8 ++++---- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/erpnext/accounts/report/purchase_register/purchase_register.py b/erpnext/accounts/report/purchase_register/purchase_register.py index 8a845cf70a..4b4c5cb559 100644 --- a/erpnext/accounts/report/purchase_register/purchase_register.py +++ b/erpnext/accounts/report/purchase_register/purchase_register.py @@ -29,6 +29,8 @@ def _execute(filters=None, additional_table_columns=None, additional_query_colum include_payments = filters.get("include_payments") invoice_list = get_invoices(filters, additional_query_columns) if filters.get("include_payments"): + if not filters.get("supplier"): + frappe.throw(_("Please select a supplier for fetching payments.")) invoice_list += get_payments(filters, additional_query_columns) columns, expense_accounts, tax_accounts, unrealized_profit_loss_accounts = get_columns( invoice_list, additional_table_columns, include_payments @@ -291,7 +293,6 @@ def get_payments(filters, additional_query_columns): party="supplier", party_name="supplier_name", additional_query_columns="" if not additional_query_columns else additional_query_columns, - party_type="Supplier", conditions=conditions, ) payment_entries = get_payment_entries(filters, args) diff --git a/erpnext/accounts/report/sales_register/sales_register.py b/erpnext/accounts/report/sales_register/sales_register.py index 5965a1a2b1..76611a0aaa 100644 --- a/erpnext/accounts/report/sales_register/sales_register.py +++ b/erpnext/accounts/report/sales_register/sales_register.py @@ -30,6 +30,8 @@ def _execute(filters, additional_table_columns=None, additional_query_columns=No include_payments = filters.get("include_payments") invoice_list = get_invoices(filters, additional_query_columns) if filters.get("include_payments"): + if not filters.get("customer"): + frappe.throw(_("Please select a customer for fetching payments.")) invoice_list += get_payments(filters, additional_query_columns) columns, income_accounts, tax_accounts, unrealized_profit_loss_accounts = get_columns( invoice_list, additional_table_columns, include_payments @@ -451,7 +453,6 @@ def get_payments(filters, additional_query_columns): party="customer", party_name="customer_name", additional_query_columns="" if not additional_query_columns else additional_query_columns, - party_type="Customer", conditions=conditions, ) payment_entries = get_payment_entries(filters, args) diff --git a/erpnext/accounts/report/utils.py b/erpnext/accounts/report/utils.py index c6b9883512..474ae3490a 100644 --- a/erpnext/accounts/report/utils.py +++ b/erpnext/accounts/report/utils.py @@ -199,13 +199,13 @@ def get_journal_entries(filters, args): je.bill_no, je.bill_date, je.remark, je.total_amount as base_net_total, je.total_amount as base_grand_total, je.mode_of_payment, jea.project {3} from `tabJournal Entry` je left join `tabJournal Entry Account` jea on jea.parent=je.name - where je.voucher_type='Journal Entry' and jea.party_type='{4}' {5} + where je.voucher_type='Journal Entry' and jea.party='{4}' {5} order by je.posting_date desc, je.name desc""".format( args.account, args.party, args.party_name, args.additional_query_columns, - args.party_type, + filters.get(args.party), args.conditions, ), filters, @@ -221,13 +221,13 @@ def get_payment_entries(filters, args): paid_amount as base_net_total, paid_amount_after_tax as base_grand_total, mode_of_payment, project, cost_center {3} from `tabPayment Entry` - where party_type='{4}' {5} + where party='{4}' {5} order by posting_date desc, name desc""".format( args.account, args.party, args.party_name, args.additional_query_columns, - args.party_type, + filters.get(args.party), args.conditions, ), filters,