Multistate table details
- Last UpdatedApr 24, 2025
- 6 minute read
A multistate record is used to represent up to 256 input state/text associated with the digital device and up to eight configured output bits. You can expand the configured output bits from eight (up) to 256. The multistate table contains the following internal fields:
|
Internal Field Name |
Data Type |
Description |
|---|---|---|
|
alertTypeStat.annunciated_page |
oas_boolean_t |
Allow both the Field Operator and Controller to acknowledge the alarm? |
|
alertTypeStat.paged_retry |
int |
The number of retry or reminder messages that will be sent until the Field Operator acknowledges the alarm or the Paging Park Time expires. |
|
alertTypeStat.paged_parktime |
unsigned int |
The amount of time (in minutes) that the Field Operator has to respond to the alarm. |
|
alertTypeStat.abnsEnable |
oas_boolean_t |
Generate an email message in the event of an Abnormal State alarm? |
|
alertTypeStat.adhocMsg |
str107 |
An additional message to add to the system-generated email message. |
|
alertTypeStat.almType |
oas_boolean_t |
Are alarms associated with this point AVEVA Enterprise SCADA-related alarms? |
|
alertTypeStat.cosEnable |
oas_boolean_t |
Generate an email message in the event of a change of state? |
|
alertTypeStat.enable |
oas_boolean_t |
Enable the record for email alarm notification? |
|
alertTypeStat.rtnEnable |
oas_boolean_t |
Generate an email message in the event of a Return to Normal alarm? |
|
almsup |
oas_boolean_t |
Is alarm suppression turned off or on? |
|
assetId.assetIdComment |
string32 |
A string used for customer-specific purposes. |
|
assetId.assetIdDesc |
string32 |
A string used for customer-specific purposes. |
|
assetId.assetIdLoc |
string32 |
A string that uniquely identifies the device for asset-management purposes. |
|
bitFormat.inhibits.bitDefn.inputBitPattern[0-7].bitNumber |
unsigned char |
Bit number from 0 to 7 for bit pattern data type. |
|
bitFormat.inhibits.bitDefn.inputBitPattern[0-7].inRemStatusW ord |
oas_boolean_t |
This is the bit in the remote status word — for bit pattern data type. |
|
bitFormat.inhibits.bitDefn.inputBitPattern[0-7].normallyOpen |
oas_boolean_t |
Normally open — for bit pattern data type. If true, this bit is inverted after it is read from the remote. |
|
bitFormat.inbits.bitW idth |
unsigned char |
Number of input bits — for bit pattern data type. |
|
bitFormat.outbits.bitPatternCmd[0-7].cmdState |
coil_state |
State to command — for bit pattern data type. |
|
bitFormat.outbits.bitPatternCmd[0-7].cmdTimeout |
unsigned short |
Timeout in msec — for bit pattern data type. |
|
bitFormat.outbits.bitPatternCmd[0-7].coilType |
coil_control |
Type of coil control — for bit pattern data type. |
|
cmd_time |
internaltime |
Last time command was issued. |
|
cmdedOffset |
unsigned int |
Commanded-to status — the offset into the output base message. |
|
cmdedRaw |
unsigned int |
Commanded-to status — the raw value. |
|
cmdedText |
unsigned char |
Commanded-to status — the message text. |
|
cmdfail |
oas_boolean_t |
Did the last command fail? |
|
commandOrder |
int |
The order in which the system issues a command against the point if it belongs to a multiControlGroup record. |
|
controlGroup |
Controlgroupslot |
The name of the associated multiControlGroup record. |
|
controlscan.external |
IOspecString |
The control scan external input/output specifier. |
|
controlscan.freq |
unsigned int |
The delay in seconds between each control scan. |
|
controlscan.interval |
unsigned int |
The control scan duration. |
|
dataFormatType |
dataFormatTypeEnum |
Remote specific data format type (for example, BitFormat or Enumeration Format). |
|
dataset |
doas_dset_slot |
Associated dataset. |
|
description |
description |
Description of the multistate record, up to 47 characters in length. |
|
devtmr |
unsigned short |
Timeout in seconds for relay command failure. |
|
displayOrder |
int |
This field is used for display purposes. It would only be used if the nomination information were being represented on a station template object. It is only relevant to systems that have this optional software component. Unless you specifically use the Display Framework, the value is not used. The default value is 0. |
|
dsysControl |
unsigned char |
This point is controllable from local system. |
|
enumFormat.inRegi sterType |
analogtype |
Input register integer type — for enumeration format data type. |
|
enumFormat.outRe gisterType |
analogtype |
Output register integer type — for enumeration format data type. |
|
flag |
flags |
For information on the flag structure, see Flag structure details. |
|
group |
groupslot |
Group of responsibility. |
|
hasInput |
oas_boolean_t |
Are there any feedback bits? |
|
hasOutput |
oas_boolean_t |
Should commands be enabled? |
|
ignore_cmd_feedback |
oas_boolean_t |
When selected, no command warning tags will be placed on the point and no command timeout alarms will generated after the command is successfully sent to the remote device. The settings for fields devtmr, trtmr, and lgcmsc will be ignored. |
|
inAbnormalState |
oas_boolean_t |
Is the point in an abnormal state? |
|
inIOSpecs.IOSpecStructure[0-7].iospec |
pntIOSpec |
The array of input register specifications. |
|
inputCurOffset |
unsigned int |
Current state — the input base message offset. |
|
inputCurRaw |
unsigned int |
Current state — the raw value. |
|
inputDataFormatType |
InputDataFormatTypeEnum |
The multistate subtype used for this point. |
|
insFailOffset |
int |
Instrument fail state-the input message offset. |
|
insFailText |
unsigned char |
Instrument fail — the message text. |
|
inStateDefs.inputStateDefn[0-255].isStateAbnormal |
oas_boolean_t |
This field is an array of abnormal state flags indicating that specific states are considered abnormal. |
|
interlock.anaenable |
oas_boolean_t |
Enable the triggering of a Control Interlock when interlock.anastate matches the flag.msgtxt field of interlock.anaslot. |
|
interlock.anaslot |
analogslot |
The name of the analog point whose flag.msgtxt field is used to determine whether or not a Control Interlock is triggered. |
|
interlock.anastate |
msgstring |
The interlock analog state string. |
|
interlock.multistaenable |
oas_boolean_t |
Enable the triggering of a Control Interlock when interlock.multistastate matches the flag.msgtxt field of interlock.multistaslot. |
|
interlock.multistaslot |
multistateslot |
The name of the multistate point whose flag.msgtxt field is used to determine whether or not a Control Interlock is triggered. |
|
interlock.mulstate |
msgstring |
The interlock multistate state string. |
|
interlock.staenable |
oas_boolean_t |
Enable the triggering of a Control Interlock when interlock.stastate matches the flag.msgtxt field of interlock.staslot. |
|
interlock.staslot |
statusslot |
The name of the status point whose flag.msgtxt field is used to determine whether or not a Control Interlock is triggered. |
|
interlock.stastate |
msgstring |
The interlock status state string. |
|
interlock.warn |
oas_boolean_t |
Should Controllers receive a command confirmation dialog box when they attempt to issue a command? |
|
isCriticalPoint |
oas_boolean_t |
Is this a critical point? Note: This field is related to the Critical Alarms feature. Refer to Critical Alarms for more information. |
|
lastKrunchTime |
internaltime |
This field records the last time that the point was "krunched" (that is, the last time that gen* [genrem, gensta, genrat, genmulti, or genana] was run. These routines are run when a point’s current value is changed.) |
|
lgcmsc |
oas_boolean_t |
Is command success logged? |
|
mappingFlag |
unsigned int |
The 32-bit integer value used to map this point to a non-AVEVA Enterprise SCADA system. |
|
maxalmpark |
unsigned int |
The maximum allowable park time for alarms associated with this point. |
|
name |
pntname |
The unique name of this multistate record. |
|
numInputStates |
unsigned short |
Number of input states — automatically filled in when configuring the input base message. |
|
numOutputCmds |
unsigned short |
Number of output commands — automatically filled in when configuring the output base message. |
|
offsetToAccum |
unsigned int |
Input accumulation state — the offset into the input base message. |
|
outBmsg |
messageslot |
Output base status message number. |
|
outIOSpecs.IOSpecStructure[0-7].iospec |
pntIOSpec |
Array of digital outputs to command. |
|
outStateDefs.outputStateDefn[0-7].inputMsgOffse |
unsigned int |
Expected input msg offset from command. |
|
outStateDefs.outputStateDefn[0-7].inputText |
unsigned char |
Virtual text from input message set. |
|
packedMultistateRt |
unsigned char |
Packaged RealTime data for PubSub subscriptions. |
|
pointClass |
configenumslot |
The Point Class category contains multiple configuration enumerations used for categorical configuration of points. |
|
pointSubClass |
configenumslot |
Point Sub Class is a configurable enumeration category used for categorical configurations, but you cannot use this for configurable alarms and events. |
|
pointtype |
pointtype_enum |
Type of point (for example, telemetered or calculated). |
|
ptnum |
unsigned char |
Slot number in database. |
|
rtu |
remoteslot |
Remote number or name. |
|
run.day.current |
double |
Current daily runtime total. |
|
run.day.previous |
double |
Previous daily runtime total. |
|
run.doit |
oas_boolean_t |
Should runtime totals be enabled? |
|
run.hour.current |
double |
Current hourly runtime total. |
|
run.hour.previous |
double |
Previous daily runtime total. |
|
run.lastRollupTime |
internaltime |
Time of last rollup. |
|
run.month.current |
double |
Current monthly runtime total. |
|
run.month.previous |
double |
Previous monthly runtime total. |
|
run.poltime |
internaltime |
Time of last processing. |
|
run.shift.current |
double |
Current shift runtime total. |
|
run.shift.previous |
double |
Previous shift runtime total. |
|
run.total.current |
double |
Current runtime total. |
|
run.total.previous |
double |
Previous runtime total. |
|
rve.alarmOnRuleFail |
oas_boolean_t |
Enables the generation of alarms if a rule in the rule set is violated. |
|
rve.eventOnRuleFail |
oas_boolean_t |
Enables the generation of events if a rule in the rule set is violated. |
|
rve.ruleEnabled |
oas_boolean_t |
Enables checking of the selected rule set when a point is commanded. |
|
rve.ruleFailSeverity |
sev_enum |
The severity associated with alarms generated by Rules Validation Engine (RVE). The default severity is "high". |
|
rve.ruleSet |
rverulesetslot |
The name of the associated rveruleset record. |
|
rve.timeout |
int |
The number of milliseconds to allow RVE rule checking to complete. |
|
shortDesc |
stn_str32 |
A brief description of the record. |
|
soePoint |
oas_boolean_t |
Should all events and alarms be recorded as SOE-type (sequence- of-events-type) events? |
|
stateToAccum |
unsigned char |
Text of the associated state message for runtime accumulation. |
|
station |
stationslot |
The name of the associated station record. |
|
sustainCOSalarm |
oas_boolean_t |
Should change-of-state (COS) alarms remain in almsum after Acknowledgement (ACK). |
|
timestamp |
internaltime |
Time of last input data processing. |
|
timout |
Secondtimerslot |
Secondtimer slot number that is associated with this point for command failure detection. |
|
travslot |
slot |
Timer# for travel failure detection. |
|
trtmr |
unsigned short |
Timeout in seconds for failure to change state (that is, travel), after being commanded to change to a different state. |
|
uncmdedCOS |
oas_boolean_t |
Was the last krunch an uncommanded COS? |
|
useDeviceDQ |
oas_boolean_t |
When enabled, downstream krunch processes will base freshness on the data quality of the point when krunching the current value of the point. |
|
value_override |
msgstring |
Strings written to this field must match one of the STATE values in the message set for the point. If a matching state is found, the corresponding state integer value will be processed into the inputCurRaw field. The maximum string length is 15 characters. If the string length exceeds 15 characters, it will be rejected. If a point is configured to be able to send commands (for example, the output is enabled), the string will be rejected. |
|
wellunit |
pntname |
This field is used by Display Framework, a separately acquired product. |