Automatically Launch One Line of Caché Commands at User Specified Dates and Times
Many Caché users do not have security access to the Caché Task Manager, but they need to run automated background jobs that they created. This utility allows users to schedule and run their jobs at their secuity level, just like they can manually from the Caché prompt in a terminal window (see screen prints below).
* XML based scheduling and task launching utility for all versions of Caché and all Caché based products such as Ensemble, DeepSee, HealthShare, TrakCare, etc. (uses the Intersystems XML import class $System.OBJ.Load for full compatibility).
* Only launches a scheduled task if the Caché command(s) successfully compile(s). It the compile is not successful, the repeat option is set to zero and the task is not launched.
* Display of a selected task shows the process number when it is running and also shows when the process is not running. Additionally, a window has a dropdown list for the output of all previous runs and each selected run shows the output from the task and whether or not there were any runtime errors. Also, the last compile information from $System.OBJ.Load is displayed for the selected task. When the task is running, there is an option to terminate the process (with a safety checkbox that must be checked to allow termination).
* For repeat tasks, the next scheduled run time is displayed for the selected task. The repeat task range is from once every minute to once every 99999 minutes (more than 69 days). To run the same task each week day, schedule it 5 different times beginning once on each week day, each with a repeating setting of 10,080 minutes (1 week).
* Optional Email notification when a task is started and if a task runs longer than the user specified limit.
* All selections are by user, so schedules of one user are not affected by another user (by Caché User Name/ID).
* Repeating tasks will not relaunch if the task is currently running. As soon as a long running task completes, that overdue scheduled task is immediately launched.
* US/UK date display option.
* Edit mode and Watch mode for the web page was added Feb 13, 2012. In Watch mode the page refreshes every 5 seconds and shows all tasks in a table, with the running tasks at the top of the table in default column sort of process id. The name of the task is shown, the next launch time, and the process number if the task is currently running. Each column header can be clicked on to sort by that column. There is a "Watch" button to put the page in Watch mode and a "Stop Watching" button to put the page back into edit mode. Also, clicking on the name of any task in the table will put the page in edit mode for that task.
Link to fully-functional FREE software (SimpleCacheBackups - January 2014) - Import into any namespace, compile (with the cf flags if installed previously) from the Caché Import Classes page, and then access the following URL:
http://[Caché Server Name or IP]:[Web port number]/csp/[namespace installed]/SimpleCacheBackups.ScheduleTasks.cls
Google Docs Demo:
Click on the image below to see a currently running repeat task that ran successfully with no runtime errors:
Click on the image below to see a currently running repeat task that ran partially, but with runtime errors (the variable name something is not defined at runtime):
Click on the image below to see a failed compile for the task (notice the repeat has been automatically set to zero):
Click on the image below to see the page in Watch mode (refreshes every 5 seconds and automatically scrolls down to the table of tasks):