
The Scheduler is for setting up and triggering time-based events to run in the system.
Common uses for this include the following:
• Generating reminder emails
• Automatically updating information on records (e.g. changing the status automatically on a date of expiry)
• Timed sync of information between systems
Create a Scheduled Event
Click the Create button to add a new Scheduled Event.

Scheduled events have a timing property and a task list. The timing property defines when it is necessary for the task list to execute.
A scheduled event can be set up to trigger per record of a given EFormType, once-per day without a specific context, or simply run once-off.
Triggering per record is beneficial if you want to execute a task per record. An example would be to send a reminder email for each contract that is due to expire. This would need to run over each record in order to know which records require emails to be sent.
When choosing to run per record, it may be necessary to provide a rule which determines what defines when the task list needs to run. For example, only run the task list for contracts that have just past the expiry date.
Once-per day is good in cases such as nightly integration events, as this does not require a specific record content to know when to run.
This is what the filter area looks like:

The task list defines the set of functions to run.
The task list defines what happens when the scheduled event needs to run. The task list can cover many functions such as sending notifications, updating records, integration tasks, etc. The list can support as many tasks as is required and they all run sequentially in order, so it is possible to chain events together, i.e. the first task informs the second task and so on.

While the above is all that is necessary to get a Scheduled Event working, they support a selection of other properties as well.
Timing - This defines when the task should run. With the Daily/Weekly option you can specify which days of the week, i.e it is possible to exclude weekends.

Repetition - This is used when it is required to run multiple times a day. If nothing is specified, then the event will run once per day on the applicable days.

Run only between - This defines the specific period that the scheduler should run. Note, that due to the nature of how the scheduler is timed, it could run up to 20 minutes after the initial start time, therefore trying to get a precise time could have a small delay.

Permission - This sets who can access or manage this event. It cascades with the fact that only Administrators can access the Control Panel.

Miscellaneous - This covers additional options that are not part of the set up of the scheduled event, but are aimed at other actions such as previewing which records.

Here is a breakdown of what each action does in this section:
| Action | Description |
|---|---|
| Preview | Shows a list of the records that match the filter provided. These are the records which would trigger the event to run. |
| Reset Schedule | Immediately runs the scheduled event. |
| Reset Records | Marks the event as having not run today, meaning that it will re-run at the next opportunity. If the event is set to run records, this will not re-run over those records as they would already be flagged as being effected by the event today. |
| Export | Exports this scheduled event in an xml format. This format is re-importable between systems. |
| Change | The scheduled events access mirrors the access of the user who creates it, meaning if the user does not have read access to particular records that the event should run over, then it will not be able to access them. Use this button to have the event run under the access of a specific user. The 'system' account is a good option in that it should always have access to all records in the system. |
| Import Replacement | Click this to import a replacement scheduled event to substitute this scheduled event. Since this replaces the current scheduled event, the most likely scenario to use this is where there have been updates to the event in a dev environment and you are importing the updates to the specific event. |
Exporting and Importing All Scheduled Events
Click the Export All button at the button of the Scheduler page. This will download a zip file containing the xml data for each scheduled event in the system.

By using the Import button, you can re-import the downloaded file.

The exported file contains the 'ID' of each scheduled event, when importing scheduled events those that have IDs matching event IDs in the system will be updated, and IDs that do not match will be created as new scheduled events and will use the ID that was imported.
These functions are used in the following cases:
• Backups
• Deploying updates between systems (e.g. dev to production)