Skip to main content

Run a Process on a Schedule

The platform supports time-based automation through scheduled Process execution.

The platform supports time-based automation through scheduled Process execution. Rather than relying on a user to manually trigger a Process, you can configure it to run automatically at a defined time — daily, on specific days of the week, or based on any date logic you can express in Excel.

Scheduling is built on two components: Schedule Processes, which define what should run and when, and the Master Scheduler, which orchestrates when those definitions are executed.


How scheduling works

The sequence every day is:

  1. The Master Scheduler runs on a system timer, typically once every 24 hours.

  2. It retrieves all Processes with Process Type = schedule and executes each one.

  3. Each Schedule Process runs its workbook logic and produces a list of jobs — other Processes to run, with their start times and parameter values.

  4. These jobs are written as records to the ES_PROCESS_EXECUTION object with a status of Queued.

  5. A separate worker thread polls the execution queue at regular intervals (typically every 10 seconds or so).

  6. When a queued record's Start Date/Time is reached, the worker thread executes the corresponding Process.

Queued jobs are visible in the Process History screen with Status = Queued until execution begins. There is no guarantee of execution at the exact second specified — a short delay may occur depending on queue polling and other running Processes.

Any Spreadsheet Process or Process chain can be scheduled. Import and Import-Merge Processes cannot be scheduled this way.


The Master Scheduler

The Master Scheduler is itself a Process, configured and managed by the platform. It runs on a predefined timer and its job is to trigger all Schedule Processes, which in turn build the daily execution queue.

By default, the Master Scheduler passes the current server date and time to each Schedule Process as its execution date parameter. Schedule Processes use this value to calculate which jobs to generate — for example, determining that today is the first of the month and therefore a monthly Process should be queued.

The Master Scheduler's Process Logic workbook can be modified by configurators when needed — for example, to change the date value passed to schedule Processes, or to add scheduling logic directly rather than using separate Schedule Processes. Modify it carefully and ensure the output written to ES_PROCESS_EXECUTION remains correctly structured.


Create a Schedule Process

A Schedule Process has Process Type set to schedule and must include one mandatory Process Parameter named Execution Date of type DateTime. The platform supplies the current server date and time to this parameter when the Master Scheduler runs. The workbook uses this value to build the list of jobs for the day.


1. Prepare the Process Logic workbook

The workbook must include:

  • ES_PARAMETERS — the starting cell for Process Parameters.

  • ES_RESULT — the result indicator cell.

  • A calculation worksheet containing the scheduling logic.

  • An output named range whose structure matches the ES_PROCESS_EXECUTION object.

The output range for ES_PROCESS_EXECUTION must include one row per scheduled job, with the following attributes in order:

Attribute

Notes

Process Name

The exact name of the Process to execute

Start Date/Time

Format: dd/mmm/yyyy hh:mm:ss.000

End Date/Time

Leave blank

Status

Must be Queued

Parameters

Parameter string: ParameterName=Value;ParameterName=Value — dates within the parameter string use format dd/mmm/yyyy

Username

Must be Scheduler

Calculation Log

Leave blank

Process Info

Leave blank

Application

The application containing the Process to be executed

To exclude a job under certain conditions, use a formula that leaves the Process Name cell blank. Blank rows are not submitted to the queue.

A Schedule Process might for example: queue a daily calculation Process for the previous day on every execution, and queue a monthly rollup Process only when the execution date is the first day of the month.


2. Create the Schedule Process record

  1. Open the Configuration application and navigate to Process Configuration \> Processes.

  2. Click Detail, then New.

  3. Enter a Process Name and Description.

  4. Upload the Process Logic workbook.

  5. Set Process Type to schedule.

  6. Enter the Spreadsheet Result Location and Spreadsheet Parameter Location.

  7. Select the Application.

  8. Set the Logging Level.

  9. Enter an Audit Comment and click Save and Refresh.


3. Configure the Process Parameter

Add one Process Parameter:

  • Name: Execution Date

  • Type: DateTime

  • Order: 1


4. Configure the Process Output

Add one Process Output:

  • Location: the named range in the workbook containing the schedule records.

  • Object Specification: ES_PROCESS_EXECUTION.

This output is what submits the scheduled jobs to the queue.


Monitor scheduled executions

Once configured, scheduled jobs appear in the Process History screen with Status = Queued. When a job executes, its status updates to Running, then Success, Warning, or Failed. Use the Process History screen to verify that scheduled jobs are being generated and executed as expected.

Did this answer your question?