List of tag properties
This is a list of tag properties that you can access using the tag field sytax.
tagname->property
Property | Description | R or R/W | Data Type | Available on Data Type… | Retain | |||
---|---|---|---|---|---|---|---|---|
Bool | Int | Real | Str | |||||
Name | The name of the tag, as configured in the Project Tags database. | R | String, up to 32 chars | Y | Y | Y | Y | n/a |
MemberName | The name of the class member, in a properly configured Class. NOTE: The syntax must be:
Class.Member->MemberName Example: Tank.Lvl->MemberName = Lvl | R | String, up to 32 chars | Y | Y | Y | Y | n/a |
Size | Array Size. If the tag is not an array tag, it returns the value 0 | R | Integer | Y | Y | Y | Y | n/a |
Index | The index number of an element in an Array. (An Array is any Tag of size greater than 0.) NOTE: The syntax must be:
Tag[Index]->Index Example: Tag[1]->Index = 1 | R | Integer | Y | Y | Y | Y | n/a |
Description | The description of the tag, configured in the Tags datasheet. | R | String | Y | Y | Y | Y | Y |
Quality | Tag quality (192=GOOD; 0=BAD). The project updates this field every time the tag receives the result of an expression or a value from a communication task (such as driver or OPC).
If the expression is invalid (such as, division by zero) or if there is a reading communication error associated with the tag, then the project sets the quality to BAD. | R | Integer | Y | Y | Y | Y | N |
TimeStamp | Time and date when the value of the tag last changed. | R | String | Y | Y | Y | Y | N |
Blocked | This property can have two values:
This is useful when you want to dynamically disable all actions associated with a specific tag. Even when a tag is blocked, however, it still counts towards the total number of tags used for licensing purposes. | R/W | Boolean | Y | Y | Y | Y | N |
Unit | A brief description (up to 9 characters) of the Engineering Unit (i.e., the unit of measurement) for the Tag value. For example, Kg, BTU, psi. | R/W | String, up to 9 chars | Y | Y | Y | Y | Y |
Max | The maximum value that can be written to the tag during run time. | R/W | Real | N | Y | Y | N | Y |
Min | The minimum value that can be written to the tag during run time | R/W | Real | N | Y | Y | N | Y |
B0 … B31 | Value (0 or 1) of any of the 32 bits (b0, b1, b2, … b31) of an Integer tag. (B0: LSB B31: MSB) | R/W | Boolean | N | Y | N | N | N |
DisplayValue | A converted Tag value that is only displayed on-screen:
DisplayValue = (Value / UnitDiv) + UnitAdd This is used when the actual Tag values have one Engineering Unit (see Unit above) but need to be displayed on-screen in another Engineering Unit (see DisplayUnit below). For example, Celsius degrees and Farenheit degrees. If user input changes DisplayValue during run time, then the conversion is reversed before the change is actually written to the Tag: Value = (DisplayValue − UnitAdd) * UnitDiv | R/W | Real | N | Y | Y | N | n/a |
DisplayUnit | A brief description (up to 9 characters) of the Engineering Unit for DisplayValue.
NOTE: This property can only be set by using the SetDisplayUnit and SetTagDisplayUnit functions. | R | String, up to 9 chars | N | Y | Y | N | N |
UnitDiv | Number by which the Tag value is divided to get DisplayValue. To perform no division, UnitDiv should be 1.
NOTE: This property can only be set by using the SetDisplayUnit and SetTagDisplayUnit functions. | R | Real | N | Y | Y | N | N |
UnitAdd | Number added to the Tag value to get DisplayValue. To perform no addition, UnitAdd should be 0.
NOTE: This property can only be set by using the SetDisplayUnit and SetTagDisplayUnit functions. | R | Real | N | Y | Y | N | N |
DisplayMax | The maximum value that can be input to DisplayValue during run time:
DisplayMax = (Max / UnitDiv) + UnitAdd If DisplayMax is changed during run time, then Max is also changed as follows: Max = (DisplayMax − UnitAdd) * UnitDiv | R/W | Real | N | Y | Y | N | N |
DisplayMin | The minimum value that can be input to DisplayValue during run time:
DisplayMin = (Min / UnitDiv) + UnitAdd If DisplayMin is changed during run time, then Min is also changed as follows: Min = (DisplayMin − UnitAdd) * UnitDiv | R/W | Real | N | Y | Y | N | N |
HiHiLimit | Limit value for the HiHi alarm. | R/W | Real | N | Y | Y | N | Y |
HiLimit | Limit value for the Hi alarm. | R/W | Real | N | Y | Y | N | Y |
LoLimit | Limit value for the Lo alarm. | R/W | Real | N | Y | Y | N | Y |
LoLoLimit | Limit value for the LoLo alarm. | R/W | Real | N | Y | Y | N | Y |
RateLimit | Limit value for the Rate alarm. | R/W | Real | N | Y | Y | N | Y |
DevSetpoint | Setpoint value for Deviation alarms. | R/W | Real | N | Y | Y | N | n/a |
DevPLimit | Limit value for the Deviation+ alarm. | R/W | Real | N | Y | Y | N | Y |
DevMLimit | Limit value for the Deviation- alarm. | R/W | Real | N | Y | Y | N | Y |
HiHi | If 0, the HiHi alarm is not active. If 1, the HiHi alarm is active. | R | Boolean | Y | Y | Y | N | n/a |
Hi | If 0, the Hi alarm is not active. If 1, the Hi alarm is active. | R | Boolean | Y | Y | Y | N | n/a |
Lo | If 0, the Lo alarm is not active. If 1, the Lo alarm is active. | R | Boolean | Y | Y | Y | N | n/a |
LoLo | If 0, the LoLo alarm is not active. If 1, the LoLo alarm is active. | R | Boolean | Y | Y | Y | N | n/a |
Rate | If 0, the Rate alarm is not active. If 1, the Rate alarm is active. | R | Boolean | Y | Y | Y | N | n/a |
DevP | If 0, the Deviation+ alarm is not active. If 1, the DevP alarm is active. | R | Boolean | N | Y | Y | N | n/a |
DevM | If 0, the Deviation- alarm is not active. If 1, the DevM alarm is active. | R | Boolean | N | Y | Y | N | n/a |
AlrStatus | Integer value with the status of the current active alarms associated to the tag. Each bit of this integer value indicates a specific status:
Examples: If Tag‑>AlrStatus returns the value 2, it means that “Hi” alarm is active. If it returns the value 3, it means that the “HiHi” and the “Hi” alarm are active simultaneously. If this property returns the value 0, it means that there are no active alarms associated to this tag. For Boolean tags, only the values 1 (bit 1), 4 (bit 2) or 16 (bit 4) can be returned. | R | Integer | Y | Y | Y | N | N |
Ack | This property can have two values:
This works as a global acknowledge for the tag and goes to 0 only when all alarms for the tag have been acknowledged. | R | Boolean | Y | Y | Y | N | N |
UnAck | This property can have two values:
If you manually set this value to 1, then the active alarms (if any) are acknowledged. The value of this property is always the opposite of the Ack property. | R/W | Boolean | Y | Y | Y | N | N |
AlrAckValue | Text associated with the Acknowledged state of a Boolean tag. This text is displayed in the Value column of an Alarm/Event Control.
You can also edit this text in the Tag Properties dialog (Alarms – Bool Type). | R/W | String, up to 32 chars | Y | N | N | N | Y |
AlrOffValue | Text associated with the Normalized state of a Boolean tag. This text is displayed in the Value column of an Alarm/Event Control.
You can also edit this text in the Tag Properties dialog (Alarms – Bool Type). | R/W | String, up to 32 chars | Y | N | N | N | Y |
AlrOnValue | Text associated with the Active state of a Boolean tag. This text is displayed in the Value column of an Alarm/Event Control.
You can also edit this text in the Tag Properties dialog (Alarms – Bool Type). | R/W | String, up to 32 chars | Y | N | N | N | Y |
AlrDisable | This property can have two values:
| R/W | Boolean | Y | Y | Y | N | N |
- If a property is marked “n/a” with regards to being retentive, it’s because the property is inherent in the tag definition (e.g., Name, Size) or the value of the property is continuously derived during run time (e.g., alarm activation, DisplayValue). To enable retention for a tag, select the Retentive Parameters option in the Tag Properties dialog.
- If the project attempts to write a value outside of the range specified in the Min and Max properties, the Tags Database will not accept the new value and a warning message is written in the Output window. If both Min and Max properties are configured with the value 0 (zero), it means that any value applied to the tag type will can be written to the tag.
- You cannot use tag properties (such as Bit fields) to configure Alarm or Trend worksheets.
- Although you can apply tag properties to System Tags, those properties will not persist when you download your project to a CE device.