The Events configuration page defines conditions that, when they become true, create a log entry in the event history. Unlike alarms, events do not require acknowledgement and do not have severity levels.
Events are used for operational audit trails, state change tracking, and triggering automated actions on condition transitions. An event fires once each time the condition transitions from false to true.
Event records are viewable in the Event Viewer.
Event Settings
Create a new event with the Add button in the toolbar. The Add dialog contains the event settings organized in the sections General and Actions, with default values already filled in. Enter at least the Condition and press Create. The Condition field provides a ... button that opens the Condition Editor, and the Actions field provides a ... button that opens the Edit Actions dialog.
Each Events row represents one event definition. The row shows the Condition, Asset, and Message directly and these values can be edited in place. Press the Settings icon on an event row to open the Settings dialog, which contains the same sections and all settings of the event. Press Save to apply the changes.
| Setting | Description | Example | Units / Format |
|---|---|---|---|
| Enable | Enables or disables this event. | true | Boolean |
| Condition | Expression that evaluates to true or false. When the condition transitions to true, one event record is created. Variables are referenced by their full variable name, for example Pump1_Running or PLC1.Pump1_Running. | PLC1.Pump1_Running == 1 | Expression |
| Asset | Asset tag used to group and filter this event in the Event Viewer. | PumpStation | Text |
| Message | Text recorded in the event history when this event fires. | Pump 1 started | Text |
| Actions | Actions executed at the moment the event fires. Press the ... button to open the Edit Actions dialog. | Actions |
No rows match the filter.
Message Tokens
The Message field supports variable tokens that are resolved to their live values at the moment the event fires. A token is written as {VariableName}, using the full variable name. If the token matches a variable in the project, it is replaced with that variable's current value, shown with the Format of the variable when the variable has one. If no matching variable is found, the token is left as-is in the recorded message.
| Token format | Description | Example |
|---|---|---|
| {VariableName} | Replaced with the current value of the referenced variable at event fire time. Uses the full variable name. | Flow rate: {PLC1.Flow_Rate} m3/h |
No rows match the filter.
Action Tokens
Action strings support a set of fixed tokens that refer to event metadata, as well as variable tokens in {VariableName} format using the full variable name. Fixed tokens are resolved first, then variable tokens are substituted.
| Token | Replaced with |
|---|---|
| {Condition} | The event's condition expression. |
| {OnTime} | The fire timestamp, formatted yyyy-MM-dd HH:mm:ss. |
| {Message} | The resolved event message text (after variable tokens in the Message field have been substituted). |
| {Asset} | The event's asset tag. |
| {VariableName} | The current value of the referenced variable at event fire time, using the full variable name. |
No rows match the filter.
Actions
Event actions execute at the moment the event fires. An event fires once each time the condition transitions from false to true.
Press Add Action in the Edit Actions dialog to add an action. Each action has a type and input fields for that type. Actions execute in the order shown and can be moved up and down or deleted. Press Save to apply the action list.
| Action | Fields | Description |
|---|---|---|
| None | Placeholder type. The action is not executed. | |
| Set | Variable | Writes 1 to the variable. |
| Reset | Variable | Writes 0 to the variable. |
| Toggle | Variable | Inverts the current value of the variable between 0 and 1. |
| Momentary On | Variable | Writes 1 to the variable and writes 0 again after 1.5 seconds. |
| Set Value | Variable, Value | Writes the entered value to the variable. The Value field supports action tokens and variable placeholders. |
| Send Email | Email To, Email Body | Sends an email to the entered address using the SMTP settings on the Parameters page. Both fields support action tokens and variable placeholders. |
| Execute Script | Python Script | Executes the selected Python script. |
| Transfer Recipe | Recipe From, Recipe To | Transfers the values from one recipe to another recipe. |
| Sample Group | Sample Group | Writes a historian sample for every variable assigned to the named sample group. |
| Restart Device | Device | Restarts the selected device. The device connection is closed, the device configuration is read again, and the connection is started again. Use it to recover a device after a communication problem or to apply configuration changes to that device. |
No rows match the filter.
Notes
An event fires once each time the condition transitions from false to true. It does not fire again while the condition remains true.
The Condition field supports the same expression syntax as alarms: variables referenced by their full variable name with standard comparison operators (==, !=, >, <, >=, <=). A variable name that contains a slash, such as the alarm counter of a nested asset node (SYSTEM.AlarmCount_Severity1_WTP/Intake), is read as one name when a variable with that name exists; otherwise the slash divides.
Actions are executed at the moment the event fires. Actions that run on a recurring event can accumulate quickly if the condition toggles frequently.
A condition is evaluated only while every variable it references has the Good or Warning status. While a referenced variable is Unknown, ConnectionLost, FormatError, Timeout or Disabled, the event is suspended and keeps its edge state: it fires once when the variable delivers a value and the condition is true at that moment, and it does not fire again for a condition that was already true before the suspension. The System Log Viewer reports the suspension once per variable. See the Variable Status article.