Actions

Reference for the actions an operator can trigger from a page object, the settings each action uses, and the rights and signatures that apply to them.

Updated 9 min read
On this page (10 sections)
  1. Functional explanation
  2. Variable Actions
  3. Navigation and Popups
  4. Popup Configurator
  5. Scripts
  6. Recipes
  7. Session and Language
  8. System Actions
  9. Two-Stage Commands
  10. Rights, Signatures and Audit Trail

Functional explanation

An action is what happens when an operator clicks an object on a page. Actions are configured per object in the design environment, in the Actions section of the object context. An object can hold several actions: they are listed in the order they run, and the arrows next to each row move an action up or down in that order. All actions of one object run when the object is clicked.

Actions are available on the Button, Label, Square, Circle, Knob, Polygon, Polyline, Image and SVG objects.

Selecting an action shows only the settings that action uses. The None action is a configured row that does nothing, and is the value a new row starts with.

The actions on this page are page actions, triggered by an operator. Alarms, Events and Schedules have their own action list, which is configured on those pages and covers unattended actions such as Send Email and Sample Group.

Variable Actions

These actions write to the variable named in the Variable setting. The operator needs write rights for that variable. Variable names are used exactly as configured, so a name such as Pump1_Speed, a device-embedded name such as PLC1.Pump1_Speed, or a Local variable name such as Counter are all valid entries.

ActionDescriptionSettingsExample
SetWrites the variable to its on state.VariablePump1_Start
ResetWrites the variable to its off state.VariablePump1_Start
ToggleWrites the opposite of the current value.VariableLight_Hall
Momentary OnWrites the on state and writes the off state again approximately 1.5 seconds later, so the object acts as a push button.VariablePump1_Jog
Set ValueWrites the content of the Value setting to the variable. A Value entered as {Name} is replaced by the current value of the variable Name before the write, which lets one button copy a setpoint from another variable. When the variable Name has no value, the click shows the message Name has no value. Nothing was written. and nothing is written.Variable, ValueVariable Pump1_Speed, Value 75
SettingDescriptionExampleUnits
VariableVariable the action writes to.Pump1_SpeedVariable name
ValueValue written by Set Value and Select Command. Enter {Name} to write the current value of the variable Name; only a Value that consists of the {Name} token alone is replaced. The variable button next to the field opens the variable list and fills in the selected variable as {Name}.75Text

Scripts

Three actions run something on the server or in the page. Execute Script runs a Python script on the server, Execute Report renders a report, and Execute PageScript runs a function in the page script in the browser.

ActionDescriptionSettingsExample
Execute ScriptRuns the Python script selected in Script. The script runs for operators in the User Groups of that script; when the script has no User Groups, administrator rights are required.ScriptStartPumpSequence
Execute ReportRenders the report selected in Report, the same run an alarm, event or schedule performs. The report must be enabled, and its period and parameter values come from its own template, so a report with period source variables reads its two variables at the moment the operator presses the button. Rendering continues in the background: the button returns at once and the run publishes its state on System.ReportStatus_ReportName and System.ReportMsg_ReportName. Show the result on the same page with a Document Viewer pointed at System.ReportFile_ReportName. The operator must be in one of the groups listed in User Groups on the report; empty means Administrators only, and Administrators always pass. A report that no longer exists reports Report not found instead of doing nothing.ReportDaily Production Report
Execute PageScriptCalls a function of the page script of the current page. Editor opens the page script editor, Function Call holds the call that runs on click.Editor, Function CallShowPumpDetails()

A typical operator screen for a report on demand uses three objects. Two Date Time Pickers write the window into two Local variables, for example ReportStart and ReportEnd, which are named as Start var and End var in the Report Settings with period source variables. A Button carries the Execute Report action with Report set to the report. A Document Viewer with Document Path set to System.ReportFile_Daily_Production_Report shows the result as soon as the run finishes.

For a run that needs values the template does not hold, use Execute Script instead and call RunReport from the script, which accepts an explicit period and parameter values. See the Report Designer article.

Recipes

These actions work with the recipes configured on the Recipes page. A recipe is addressed by its name.

ActionDescriptionSettingsExample
Save RecipeReads the recipe named in Recipe from the running values and saves it to a file through the browser.RecipeLineA_Product1
Load RecipeLoads a recipe file selected by the operator and writes its values to the variables of the recipe.RecipeLineA_Product1
Transfer RecipeCopies the values of the recipe in From to the recipe in To.From, ToFrom LineA_Product1, To LineB_Product1

Session and Language

ActionDescriptionSettingsExample
LogInLogs in with the Username and Password entered on the action. Used for a fixed station account on a panel that stays logged in.Username, PasswordOperator1
LogOutLogs the current user out and returns to the login page.
Select LanguageSwitches the interface to the language in Language.LanguageEnglish
Select ThemeSwitches this station to the Color Library theme in Theme, so every object that references a library color repaints in that theme. The value may be a theme name or a variable holding one. Theme opens the theme list; the variable button next to the field opens the variable list. The choice applies to this station only and is remembered on it. The page reloads and reopens on the same page; open popups are closed and text typed but not confirmed is discarded.ThemeNight

System Actions

ActionDescriptionSettingsExample
Switch RequestAsks a redundant pair to switch roles, so the standby server takes over. The result is shown to the operator in a message.
Restart DeviceRestarts the device named in Device. The connection is closed, the device configuration is read again and the driver starts over, so a restart also applies configuration changes made for that device. Follow the ChannelState variable of the device for progress. The operator needs the Device Connection Control Right of the User Groups page; members of the Administrators group always hold it. An operator without the right sees a message that they do not have the rights to restart the device, and the refusal is recorded in the audit trail.DevicePLC1

Two-Stage Commands

Three actions drive a command that is issued in two steps, which is used where a command point is armed at the remote station or IED before it is executed. They apply to an IEC104 or IEC61850 variable whose Command Mode is Select before operate (operator). The IEC104 and IEC61850 articles describe the full flow and the variables that report the armed state.

These are page actions, because the point stays reserved while the operator decides. A write from a Python script, a schedule, an alarm action or a gateway performs both steps in one call.

ActionDescriptionSettingsExample
Select CommandArms the point at the remote station or IED with the value in Value. A Value entered as {Name} uses the current value of the variable Name, as for Set Value. Nothing moves in the field until the command is executed.Variable, ValueVariable RTU1.Breaker1_Trip, Value 1
Execute CommandExecutes the selection this operator armed. The value comes from the selection.VariableRTU1.Breaker1_Trip
Cancel SelectionReleases the point again without executing it.VariableRTU1.Breaker1_Trip

Rights, Signatures and Audit Trail

An action that writes a variable runs for operators who have write rights for that variable. Object Control Access decides in addition which user groups may operate the object itself.

With compliance mode enabled, the electronic signature keys apply to the actions that change the process. Variable.Write covers Set, Reset, Toggle, Momentary On, Set Value and Execute Command on a variable that has Signature Required selected; the write rights and the value range are checked before the dialog opens. Device.Restart covers Restart Device. Recipe.Download covers Load Recipe and Transfer Recipe. The operator signs in the dialog that opens, and the action runs once the signature is accepted. Select Command and Cancel Selection run without a signature, so the signature is asked at the moment the command is executed.

Actions an operator triggers are written to the Audit Trail with the user name, the object of the action and, for a write, the value before and after. Actions triggered by an alarm, an event or a schedule are written to the event history instead.

Something missing or wrong in this article? Contact us