diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py index 1237583a9006dacf4800d7956832945d4ecc9bd8..82db7b7da3ac936cfe1f11d1b6d4d81be3d976bb 100644 --- a/erpnext/accounts/utils.py +++ b/erpnext/accounts/utils.py @@ -514,6 +514,8 @@ def reconcile_against_document(args, skip_ref_details_update_for_pe=False): # n entry.against_voucher_type, entry.against_voucher, entry.account, entry.party_type, entry.party ) + doc.run_method("update_advance_paid") # @dokos + frappe.flags.ignore_party_validation = False @@ -601,9 +603,13 @@ def update_reference_in_journal_entry(d, journal_entry, do_not_save=False): """ jv_detail = journal_entry.get("accounts", {"name": d["voucher_detail_no"]})[0] + # @dokos # Update Advance Paid in SO/PO since they might be getting unlinked - if jv_detail.get("reference_type") in ("Sales Order", "Purchase Order"): - frappe.get_doc(jv_detail.reference_type, jv_detail.reference_name).set_total_advance_paid() + # advance_payment_doctypes = frappe.get_hooks("advance_payment_receivable_doctypes") + frappe.get_hooks( + # "advance_payment_payable_doctypes" + # ) + # if jv_detail.get("reference_type") in advance_payment_doctypes: + # frappe.get_doc(jv_detail.reference_type, jv_detail.reference_name).set_total_advance_paid() if flt(d["unadjusted_amount"]) - flt(d["allocated_amount"]) != 0: # adjust the unreconciled balance @@ -674,11 +680,15 @@ def update_reference_in_payment_entry( if d.voucher_detail_no: existing_row = payment_entry.get("references", {"name": d["voucher_detail_no"]})[0] + # @dokos # Update Advance Paid in SO/PO since they are getting unlinked - if existing_row.get("reference_doctype") in ("Sales Order", "Purchase Order"): - frappe.get_doc( - existing_row.reference_doctype, existing_row.reference_name - ).set_total_advance_paid() + # advance_payment_doctypes = frappe.get_hooks("advance_payment_receivable_doctypes") + frappe.get_hooks( + # "advance_payment_payable_doctypes" + # ) + # if existing_row.get("reference_doctype") in advance_payment_doctypes: + # frappe.get_doc( + # existing_row.reference_doctype, existing_row.reference_name + # ).set_total_advance_paid() if d.allocated_amount <= existing_row.allocated_amount: existing_row.allocated_amount -= d.allocated_amount