Scenario is the main entity of the "Automation" module. A scenario includes:
The structure of the event is defined in the general pipeline of events processing.
Local structure with its own set of properties, for assigning the Pin types to custom functions and variables.
Contains the following parameters:
All existing types can be used except
Exec
.
A block is a graphical element of the scenario constructor, which may include a function, an event, a variable, various operators and converters.
Block example:
Block parameters - a panel with block settings located on the right side of the constructor, called by clicking on the block.
A block with the OnLogEvent event will be added to the scenario by default when it is created. Adding OnLogEvent
blocks from the context menu is blocked.
Local functions include functions created within the current scenario and used only within it. In the current version, local functions are CodeFunctions. Users can create new functions as well as reuse previously declared functions for the current scenario.
Users has access to a list of global functions contained in the system library. List of global functions available to users.
Pin is a communication node for transferring data or initiating commands between scenario blocks.
Pins are used to determine which inputs and outputs can be connected to each other for data transfer.
In some cases, the user will be able to independently specify a value for incoming pin through the input field, without the need to attach a link to it.
The scenario layout is a scheme of interactions of various blocks.
A layout example:
The Object Inspector is the right panel of the constructor used for configuring scenario blocks. Called by double clicking on the block.
Inspector example:
The Object Manager is the left panel of the constructor used for declaring new objects or for working with previously added ones.
Manager example:
Functions are the main executable blocks of a scenario.
Functions are divided into 2 main classes:
This type of function, in addition to the basic settings, includes the ability to build a structure using the scripting programming language C# scripts.
Comparison operators, math functions, data converters, etc. These functions are supplied by default for all systems, regardless of the composition of the products.
All functions are also divided into 2 categories:
Functions can be Pure and Impure
Pure:
Impure:
The user can use variables when building a scenario.
Variables are divided into:
There are 2 states for each variable: SET and GET. When added to a scenario, the user can specify the state of the variable.
The name of a function or variable can contain:
The name of a function or variable must start with:
The C# programming language is case sensitive: name
and Name
are 2 different entities.
The name of a function or variable cannot match keywords (for
, if
, using
).
Example | Valid/Invalid |
---|---|
myvar | Permissible |
Myvar14092 | Permissible |
_name | Permissible |
@variable1 | Permissible |
123myvar | Invalid, starts with a number |
my var | Invalid, contains space |
Function Blocks support data transfer via Pins of the following types:
Title | Possible values | Ability to set a default value | Validation |
---|---|---|---|
Boolean | true/false | YES | - |
Byte | Integers from 0 to 255 | YES | Only non-negative integers. |
Char | Single Unicode character | YES | Prohibition to enter more than one character |
Double | YES | ||
Dynamic | Stores any values | NO | - |
GUID | Format value 000000000-0000-0000-0000-000000000000 | YES | Mask validation |
Integer | From -2147483648 to 2147483647 | YES | Whole numbers only. When entering a number less than or greater than the allowed value, the value is reduced to the minimum or maximum allowable |
Integer64 | From -9223372036854775808 to 9223372036854775807 | YES | Whole numbers only. When entering a number less than or greater than the allowed value, the value is reduced to the minimum or maximum allowable |
String | Unicode character string | YES | Any characters are allowed. There are no limits on the number of characters. |
Structure | NO | - |
Each type is color coded for easy identification.
Links can only be established between Pins of the same type.
Automaton Bot is a system user used for "depersonalizing" operations in scenarios of the "Automation" module.