Terms
Terms used to describe actions
Expression
Expression is a sequence of characters, which form a correct mathematic expression. If it is required, that an expression should get a value of particular type, then this value type will be identified as follows:
Boolean - Bo
Integer - Int
Real - Re
Absolute time - AbsTime
Time interval (relative time) - RelTime
Text - Txt
HBJ - Hbj
Identifier of value
Identifier of value (see also Identifiers) is:
object name
local variable name
directly written variable. There are 3 admissible types
text constant (e.g.: "This is a text constant")
integer constant (standard declaration of an integer number)
real constant (declaration of a real number. e.g.: 3.14159)
system constant (@TRUE, @Run, ...)
In case that the name of an object identifies an object of Structured variable, then an access to item (optionally an index) must follow the name. For example:
SV.Structure^Int
SV.Structure[2]^Int
Similarly, if a local variable is of RECORD type, or type ALIAS, an access to item (optionally an index) must necessarily follow the name. For example:
RECORD (SD.RecordDef) _locRecord
ALIAS (SD.RecordDef) _aliasRecord
INT _index
_locRecord[_index]^Int
_aliasRecord^Int
As we can see from the examples, index (row number) is enclosed in square brackets []. Index, in declaration, is evaluated as an expression, which has to get a value of Int type.
According to the identifier definition, the following types belong
into this category::
IC_C, IC_O, IC_O_R_RIA, IC_O_R_RIN, IC_L, IC_L_CONST, IC_L_AN, IC_L_AT_RIA, IC_L_AT_RIN, IC_L_RNA_RIA,
IC_L_RNA_RIN, IC_L_R_RIA, IC_L_R_RIN.
Identifier of structure row
Identifier of a structure row is:
indexed name of an object of Structured variable type
indexed name of a local variable of RECORD type or type ALIAS
An example for objects:
INT _index
SV.Structure[_index+1]
SV.Structure[1]
An example for local variable:
RECORD (SD.RecordDef) _locRecord
ALIAS (SD.RecordDef) _aliasRecord
INT _index
_locRecord[3]
_locRecord[_index]
_aliasRecord[_index]
_aliasRecord[6]
According to the identifier's definition, the following types
belong to this category:
IC_O_R_R, IC_L_AT_R, IC_L_RNA_R, IC_L_R_R, and the index placed after identifier must be <> 0.
Identifier of structure column
Row is identified by its name. Therefore structure row identifier can be defined in two ways:
SV.StructureName[...]^ColumnName - in case of object of Structured variable type
_locRecord[...]^ColumnName - in case of local variable of RECORD type
Structure row index is not important.
Identifier of structure item
Row is identified by its name. Therefore structure row identifier can be defined in two ways:
SV.StructureName[RowIndex]^ColumnName - in case of an object of Structured variable type
_locRecord[RowIndex]^ColumnName - in case of a local variable of RECORD type
SV.MenoStruktury[RowIndex]^_colNr - for ESL only (see also the topic Admissible operands in expressions)
_locRecord[RowIndex]^_colNr - for ESL only (see also the topic Admissible operands in expressions)