Addressing types
Addressing data point attributes
Data points have a wide range of attributes. These are either holders of data point element values or provide the settings for editing these elements. One can configure which individual attributes a data point element possesses by attaching a config - see dpSet() or the "reference PARA" section of the manual. In Control scripts, the names of data point attributes are specified as strings.
Syntax
-
[System:]dpName.[dpElem1[.dpElem2...]]:_Config.[Detail]._Attribute
Only the configs for lock, user entitlement, conversion and message handling use the Detail feature. The appendix contains a table of the configs and attributes that exist. Provided a project consists of just one system, or only its own system is to be addressed, the address for other configs shortens to: dpName.[dpElem1[.dpElem2...]]:Config.[Detail].Attribute
There must be at least one full stop between the data point name, the colon and the config label.
Example
A.:_original.._value
Pump12.Command_On:_original.._value
A.:_msg_conv.2._round_val
MySystem.:_pv_range.._min
Addressing structure elements
In principle, structure elements are addressed using the same syntax as for data point attributes. For specific elements ("leaves"), you can also use a different form of addressing. This addressing applies to all elements located below structure elements (leaves) with a defined type. Since these lower elements automatically adopt the type of the given structure element, they can also be addressed with indices instead of names.
If in a data point address
dpName.dpElem1.dpElem2:Config..Attribute
dpElem1 has a defined structure (as mentioned above, e.g. type int), then "[i]" can be set instead of dpElem2, where "i" stands for the i th leave of the structure dpElem1. The smallest index is one. Thus for the first structure element below dpElem1 one can write:
-
dpName.dpElem1[1]:Config..Attribute
This line specifies that leave which lies uppermost in the data point tree diagram in the PARA module. An index of two is assigned to the next structure element, and so on. This sequence is not specified by the User Interface Manager, but by the data point configurator.
Example
There are two options for referring to the same value of a structure element.
Test_Structure.Fifthelement:_original.._value
Test_Structure[5]:_original.._value
There is no full stop between the structure element name and the colon in front of the Config label in the second address.
Addressing data point elements with aliases
In addition to the full addressing of data point elements used above, data point elements can also be addressed via an alias, that is, a short form. Instead of the form
-
[SysName:]dpName.[dpElem1[.dpElem2...]]:Config.[Detail].Attribute
one can also write
[SysName:]@Alias:Config.[Detail].Attribute
Each alias must be unique, that is, one alias must specify precisely one data point element, and one data point element must have precisely one alias. The function dpSetAlias() or the reference PARA (Config _common) is used to assign an alias to a data point element. The control system always returns just full addresses, that is, not the alias name, for instance as arguments of Work functions. See dpConnect() and alertConnect(), or in general queries using dpGetPeriod().
Example
Two examples of data point aliases:
Pump12.Command_On:_original.._value
@P12Com_On:_original.._value
Mausi1:Test_Structure.FifthElement:_original.._value
Mausi1:@T_Str5:_original.._value
In the first example "Pump12:Command_On" has the alias "P12Com_On"; in the second example "T+Str5" is the alias for "Test_Structure.FifthElement".
Read about addressing of graphics objects in references in the chapter Control graphics.