diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.js b/erpnext/accounts/doctype/payment_entry/payment_entry.js index 26112409b7cb..81ffee3f6e86 100644 --- a/erpnext/accounts/doctype/payment_entry/payment_entry.js +++ b/erpnext/accounts/doctype/payment_entry/payment_entry.js @@ -747,6 +747,10 @@ frappe.ui.form.on('Payment Entry', { args["get_orders_to_be_billed"] = true; } + if (frm.doc.book_advance_payments_in_separate_party_account) { + args["book_advance_payments_in_separate_party_account"] = true; + } + frappe.flags.allocate_payment_amount = filters['allocate_payment_amount']; return frappe.call({ diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py index 11c7c179b67f..052eff393e78 100644 --- a/erpnext/accounts/doctype/payment_entry/payment_entry.py +++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py @@ -256,6 +256,7 @@ def validate_allocated_amount_with_latest_data(self): "get_outstanding_invoices": True, "get_orders_to_be_billed": True, "vouchers": vouchers, + "book_advance_payments_in_separate_party_account": self.book_advance_payments_in_separate_party_account, }, validate=True, ) @@ -1628,11 +1629,16 @@ def get_outstanding_reference_documents(args, validate=False): outstanding_invoices = [] negative_outstanding_invoices = [] + if args.get("book_advance_payments_in_separate_party_account"): + party_account = get_party_account(args.get("party_type"), args.get("party"), args.get("company")) + else: + party_account = args.get("party_account") + if args.get("get_outstanding_invoices"): outstanding_invoices = get_outstanding_invoices( args.get("party_type"), args.get("party"), - get_party_account(args.get("party_type"), args.get("party"), args.get("company")), + party_account, common_filter=common_filter, posting_date=posting_and_due_date, min_outstanding=args.get("outstanding_amt_greater_than"),