refactor: reset all flags and remove unwanted code
diff --git a/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.json b/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.json
index bd45b1c..aa06d14 100644
--- a/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.json
+++ b/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.json
@@ -57,6 +57,7 @@
"fieldname": "status",
"fieldtype": "Select",
"label": "Status",
+ "no_copy": 1,
"options": "Queued\nRunning\nFailed\nCompleted\nCancelled",
"read_only": 1
},
@@ -118,13 +119,14 @@
"fieldname": "initialize_doctypes_table",
"fieldtype": "Check",
"label": "Initialize Summary Table",
+ "no_copy": 1,
"read_only": 1
}
],
"index_web_pages_for_search": 1,
"is_submittable": 1,
"links": [],
- "modified": "2024-02-04 15:28:29.532826",
+ "modified": "2024-02-05 10:25:28.462255",
"modified_by": "Administrator",
"module": "Setup",
"name": "Transaction Deletion Record",
diff --git a/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.py b/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.py
index 63b2801..5f430b8 100644
--- a/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.py
+++ b/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.py
@@ -58,6 +58,15 @@
)
def before_submit(self):
+ if queued_docs := frappe.db.get_all(
+ "Transaction Deletion Record", filters={"company": self.company, "status": "Queued"}
+ ):
+ frappe.throw(
+ _("There is another document: {0} Queued. Cannot queue multi docs for one company.").format(
+ self.queued_docs
+ )
+ )
+
if not self.doctypes_to_be_ignored:
self.populate_doctypes_to_be_ignored_table()
@@ -66,6 +75,7 @@
self.delete_bin_data = 0
self.delete_leads_and_addresses = 0
self.delete_transactions = 0
+ self.initialize_doctypes_table = 0
self.reset_company_default_values = 0
def before_save(self):
@@ -88,15 +98,6 @@
enqueue_after_commit=True,
)
- @frappe.whitelist()
- def start_deletion_process(self):
- self.delete_bins()
- self.delete_lead_addresses()
- self.reset_company_values()
- self.delete_notifications()
- self.initialize_doctypes_to_be_deleted_table()
- self.delete_company_transactions()
-
def delete_notifications(self):
self.validate_doc_status()
if not self.clear_notifications: