From 68d1a9ec0767bc31599bb6df009efdaf81e56c40 Mon Sep 17 00:00:00 2001 From: Ankush Menat Date: Mon, 19 Feb 2024 13:08:42 +0530 Subject: [PATCH] fix: delete cron jobs when switching server script type --- frappe/core/doctype/server_script/server_script.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/frappe/core/doctype/server_script/server_script.py b/frappe/core/doctype/server_script/server_script.py index d5b405b96d..2c38179018 100644 --- a/frappe/core/doctype/server_script/server_script.py +++ b/frappe/core/doctype/server_script/server_script.py @@ -121,11 +121,13 @@ class ServerScript(Document): def clear_scheduled_events(self): """Deletes existing scheduled jobs by Server Script if self.event_frequency or self.cron_format has changed""" - if self.script_type == "Scheduler Event" and ( - self.has_value_changed("event_frequency") or self.has_value_changed("cron_format") + if ( + self.script_type == "Scheduler Event" + and (self.has_value_changed("event_frequency") or self.has_value_changed("cron_format")) + or (self.has_value_changed("script_type") and self.script_type != "Scheduler Event") ): for scheduled_job in self.scheduled_jobs: - frappe.delete_doc("Scheduled Job Type", scheduled_job.name) + frappe.delete_doc("Scheduled Job Type", scheduled_job.name, delete_permanently=1) def check_if_compilable_in_restricted_context(self): """Check compilation errors and send them back as warnings."""