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 a 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 access to the 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, then access to the 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, the index (row number) is enclosed in square brackets []. Index, in the 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
The 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
A structure column is identified by its name. Therefore, structure column identifier can be defined in two ways:
SV.StructureName[...]^ColumnName - in case of the object of Structured variable type
_locRecord[...]^ColumnName - in case of a local variable of RECORD type
The structure row index is not important.
Identifier of structure item
A structure item is identified by its name. Therefore, structure item 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)