diff --git a/Server-Side Components/Background Scripts/Run a Scheduled Job/README.md b/Server-Side Components/Background Scripts/Run a Scheduled Job/README.md new file mode 100644 index 0000000000..df35aab23b --- /dev/null +++ b/Server-Side Components/Background Scripts/Run a Scheduled Job/README.md @@ -0,0 +1,2 @@ +A script to run an existing Scheduled Job programmatically. Can be used as Background script, in a Script Include or anywhere a server side script is available. +Replace `sys_id` with the Sys ID of the Scheduled Job to be run. diff --git a/Server-Side Components/Background Scripts/Run a Scheduled Job/run-scheduled-job.js b/Server-Side Components/Background Scripts/Run a Scheduled Job/run-scheduled-job.js new file mode 100644 index 0000000000..214e57e1fc --- /dev/null +++ b/Server-Side Components/Background Scripts/Run a Scheduled Job/run-scheduled-job.js @@ -0,0 +1,10 @@ + // Generic/parent scheduled job table = sysauto + var grScheduledJob = new GlideRecord("sysauto"); + if (grScheduledJob.get(sys_id)) { + // In order to run the job successfully, we need the more specific + // child table name of the scheduled job (eg. sysauto_script) + var classname = grScheduledJob.getValue('sys_class_name'); + var scheduledJob = new GlideRecord(classname); + if (scheduledJob.get(sys_id)) + gs.executeNow(scheduledJob); + }