fix: auto delete draft serial and batch bundle (#38637)
diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py
index 1b8f66c..abcea44 100644
--- a/erpnext/controllers/accounts_controller.py
+++ b/erpnext/controllers/accounts_controller.py
@@ -292,6 +292,7 @@
def on_trash(self):
self._remove_references_in_repost_doctypes()
self._remove_references_in_unreconcile()
+ self.remove_serial_and_batch_bundle()
# delete sl and gl entries on deletion of transaction
if frappe.db.get_single_value("Accounts Settings", "delete_linked_ledger_entries"):
@@ -307,6 +308,15 @@
(self.doctype, self.name),
)
+ def remove_serial_and_batch_bundle(self):
+ bundles = frappe.get_all(
+ "Serial and Batch Bundle",
+ filters={"voucher_type": self.doctype, "voucher_no": self.name, "docstatus": ("!=", 1)},
+ )
+
+ for bundle in bundles:
+ frappe.delete_doc("Serial and Batch Bundle", bundle.name)
+
def validate_deferred_income_expense_account(self):
field_map = {
"Sales Invoice": "deferred_revenue_account",