ResourceIDEqData

The
ResourceIDEqData
item returns the tag status information for tags associated with the equipment phase, and state machine information to indicate the current status of the equipment phase. A setting in the
batchsvr.ini
file controls whether data collection disables, enables without deviation limits, or enables with deviation limits supported in the format of the returned
ResourceIDEqData
. The setting
EqDataItemFormat
is found in the CLIENT_MGR_DDE section of the
batchsvr.ini
file.
This table shows the input and output formats for this item.
batchsvr.ini
Section:
CLIENT_MGR_DDE
where:
Setting Name
Value
Meaning
EqDataItemFormat
0 (zero)
Data collection for ResourceIDEqData is disabled. The item is not supported.
EqDataItemFormat
1
Data collection for ResourceIDEqData is enabled. Deviation Limits are not supported.
(Default: EqDataItemFormat=1)
EqDataItemFormat
2
Data collection for ResourceIDEqData is enabled. Deviation Limits are supported.
EqDataItemFormat
Setting does not exist in the ini
Data collection for ResourceIDEqData is disabled. The item is not supported.
EqDataItemFormat
Any other value
Data collection for ResourceIDEqData is disabled. The item is not supported.
Input Format
Request:
ResourceIDEqData
ResourceID
is
ASCII - String, the
unique ID corresponding to a specific equipment phase.
Output Format
The ResourceIDEqData item returns in this format:
<
EqData
>
is
<EqModName>
\crlf
<PhaseName>
\crlf
<StateTag>
\crlf
<CmdTag>
\crlf
<FailTag>
\crlf
<OwnTag>
\crlf
<ReqTag>
\crlf
<PauseTag>
\crlf
<PausedTag>
\crlf
<SnglStepTag>
\crlf
<StepIdxTag>
\crlf
<UnitTag>
\crlf
<ParmList>
\crlf
<ParmLimitList>
\crlf
<RptList>
\crlf
<RptLimitList>
\crlf
<ReqList>
\crlf
<ConnFsm>
\crlf
<CmdFsm>
\crlf
<ReqFsm>
\crlf
where:
Field Name
Format
Description
<EqModName>
ASCII - String
The name of the equipment phase.
<PhaseName>
ASCII - String
The name of the recipe phase the equipment phase can execute.
where:
<StateTag>
is
<TagInfo>
<CmdTag>
is
<TagInfo>
<FailTag>
is
<TagInfo>
<OwnTag>
is
<TagInfo>
<ReqTag>
is
<TagInfo>
<PauseTag>
is
<TagInfo>
<PausedTag>
is
<TagInfo>
<
SnglStepTag
>
is
<TagInfo>
<StepIdxTag>
is
<TagInfo>
<UnitTag>
is
<TagInfo>
<ParmList>
is
<NullList>
|
<PTagList>
<PTagList>
is
<TagInfo>
|
<TagInfo>
\t
<PTagList>
<ParmLimitList>
is
<NullList>
|
<LimitTagList>
<LimitTagList>
is
<MethodTag>
\t
<NormPolTag><MethodTag>
\t
<NormPolTag>
\t
<LoLtTag>
\t
<HiLtTag>
\t
<HLPolTag>
\t
<LoLoLtTag>
\t
<HiHiLtTag>
\t
<HHLLPolTag>
\t
<LoLoLoLtTag>
\t
<HiHiHiLtTag>
\t
<HHHLLLPolTag>
\
<RptList>
is
<NullList>
|
<RptTagList>
<RptTagList>
is
<TagInfo>
|
<TagInfo>
\t
<RptTagList>
RptLimitList>
is
<NullList>
|
<LimitTagList>
<LimitTagList>
is
<MethodTag>
\t
<NormPolTag>
\t
<LoLtTag>
\t
<HiLtTag>
\t
<HLPolTag>
\t
<LoLoLtTag>
\t
<HiHiLtTag>
\t
<HHLLPolTag>
\t
<LoLoLoLtTag>
\t
<HiHiHiLtTag>
\t
<HHHLLLPolTag>
\t
<ReqList>
is
<NullList>
|
<ReqTagList>
<ReqTagList>
is
<TagInfo>
|
<TagInfo>
\t
<ReqTagList>
where:
<MethodTag>
is
<TagInfo>
<NormPolTag
is
<TagInfo>
<LoLtTag>
is
<TagInfo>
<HiLtTag>
is
<TagInfo>
<HLPolTag>
is
<TagInfo>
<LoLoLtTag>
is
<TagInfo>
<HiHiLtTag>
is
<TagInfo>
<HHLLPolTag>
is
<TagInfo>
<LoLoLoLtTag>
is
<TagInfo>
<HiHiHiLtTag>
is
<TagInfo>
<HHHLLLPolTag>
is
<TagInfo>
where:
<TagInfo>
is
<TagName>
\t
<DataServerName>
\t
<ConfigString1>
\t
ConfigString2>
\t
<ConfigString3>
\t
<ConfigString4>
\t
<Protocol>
\t
<ConfiguredDataType>
\t
<OPCAdviseItemDataType>
\t
<OPCReadItemDataType>
\t
<OPCWriteItemDataType>
\t
<AdviseStatus>
\t
<LatestAdviseValue>
\t
<LatestAdviseValueQuality>
\t
<LatestAdviseValueTimestamp>
\t
<ReadStatus>
\t
<LatestReadValue>
\t
<LatestReadValueQuality>
\t
<LatestReadValueTimestamp>
\t
<WriteStatus>
\t
<LastValueWritten>
\t
<LastWriteResult> \t <LastWriteTimestamp>
where:
Field Name
Format
Description
<TagName>
ASCII - String
Protocol-specific configuration string:
OPC - Name of the tag.
CIP - An English string indicating the equipment phase attribute exposed in this <TagInfo> structure.
FTD - Name of the tag.
<DataServerName>
ASCII - String
Protocol-specific configuration string:
OPC - Data server name the tag uses.
CIP - Name of data server associated with equipment phase.
FTD - Data server name the tag uses.
<ConfigString1>
ASCII - String
Protocol-specific configuration string:
OPC - Read Item Access Path
CIP - Unused (<sp>)
FTD - Read Item Access Path
<ConfigString2>
ASCII - String
Protocol-specific configuration string:
OPC - Read Item Name
CIP - Unused (<sp>)
FTD - Read Item Name
<ConfigString3>
ASCII - String
Protocol-specific configuration string:
OPC - Write Item Access Path
CIP - Unused (<sp>)
FTD - Write Item Access Path
<ConfigString4>
ASCII - String
Protocol-specific configuration string:
OPC - Write Item Name
CIP - Unused (<sp>)
FTD - Write Item Name
<Protocol>
ASCII - String
String indicating communication protocol used for the tag or equipment phase attribute. Possible legal values are: OPC, CIP or FTD.
<ConfiguredData
Type>
ASCII - Integer
Protocol-specific data type configured for tag in equipment database.
OPC – Ordinal indicating data type configured for tag in area model.
1 = FLOAT
2 = INTEGER
3 = STRING
4 = ENUMERATION
CIP – Same as OPC
FTD – Same as OPC
<OPCAdviseItem
DataType>
ASCII - Integer
Protocol-specific string.
OPC – Ordinal indicating OLE variant type returned by the data server for advises. These ordinals are defined by Windows. Some common values are:
2 = Two byte integer
3 = Four byte integer
4 = Four byte real
5 = Eight byte real
8 = String
11 = Boolean
17 = Unsigned char (1 byte unsigned integer)
CIP – Unused (<sp>)
FTD – Same as OPC
<OPCReadItem
DataType>
ASCII - Integer
Protocol-specific string.
OPC – Ordinal indicating OLE variant type returned by the data server for reads. These ordinals are defined by Windows. Some common values are:
2 = Two byte integer
3 = Four byte integer
4 = Four byte real
5 = Eight byte real
8 = String
11 = Boolean
17 = Unsigned char (1 byte unsigned integer)
CIP – Unused (<sp>)
FTD – Same as OPC
<OPCWriteItem
DataType>
ASCII - Integer
Protocol-specific string.
OPC – Ordinal indicating OLE variant type returned by the data server for writes. These ordinals are defined by Windows. Some common values are:
2 = Two byte integer
3 = Four byte integer
4 = Four byte real
5 = Eight byte real
8 = String
11 = Boolean
17 = Unsigned char (1 byte unsigned integer)
CIP – Unused (<sp>)
FTD – Same as OPC
<AdviseStatus>
ASCII - Integer
Ordinal indicating current status of any advise operation associated with the tag.
0 = NOT ADVISED
1 = ADVISED – Advise established and initial value received
2 = PENDING – Pending asynchronous establishment
3 = ENDING – Asynchronously ending advise
4 = FAILED
5 = ESTABLISHED – Advised, but no initial value received
9 = UNDEFINED/ERROR
<LatestAdvise
Value>
ASCII - String
The latest data value received by the tag as the result of an update from an advise or active item. The value of the tag is converted to a string representation. If a data update is not received via an advise mechanism, then this field is empty.
<LatestAdviseValueQuality>
ASCII - Integer
The quality of the latest advise value update. Protocol-specific value:
OPC: Quality value per OPC specification
CIP: 0 = GOOD
Non-Zero = BAD
FTD: Same as OPC
If an advise data update is never received, then this field is empty.
<LatestAdviseValueTimestamp>
ASCII - String
The timestamp associated with the most recent advise value. This is not an OPC timestamp. This timestamp is recorded by the
FactoryTalk Batch
Server at the time it received the data update. The time is represented by a string in the format: "%m/%d/%Y %H:%M:%S" If a data update is never received, then this field is empty.
<ReadStatus>
ASCII - Integer
Ordinal indicating current status of any read operation associated with the tag.
0 = NOT PENDING
1 = FAILED
2 = PENDING
9 = UNDEFINED/ERROR
<LatestReadValue>
ASCII - String
The latest data value received by the tag as the result of a completed read operation. The value of the tag is converted to a string representation. If a read operation is never successfully completed, then this field is empty.
<LatestReadValue
Quality>
ASCII - Integer
Protocol-specific value. The quality of the latest read value update:
OPC: Quality value per OPC specification
CIP: 0 = GOOD
Non-Zero = BAD
FTD: Same as OPC
If an advise data update is not received, then this field is empty.
<LatestReadValue
TimeStamp>
ASCII - String
The timestamp associated with the most recently read value. This is not an OPC timestamp. This timestamp is recorded by the
FactoryTalk Batch
Server at the time it receives the read data. The time is represented by a string in the format: "%m/%d/%Y %H:%M:%S" If data is not successfully read, then this field is empty.
<WriteStatus>
ASCII - Integer
Ordinal indicating current status of any write operation associated with the tag.
0 = NOT PENDING
1 = FAILED
2 = PENDING
9 = UNDEFINED/ERROR
<LastValueWritten>
ASCII - String
The last value that the
FactoryTalk Batch
Server wrote to the equipment phase attribute. The value is depicted as a string. If the equipment phase attribute is never written to, then this field is empty.
<LastWriteResult>
ASCII - Integer
An ordinal that indicates the success or failure of the last attempted write. If the tag is associated with an OPC or FTD data server, then the complete set of OPC errors may be received; refer to the OPC standard for a list of the possible return values.
Additional vendor-specific error codes may be returned. It is not possible to know the values of these ordinals in advance. If the tag is never written to, this field is empty.
<LastWriteTime
stamp>
ASCII - Integer
The time at which the
FactoryTalk Batch
Server last received the results of a write attempt from the data server. The time is represented by a string in the format: "%m/%d/%Y %H:%M:%S". If data is never successfully read, then this field is empty.
where:
<ConnFsm>
is
<ConnMachState>
\t
<ParentStepName>
\t
<PendAdvs>
<PendAdvs>
is
<NullList>
|
<PendList>
<PendList>
is
<PendTagName>
|
<PendTagName>
\t
<PendList>
where:
Field Name
Format
Description
<ConnMachState>
ASCII - Integer
The current state of the connection state machine associated with the equipment phase. The possible states are:
0 = DORMANT
1 = PEND_SUBSCRIBE
2 = PEND_UNIT_ID
3 = CONNECTED
4 = RECONNECTING
5 = EXTERNAL_CONTROL
<ParentStepName>
ASCII - String
The batch step name connected to the equipment phase. If a batch step is not currently connected, then this field is empty.
<PendTagName>
ASCII - String
The tag name on which the connection state machine awaits an initial value before advancement to the next state is allowed.
where:
<CmdFsm>
is
<CmdMachState>
\t
<CurrCmd>
\t
<CurrCmdID>
\t
<CmdQ>
$END \t
<CmdEvents>
<CmdQ>
is
<NullList>
|
<CmdList>
<CmdList>
is
<QueuedCmd>
|
<QueuedCmd>
\t
<CmdList>
Field Name
Format
Description
<CmdMachState>
ASCII - Integer
The current state of the Command state machine associated with the equipment phase. The possible states are:
0 = DORMANT
1 = INITIALIZING
3 = PEND_COMMAND_ACK
4 = PEND_WRITE_COMPLETE
<CurrCmd>
ASCII - Integer
If a Command is being processed, this field contains the current Command. Otherwise, this field is empty.
<CurrCmdID>
ASCII - Integer
If a Command is being processed, this field contains the ID of the current Command. Otherwise, this field is empty.
<QueuedCmd>
ASCII - Integer
A Command value in the Command queue waiting to be processed when the current Command completes.
where:
<CmdEvts>
is
<NullList>
|
<CmdEvtList>
<CmdEvtList>
is
<CmdEvent>
|
<CmdEvent>
\t
<CmdEvtList>
<CmdEvent>
is
<CmdInit>
|
<CmdSent>
|
<CmdAck>
|
<CmdNAck>
|
<CmdTime>
|
CmdQued>
|
<CmdCommErr>
|
<CmdNotYetProcessed>
|
<CmdProtocolViolate>
|
<CmdExternal>
|
<CmdQueueFlushed>
|
<CmdWriteFailed>
|
<CmdWriteSucceeded>
<CmdInit>
is
101 \t
<EvtTstmp>
\t
<SpareParm>
\t
<InitialCmdID>
<CmdSent>
is
102 \t
<EvtTstmp>
\t
<Cmd>
\t
<CmdID>
<CmdAck>
is
103 \t
<EvtTstmp>
\t
<Cmd>
\t
<CmdID>
<CmdNAck>
is
104 \t
<EvtTstmp>
\t
<Cmd>
\t
<CmdID>
<CmdTime>
is
105 \t
<EvtTstmp>
\t
<Cmd>
\t
<CmdID>
<CmdQued>
is
106 \t
<EvtTstmp>
\t
<Cmd>
\t
<SpareParm>
<CmdNotYetProcessed>
is
108 \t
<EvtTstmp>
\t
<Cmd>
\t
<CmdID>
<CmdProtocolViolate>
is
109 \t
<EvtTstmp>
\t
<Cmd>
\t
<CmdID>
<CmdExternal>
is
110 \t
<EvtTstmp>
\t
<SpareParm>
\t
<SpareParm>
<CmdQueueFlushed>
is
111 \t
<EvtTstmp>
\t
<SpareParm>
\t
<SpareParm>
<CmdWriteFailed>
is
112 \t
<EvtTstmp>
\t
<SpareParm>
\t
<SpareParm>
<CmdWriteSucceeded>
is
113 \t
<EvtTstmp>
\t
<SpareParm>
\t
<SpareParm>
Field Name
Format
Description
<EvtTstmp>
ASCII - String
The time at which the
FactoryTalk Batch
Server recorded the event. The time is represented as an eight byte float value. This is the "DATE" time as defined by OLE and encapsulated by the COleDateTime class.
<SpareParm>
ASCII - String
An unused event parameter field. It populates with the value zero (0) by default.
<InitialCmdID>
ASCII - Integer
The Command ID used for the first Command issued after the Command state machine is initialized by reading the Command tag’s current value. Normally, a value of
1
is used, unless the current value of the tag’s high byte is
1
, in which case Commands are started with an ID of
2
.
<Cmd>
ASCII - Integer
The Command value associated with the recorded event.
<CmdID>
ASCII - Integer
The Command ID value associated with the recorded event.
where:
<ReqFSM>
is
<RqstMachState>
\t
<CurrRqst>
\t
<CurrRqstParm1>
\t
<CurrRqstParm2>
\t
<CurrRqstParm3>
\t
<ReqEvents>
where:
Field Name
Format
Description
<RqstMachState>
ASCII - Integer
The current state of the request state machine associated with the equipment phase. The possible states are:
0 = DORMANT
1 = PEND_GET_DATA
2 = PERFORMING_REQ
3 = PEND_PUT_DATA
4 = PEND_VERIFY_DATA
5 = PEND_COMPLETE
<CurrRqst>
ASCII - Integer
If a request is being processed, this is the value of the current request, otherwise this field is blank.
<CurrRqstParm1>
ASCII - Integer
If a request is being processed that requires request parameters, then this is the value of the first request parameter. Otherwise, this field is blank.
<CurrRqstParm2>
ASCII - Integer
If a request is being processed that requires two or more request parameters, then this is the value of the second request parameter. Otherwise, this field is blank.
<CurrRqstParm3>
ASCII - Integer
If a request is processed that requires three or more request parameters, then this is the value of the third request parameter. Otherwise, this field is blank.
where <ReqEvents> is:
<ReqEvents>
is
<NullList>
|
<ReqEvtList>
<ReqEvtList>
is
<ReqEvent>
|
<ReqEvent>
\t
<ReqEvtList>
<ReqEvent>
is
<ReqReq>
|
<ReqRSet>
|
<ReqAbrtAck>
|
<ReqAbrtFail>
|
<ReqGetParm>
|
<ReqProcsng>
|
<ReqCmpltd>
|
<ReqPutData>
|
<ReqVerData>
<ReqReq>
is
203 \t
<EvtTstmp>
\t
<RqstValue>
\t
<SpareParm>
<ReqRSet>
is
204 \t
<EvtTstmp>
\t
<SpareParm>
\t
<SpareParm>
<ReqAbrtAck>
is
205 \t
<EvtTstmp>
\t
<SpareParm>
\t
<SpareParm>
<ReqAbrtFail>
is
206 \t
<EvtTstmp>
\t
<SpareParm>
\t
<SpareParm>
<ReqGetParm>
is
207 \t
<EvtTstmp>
\t
<RqstValue>
\t
<SpareParm>
<ReqProcsng>
is
208 \t
<EvtTstmp>
\t
<RqstValue>
\t
<SpareParm>
<ReqCmpltd>
is
209 \t
<EvtTstmp>
\t
<RqstValue>
\t
<SpareParm>
<ReqPutData>
is
210 \t
<EvtTstmp>
\t
<RqstValue>
\t
<SpareParm>
<ReqVerData>
is
211 \t
<EvtTstmp>
\t
<RqstValue>
\t
<SpareParm>
Items 212 through 315 are proprietary.
where:
Field Name
Format
Description
<EvtTstmp>
ASCII - String
The time at which the
FactoryTalk Batch
Server recorded the event. The time is represented as an eight-byte float value. This is the "DATE" time as defined by OLE and encapsulated by the COleDateTime class.
<SpareParm>
ASCII - String
An unused event parameter field. It is by default populated with the value zero.
<RqstValue>
ASCII - Integer
The value of the equipment phase request associated with the recorded event.
This table shows an example of the return on this request.
Example:
A request on
object.GetItem(68EqData)
could return:
NP_ADDDAIRY_M1 \crlf
MBR_ADD \crlf
NP_ADDDAIRY_M1_ST \t OPC_SIM \t PHASES \t NP_ADDDAIRY_M1_ST \t \t \t OPC \t 2 \t 3 \t \t 3 \t 1 \t 100 \t 192 \t 02/24/2022 16:20:57 \t 0 \t \t 0 \t \t 0 \t \t 0 \t \crlf
NP_ADDDAIRY_M1_OC \t OPC_SIM \t PHASES \t NP_ADDDAIRY_M1_OC \t PHASES \t NP_ADDDAIRY_M1_OC \t OPC \t 2 \t 3 \t \t 3 \t 1 \t 2816 \t 192 \t 02/24/2022 16:14:48 \t 0 \t \t 0 \t \t 0 \t \t 0 \t \crlf
NP_ADDDAIRY_M1_F \t OPC_SIM \t PHASES \t NP_ADDDAIRY_M1_F \t \t \t OPC \t 2 \t 3 \t \t 3 \t 1 \t 0 \t 192 \t 02/24/2022 16:14:49 \t 0 \t \t 0 \t \t 0 \t \t 0 \t \crlf
NP_ADDDAIRY_M1_W \t OPC_SIM \t PHASES \t NP_ADDDAIRY_M1_W \t \t \t OPC \t 2 \t 3 \t \t 3 \t 1 \t 0 \t 192 \t 02/24/2022 16:20:57 \t 0 \t \t 0 \t \t 0 \t \t 0 \t \crlf
NP_ADDDAIRY_M1_RQ \t OPC_SIM \t PHASES \t NP_ADDDAIRY_M1_RQ \t \t \t OPC \t 2 \t 3 \t \t 3 \t 1 \t 0 \t 192 \t 02/24/2022 16:21:18 \t 0 \t \t 0 \t \t 0 \t \t 0 \t \crlf
NP_ADDDAIRY_M1_P \t OPC_SIM \t PHASES \t NP_ADDDAIRY_M1_P \t \t \t OPC \t 2 \t 3 \t \t 3 \t 1 \t 0 \t 192 \t 02/24/2022 16:20:57 \t 0 \t \t 0 \t \t 0 \t \t 0 \t \crlf
NP_ADDDAIRY_M1_PD \t OPC_SIM \t PHASES \t NP_ADDDAIRY_M1_PD \t \t \t OPC \t 2 \t 3 \t \t 3 \t 1 \t 0 \t 192 \t 02/24/2022 16:20:57 \t 0 \t \t 0 \t \t 0 \t \t 0 \t \crlf
NP_ADDDAIRY_M1_SS \t OPC_SIM \t PHASES \t NP_ADDDAIRY_M1_SS \t \t \t OPC \t 2 \t 3 \t \t 3 \t 0 \t \t 0 \t \t 0 \t \t 0 \t \t 0 \t \t 0 \t \crlf
NP_ADDDAIRY_M1_SI \t OPC_SIM \t PHASES \t NP_ADDDAIRY_M1_SI \t \t \t OPC \t 2 \t 3 \t \t 3 \t 1 \t 0 \t 192 \t 02/24/2022 16:20:57 \t 0 \t \t 0 \t \t 0 \t \t 0 \t \crlf
\t NP_ADDDAIRY_M1P02 \t PHASES \t NP_ADDDAIRY_M1P02 \t OPC \t 1 \t 5 \t \t 5 \t 0 \t \t 0 \t \t 0 \t \t 0 \t \t 0 \t \t 0 \t \crlf
...
\crlf
0 \t \t \crlf
1 \t 0 \t 0 \t $END \t 101 \t 02/24/2022 16:14:56 \t 0 \t 1 \crlf
0 \t 0 \t 0 \t 0 \t 0 \t
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.
Normal