From 7cc5579ecaae99336b8164e7aeedc15b990d2257 Mon Sep 17 00:00:00 2001 From: ljain112 Date: Fri, 14 Jun 2024 13:13:11 +0530 Subject: [PATCH] refactor: ignore unreconcile doc for PO and SO on cancel/delete (cherry picked from commit b618d685c62837657fe808d6c30dc3582a12d0ec) --- erpnext/buying/doctype/purchase_order/purchase_order.js | 1 + erpnext/buying/doctype/purchase_order/purchase_order.py | 8 +++++++- erpnext/selling/doctype/sales_order/sales_order.js | 6 +++++- erpnext/selling/doctype/sales_order/sales_order.py | 8 +++++++- 4 files changed, 20 insertions(+), 3 deletions(-) diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.js b/erpnext/buying/doctype/purchase_order/purchase_order.js index cf383021b06..bd92ebef3d7 100644 --- a/erpnext/buying/doctype/purchase_order/purchase_order.js +++ b/erpnext/buying/doctype/purchase_order/purchase_order.js @@ -12,6 +12,7 @@ erpnext.buying.setup_buying_controller(); frappe.ui.form.on("Purchase Order", { setup: function (frm) { + frm.ignore_doctypes_on_cancel_all = ["Unreconcile Payment", "Unreconcile Payment Entries"]; if (frm.doc.is_old_subcontracting_flow) { frm.set_query("reserve_warehouse", "supplied_items", function () { return { diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.py b/erpnext/buying/doctype/purchase_order/purchase_order.py index a280724193d..0508483a0fc 100644 --- a/erpnext/buying/doctype/purchase_order/purchase_order.py +++ b/erpnext/buying/doctype/purchase_order/purchase_order.py @@ -484,7 +484,13 @@ class PurchaseOrder(BuyingController): self.auto_create_subcontracting_order() def on_cancel(self): - self.ignore_linked_doctypes = ("GL Entry", "Payment Ledger Entry") + self.ignore_linked_doctypes = ( + "GL Entry", + "Payment Ledger Entry", + "Unreconcile Payment", + "Unreconcile Payment Entries", + ) + super().on_cancel() if self.is_against_so(): diff --git a/erpnext/selling/doctype/sales_order/sales_order.js b/erpnext/selling/doctype/sales_order/sales_order.js index d903f7eedf5..5885d092cce 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.js +++ b/erpnext/selling/doctype/sales_order/sales_order.js @@ -217,7 +217,11 @@ frappe.ui.form.on("Sales Order", { frm.set_value("advance_paid", 0); } - frm.ignore_doctypes_on_cancel_all = ["Purchase Order"]; + frm.ignore_doctypes_on_cancel_all = [ + "Purchase Order", + "Unreconcile Payment", + "Unreconcile Payment Entries", + ]; }, delivery_date: function (frm) { diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index e5e67ed38b7..af67f07a360 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -421,7 +421,13 @@ class SalesOrder(SellingController): self.create_stock_reservation_entries() def on_cancel(self): - self.ignore_linked_doctypes = ("GL Entry", "Stock Ledger Entry", "Payment Ledger Entry") + self.ignore_linked_doctypes = ( + "GL Entry", + "Stock Ledger Entry", + "Payment Ledger Entry", + "Unreconcile Payment", + "Unreconcile Payment Entries", + ) super().on_cancel() # Cannot cancel closed SO