DataGroupElement
The DataGroupElement element defines a single data group element. The unique identifier of a DataGroupElement element is called the data group element ID (DEID). The DEID is defined by protocol or user. The DEID can be a maximum of 10 characters. Valid characters are A-Z, 0-9, dash (-), and underscore (_). A DEID cannot contain spaces and must start with an alphabetical character or an underscore (_). DEIDs are case sensitive, but DEIDs that differ only by case are not legal. For example, the DEIDs DIFFp and diffP are not allowed to exist within the same data group. RefOpt can never be used as a DEID tag. Most DEIDs are defined by specific protocols. However, some templates (for example, Modbus) allow the addition of user-defined data group elements.
This element is:
- Not case sensitive
- Required in every CygNet device template file
- Used 1 or more times per CygNet data group
To learn about how this element relates to other elements in a CygNet device template file, see Device Template File Hierarchy.
To learn about powerful ways to convert data from a data source into a different format, see Conversion Methods and Reference Methods.
Example
|
<ScBlockSet niceName="Scanner Block Setup" canSend="true" uccSend="true" ordLabel="Device" baseOrd="1" maxCnt="8"> <dgElements byteOrder="bigEndian" secLev="4" type="i2"> <ControlFlg desc="Control Flag" regDef="1:00" /> <DevNum desc="Device Number" regDef="1:01" /> <StrtReg desc="Start Register" regDef="1:02" /> <Quant desc="Quantity" regDef="1:03" /> <DbaseIdx desc="Dbase Index" regDef="1:04" "/> </dgElements> <modbusReadBlocks regByteLen="2"> <block1 regOff="-40001" regNum="41184" ordIncrement="05" regCnt="05" funcCode="3"/> </modbusReadBlocks> <modbusWriteBlocks regByteLen="2"> <block1 regOff="-40001" regNum="41184" ordIncrement="05" regCnt="05" funcCode="16"/> </modbusWriteBlocks> </ScBlockSet> |
Attributes
The following table lists and describes attributes generally applicable to this element. However, not all of the attributes listed here are applicable to all EIEs. Additionally, some attributes are required for use in every device template file of a certain EIE, but others may be used on a case-by-case or device-by-device basis, depending on your specific needs. All attributes in templates are case sensitive; but the case sensitivity of attribute values is based on context.
Note: Occasionally, device template files for different EIEs use attributes of the same name that do different things. Efforts are made in this document to highlight cases where an attribute by one name does different things in different EIEs.
Browse by letter: [A] [B] [C] [D] [E] [F] [H] [I] [L] [M] [N] [O] [P] [R] [S] [T] [U] [W]
| Attribute | Description |
|---|---|
|
arrRegOff specifies the number of registers to increment in order to get consecutive values for a data group element used in an array. For example, if the regNum for array(0) = x, the regNum for array(1) = x + arrRegOff. Value:
|
|
|
arrSize specifies the number of elements in a single array. Typically each element refers to a register. So an arrSize of 20 means 20 elements in a single array or 20 registers in a single array. You can also think of such registers as rows in a table or instances of data for a single data group element. Value:
|
|
|
baseOrd defines the starting point from which to begin numbering data group ordinals. (Each ordinal is a different instance of a data group.) It may be used in conjunction with maxCnt. baseOrd is required for every data group; it must be defined in either the dataGroups or DataGroup element. Value:
|
|
|
bitShift |
bitShift works with bMsk for legacy and extended (new) references, opSelect reference operation, and EFM mappings to indicate whether or not to shift off the masked low bits. Value:
See also opBitMask and Bit Mask Examples. |
|
bMsk (bit mask) performs a bitwise AND operation on a referenced value when multiple bits are to be affected. bMsk cannot be used in the same element as bPos. To make this attribute meter specific, append _ordn to the attribute. For example, bMsk_ord1. Value:
See also Bit Mask Examples. See also eFMS, eGMR. |
|
|
bPos (bit position) requests the binary value of the bit in the bit position specified. bPos cannot be used in the same element as bMsk. To make this attribute meter specific, append _ordn to the attribute. For example, bPos_ord1. Value:
See also Bit Position Examples. |
|
|
bXorMask (bit XOR mask) performs a bitwise XOR operation on a referenced value when one or more bits are to be affected. bXorMask is used in reference methods. Value:
|
|
|
byteOrder specifies how data group element byte positions for multi-byte data are represented on a field device. Refer to the field device protocol or user manual to find out what format is followed by your field device. Value:
|
|
|
canRecv specifies whether or not data groups can be retrieved from a field device. Value:
|
|
|
canSend |
canSend specifies whether or not data groups can be sent to a field device. Value:
|
|
cvsMask |
cvsMask is a formatting mask that specifies how a value is to be recorded in a UIS by way of point processing. cvsMask is based on the printf function used in the C language. Value:
|
|
cvtF specifies that a conversion method is to be used to convert source data of one format into a different target format. cvtF conversions can vary by EIE type. Value:
See also cvtF Conversion Methods. |
|
|
cvtRef specifies that a special reference conversion method is to be used to convert source data of one format into a different target format for display or use by another element. Value:
See also cvtRef Conversion Method. |
|
|
deidDate references a data group element that provides a source date value. deidDate is used in various time conversions. Value:
See also cvtRef Conversion Method and Reference Methods – Time Formatting Examples. |
|
|
deidDay references a data group element that provides a source day value. deidDay is used in various time conversions. Value:
See cvtRef Conversion Method and Reference Methods – Time Formatting Examples. |
|
|
deidDayOfWeek |
deidDayOfWeek references a data group element that provides a source day of the week value. deidDayOfWeek is used in various time conversions. Value:
See also cvtRef Conversion Method and Reference Methods – Time Formatting Examples. |
|
deidHour references a data group element that provides a source hour value. deidHour is used in various time conversions. Value:
See also cvtRef Conversion Method and Reference Methods – Time Formatting Examples. |
|
|
deidMinute references a data group element that provides a source minute value. deidMinute is used in various time conversions. Value:
See also cvtRef Conversion Method and Reference Methods – Time Formatting Examples. |
|
|
deidMonth references a data group element that provides a source month value. deidMonth is used in various time conversions. Value:
See also cvtRef Conversion Method and Reference Methods – Time Formatting Examples. |
|
|
deidSecond references a data group element that provides a source month value. deidSecond is used in various time conversions. Value:
See also cvtRef Conversion Method and Reference Methods – Time Formatting Examples. |
|
|
deidTime references a data group element that provides a source time value. deidTime is used in various time conversions. Value:
See also cvtRef Conversion Method and Reference Methods – Time Formatting Examples. |
|
|
deidYear references a data group element that provides a source year value. deidYear is used in various time conversions. Value:
See also cvtRef Conversion Method and Reference Methods – Time Formatting Examples. |
|
|
desc is the user-defined description of a data group element, typically used as a name or title. Depending on implementation, sometimes this attribute's value appears in remote device editors and sometimes it does not. Value
This attribute is not required by a data group element. But if it is used, it cannot be blank. |
|
|
devRevDeid |
devRevDeid stores the value of the specified DEID to the Revision field in the DDS. Value:
|
|
divZeroAction is used in combination with the opDiv and opDivId reference operations. It specifies what happens if a division operation attempts to divide by zero. Value:
See also Reference Operations and Reference Methods – Arithmetic Examples. |
|
|
divZeroSentinel is used in combination with the opDiv and opDivId reference operations. It is only applicable if returnSentinel is used as the value for divZeroAction. It specifies what happens if a division operation attempts to divide by zero. Value:
See also Reference Operations and Reference Methods – Arithmetic Examples. |
|
|
dMask is a display mask that specifies how a value is to be displayed in remote device editors. dMask is based on the printf function used in the C language. Value:
|
|
|
elemAddr defines an element address as it has been defined on an Allen-Bradley SLC field device. In a data group element, the elemAddr attribute enables you to specify the components needed to access virtually any data item on an associated SLC-503/4/5 controller. The syntax of the elemAddr attribute value follows the SLC standard, including the various Allen-Bradley SLC-503/4/5 delimiters. Value:
See also Creating a SLC-503/4/5 Custom Data Group. |
|
|
externalId |
externalId provides a hook for an external user. Value:
|
|
fldAccess |
fldAccess defines whether an element is read-only or read/write in Emerson ROC or Emerson ROCPlus device template files. Value:
|
|
forceSave specifies whether or not to save a data group’s transactions to the DDS whenever a data group request is issued by a UIS command. (Data group transactions are created for all requests issued directly from device editors in CygNet Explorer.) There are cases where the device driver forces every transaction of a particular data group to be saved to the DDS, regardless of the use of forceSave. For example, some device restrictions allow data to be retrieved only once, and FMS data groups always save transactions. If this attribute is not defined in a given data group, that data group uses its default save behavior, which varies by data group. Value:
|
|
|
format converts source data group element data into a human-readable format in a reference method conversion in a destination data group element. Value:
See also Reference Methods. |
|
|
fromSupportDg |
fromSupportDg specifies that a data group element derives its data from one or more support data groups. It is used when a data group element has one or more source child elements, typically within a composite data group. Value:
|
|
hidden specifies that a data group element does or does not appear in a remote device data group editor. Value:
|
|
|
index specifies the position in an array in OPC EIE device template files. Value
|
|
|
isArray specifies that a data group element is an array item in OPC EIE device template files. Value:
|
|
|
isMatrikon |
isMatrikon specifies a data group element where device data (including dynagraph cards) is retrieved via the OPC Lufkin EIE or OPC Weatherford EIE, utilizing a Matrikon SCADA Modbus OPC server. Value:
|
|
isRef specifies that a data group element is an advanced reference method. Value:
See also Reference Methods. |
|
|
item |
item is the numeric identifier that represents the II in the PPSSII Pointer (Process.Section.Item) scheme used by Eagle field devices. Value
|
|
itemId is the item identifier as defined on the OPC server. To make this attribute data group specific, append _ordn to the attribute. For example, itemID_ord1="". |
|
|
len specifies the number of bytes in a data group element or register. Value:
Note: The following applies to the Allen Bradley CIP EIE. If the data type is a string, the string length is defined by the len attribute. If the len attribute is missing, the length is assumed to be 82. The maximum allowed length for read-only strings is 472. For writeable strings, the maximum allowed length is 470 minus the length of the tagname attribute expressed as an even number of bytes. If the result is not divisible by 4, reduce it until it is. For example, if the tagname is 11 bytes long, the maximum string length is 470 – 12 = 458 (11 bytes expressed as an even number is 12). 458 is not divisible by 4, so reduce it to 456 (the first number lower than 458 that is divisible by 4). The string length is always validated, but the maximum value allowed depends on the IO Service selected. A warning will appear if a number greater that the maximum allowable string is entered in the Data Group Element Definition dialog box. |
|
|
lowByte specifies whether or not character data in a two-byte string is in the low byte or high byte. Value:
|
|
|
mapVal maps an enumeration table keyword to an enumeration table of the same name. The referenced table can be scoped to a data group element, scoped to a device template file (using an enums table), or be one of several global tables. First the data group element in which the mapVal attribute is defined is searched for a table local to it. If no such table is found, a wider search occurs in which the device template file and the global tables are searched for a corresponding enumeration table of the same name. mapVal can be used in both a basic reference method and an advanced reference method in similar ways. In a basic reference method, mapVal must be defined in-line along with a ref attribute. In an advanced reference method, if mapVal is used, it must be defined in-line along with a refOp attribute set to opMapVal. If the mapVal attribute references an enumeration table in a device template file, a drop-down menu containing the defined enum values will display when editing the specified data group element value on the data group's View Data dialog box. The enumeration values must be unique for the values to display in a drop-down menu. (In an eFMS or eGMR element, mapVal is used in combination with the deid attribute, which maps the eFMS or eGMR element to a value.) Value:
See also enums and Enumeration Mapping Examples. |
|
|
maxCnt |
maxCnt defines the maximum number of instances (i.e., ordinals) of a data group allowed. Best practice recommends that you always define the maxCnt attribute. When used, it is used in conjunction with baseOrd. Data group instances start at the baseOrd value and increment upwards until they reach the limit set by maxCnt. If you do not use maxCnt, an unlimited number of ordinals is implied. Value:
|
|
minUProgVer |
minUProgVer specifies the minimum user program version supported for the specified TLP of the DEID. This attribute is used in conjunction with the UserProgramToPointType definition in the device template file that defines the relationship between a user program ID and a point type. If the user program version information has not been successfully retrieved from the field device, any TLP using the minUProgVer attribute will be excluded. To retrieve the user program version information, poll the "ROC Config" (RtuConfig) data group or the "User Program Status" (UserPgStat) data group. |
|
missingValueSentinel |
missingValueSentinel enables you to specify an unconsidered value (that is, "missing") for the data group in which the attribute is defined. For example, you might need to define an fmsAlarm data group that passes an alarm to CygNet Measurement, but does not consider the value associated with the alarm. Usually such a value is used as a comparison value to compare the value in alarm state with a previous value. But not all field devices offer this functionality. Realflo, for example, returns a zero (0), which has no connection to the actual current value in alarm. In such a case, you'd define Value
|
|
nullPad enables you to specify that a fixed-length string value is to be terminated with the applicable number of null characters. Value:
|
|
|
off indicates the byte offset of the value in the event record from the field device. Value
|
|
|
ordIncrement |
ordIncrement specifies how many registers make up an increment of registers. It is always used in combination with regNum, which specifies a starting register number from which to increment. These two attributes are used to specify one or more groups of registers that correspond to data group ordinals. ordIncrement always depends on regNum, but regNum does not depend on ordIncrement. Optionally, use regNum_ordn in place of ordIncrement + regNum. Value:
|
|
paramID defines a device-specific parameter ID. To make this attribute data group specific, append _ordn to the attribute. For example, Currently implemented for use with eProdRPC devices, where it specifies a data location value. Value:
|
|
|
pathId |
pathId provides a path to items in the payload file. This value is user defined and unique to the IoT EIE device template. Value:
|
|
processType |
processType is the process type numeric identifier assigned by Eagle field devices. Value
|
|
ptType |
ptType specifies the point type. Value
|
|
rangeHigh specifies that an input value must be less than or equal to the value assigned to this attribute. This attribute affects user input in a generic grid dialog box. If a user attempts to enter a value for a given data group element and that value is out of range, an error message appears. Value:
|
|
|
rangeLow |
rangeLow specifies that an input value must be greater than or equal to the value assigned to this attribute. This attribute affects user input in a generic grid dialog box. If a user attempts to enter a value for a given data group element and that value is out of range, an error message appears. Value:
|
|
readOnly |
|
|
recordItems is used by OPC devices when constructing an array of records from a single OPC array item. It indicates the number of items in an OPC array that constitute a record. Value:
|
|
|
ref references another data group element. The referenced data group element supplies data for the referencing data group element. It is required in basic reference methods. If ref is used in a basic reference method, it must be paired with a reference operation in order to be considered valid. Do not confuse the ref element with the ref attribute. Value:
See also Reference Methods. |
|
|
regDef defines both the read/write block and the register offset for an element in an ordinalized data group. regDef cannot be used in the same element as regNum or structOff. Value:
|
|
|
regNum defines a register number. regNum cannot be used in the same element as regDef or structOff. For information about the Totalflow EIE use of this attribute, see Totalflow EIE – Register Data Group. Value:
|
|
|
scaleFactor defines a constant multiplier. Multiplication is powered by some other mechanism, like the reference operation opScaleFactor or the cvtF conversion method Scale. scaleFactor cannot be used in the same element as scaleFactorId. It also cannot be used in the same element as any two-point scaling attribute, like scaleLoRaw. Value:
|
|
|
scaleFactorId multiplies a value by a referenced value. The original, non-scaled input value must be preserved in a different data group element in the same data group. scaleFactorId is used in linear scaling in reference methods. scaleFactorId cannot be used in the same element as scaleFactor. It also cannot be used in the same element as any two-point scaling attribute, like scaleLoRaw. Value:
|
|
|
scaleHiEng defines a high engineering value in a two-point engineering scale. The original, non-scaled input value must be preserved in a different data group element in the same data group. scaleHiEng is used in linear scaling in reference methods. scaleHiEng cannot be used in the same element as scaleHiEngId. It also cannot be used in the same element as any non-two-point scaling attribute, like scaleFactor or scaleOffset. Value:
|
|
|
scaleHiEngId defines a high engineering value in a two-point engineering scale. The original, non-scaled input value must be preserved in a different data group element in the same data group. scaleHiEngId is used in linear scaling in reference methods. scaleHiEngId cannot be used in the same element as scaleHiEng. It also cannot be used in the same element as any non-two-point scaling attribute, like scaleFactor or scaleOffset. Value:
|
|
|
scaleHiRaw defines a high raw value in a two-point raw scale. The original, non-scaled input value must be preserved in a different data group element in the same data group. scaleHiRaw is used in linear scaling in reference methods. scaleHiRaw cannot be used in the same element as scaleHiRawId. It also cannot be used in the same element as any non-two-point scaling attribute, like scaleFactor or scaleOffset. Value:
|
|
|
scaleHiRawId defines a high raw value in a two-point raw scale. The original, non-scaled input value must be preserved in a different data group element in the same data group. scaleHiRawId is used in linear scaling in reference methods. scaleHiRawId cannot be used in the same element as scaleHiRaw. It also cannot be used in the same element as any non-two-point scaling attribute, like scaleFactor or scaleOffset. Value:
|
|
|
scaleLoEng defines a low engineering value in a two-point engineering scale. The original, non-scaled input value must be preserved in a different data group element in the same data group. scaleLoEng is used in linear scaling in reference methods. scaleLoEng cannot be used in the same element as scaleLoEngId. It also cannot be used in the same element as any non-two-point scaling attribute, like scaleFactor or scaleOffset. Value:
|
|
|
scaleLoEngId defines a low engineering value in a two-point engineering scale. The original, non-scaled input value must be preserved in a different data group element in the same data group. scaleLoEngId is used in linear scaling in reference methods. scaleLoEngId cannot be used in the same element as scaleLoEng. It also cannot be used in the same element as any non-two-point scaling attribute, like scaleFactor or scaleOffset. Value:
|
|
|
scaleLoRaw defines a low raw value in a two-point raw scale. The original, non-scaled input value must be preserved in a different data group element in the same data group. scaleLoRaw is used in linear scaling in reference methods. scaleLoRaw cannot be used in the same element as scaleLoRawId. It also cannot be used in the same element as any non-two-point scaling attribute, like scaleFactor or scaleOffset. Value:
|
|
|
scaleLoRawId defines a low raw value in a two-point raw scale. The original, non-scaled input value must be preserved in a different data group element in the same data group. scaleLoRawId is used in linear scaling in reference methods. scaleLoRawId cannot be used in the same element as scaleLoRaw. It also cannot be used in the same element as any non-two-point scaling attribute, like scaleFactor or scaleOffset. Value:
|
|
|
scaleOffset adds an input value to a constant value. The original, non-scaled input value must be preserved in a different data group element, typically in the same data group. scaleOffset cannot be used in the same element as scaleOffsetId. It also cannot be used in the same element as any two-point scaling attribute, like scaleLoRaw. Value:
|
|
|
scaleOffsetId adds an input value to a referenced value. The original, non-scaled input value must be preserved in a different data group element in the same data group. scaleOffsetId is used in linear scaling in reference methods. scaleOffsetId cannot be used in the same element as scaleOffset. It also cannot be used in the same element as any two-point scaling attribute, like scaleLoRaw. Value:
|
|
|
secLev defines the security level applicable to a data group's elements. This security can be applied to the data group elements as a group. Value:
See also Custom Data Group Security. |
|
|
secondsSince |
secondsSince is only applicable in a TimeTLocalOffset conversion method. It specifies the offset from January 1, 1970 from which to append a value returned from deidTime. Value:
|
|
section |
section is the numeric identifier that represents the SS in the PPSSII Pointer (Process.Section.Item) scheme used by Eagle field devices. Value
|
|
sourceDg |
sourceDg specifies the source data group from which a data group element or source element derives its data. The referenced source data group must be defined in a supportDg element in the same composite data group in which sourceDg is used. Value:
|
|
sourceDeid specifies the source data group element from which a data group element or source element derives its data. When used in a composite data group, sourceDeid is used in combination with the sourceDg attribute. The referenced source data group element must be part of a support data group as referenced in a supportDg element in the same composite data group in which sourceDeid is used. Value:
|
|
|
sourceType defines the source data type of a value; it can be inherited from a parent element. It can be used in cases where a source data type is converted to a destination data type. When using this attribute in a type conversion, test that the source data type and the destination data type are complementary and that value precision is not negatively affected. Value:
See also type. |
|
|
spacePad enables you to specify that a fixed-length string value is to be terminated with the applicable number of space characters. Value:
|
|
|
strFormat |
strFormat is only applicable in a TimeString conversion method. It specifies the format of the string representation to be sent. For example, strFormat="%m/%d/%y %H:%M:%S" would send a value to be interpreted like 01/30/07 10:22:00. It is only required if the time can be sent to the device. Value:
|
|
structOff defines the block and byte offset combination used to define data group elements that are derived from a structure. As implemented for AutoCom beam devices, this attribute only makes sense when an applicable block has been defined that includes the following attributes: len, regCnt, regNum, and type. structOff cannot be used in the same element as regNum or regDef. Value:
|
|
|
tagname defines a user-defined tag name as it has been defined in an Allen-Bradley controller. Tag names are the primary mapping element between CygNet SCADA data groups and Logix5000 data items. A tag is merely the name portion of a name-value pair that represents the output of an Allen-Bradley function. A CygNet SCADA device template file uses the XML element tagname to correlate a CygNet SCADA data point with an Allen-Bradley controller tag. Value:
See also Creating a Logix5000 Custom Data Group. |
|
|
tlpType |
|
|
type defines the appropriate data type for one or more DataGroupElement elements; it can be inherited from a parent element. Value:
See also sourceType. |
|
|
uccRecv specifies whether or not data groups can be retrieved from a field device by means of a UIS command. Value:
|
|
|
uccSend |
uccSend specifies whether or not data groups can be sent to a field device by means of a UIS command. Value:
|
|
udc |
udc specifies the uniform data code (UDC) used to map to a data group element. Value:
See also Uniform Data Codes. |
|
units defines the unit type by which a value is identified in the DDS. The unit type assigned to a value in the DDS affects how the value is treated if the value is processed as a CygNet point in the PNT. For example, a value in the DDS using units="feet" is converted to meters in the PNT if the primary unit for the corresponding point is m (meter). If a units attribute is used in a basic reference method, it might perform a conversion on the source value. Make sure that the source value and the destination value are the same or complementary. If a units attribute is used in an advanced reference method, it might override desired units. Use the opUnitConversion reference operator and its supporting attributes srcUnits and destUnits. Value:
|
|
|
unitsCat identifies the name of a category of units associated with the data group element. It is used for devices that have configurable units. For example, unitsCat="energy" means that the units for this data group element are defined by the energy category. Value:
|
|
|
unitsCatValue |
unitsCatValue indicates that the value of this data group element selects which units to use for the category identified by this attribute. It is used only with the data group that has dgCat="cfgUnitSets" for devices that have configurable units. For example, unitsCatValue="staticPresIn" means that the value of this data group element selects which units to use for all static pressure inputs. Value:
|
|
unitSet |
unitSet specifies whether or not a field device can categorize units by set. It is used in a dgCat="cfgUnitSets" data group. Value:
See also unitSetDefinitions. |
|
units |
units defines the unit type by which a value is identified in the DDS. The unit type assigned to a value in the DDS affects how the value is treated if the value is processed as a CygNet point in the PNT. For example, a value in the DDS using units="feet" is converted to meters in the PNT if the primary unit for the corresponding point is m (meter). If a units attribute is used in a basic reference method, it might perform a conversion on the source value. Make sure that the source value and the destination value are the same or complementary. If a units attribute is used in an advanced reference method, it might override desired units. Use the opUnitConversion reference operator and its supporting attributes srcUnits and destUnits. Value:
|
|
unitSetName |
unitSetName identifies the name of the unit set associated with the data group element. It is in conjunction with unitsCat and unitsCatValue for devices that have multiple, named configurable unit sets. For example, unitSetName="input" unitCat="energy" means that the units for this data group element are defined by the energy category within the "input" unit set. Value
|
|
unitSetNameValue |
unitSetNameValue indicates that the value of this data group element selects which unit set to use for this named set. It is used only with the data group that has dgCat="cfgUnitSets" for devices that have multiple, named configurable unit sets. For example, unitSetName="input" means that the value of this data group element selects which unit set from the unitSetDefinitions section of the template file to use for the "input" unit set. Value
|
|
wordSwap reverses the order of the words in a 4-byte item or 8-byte item without reversing the bytes in each word.
|


