Errata exists for this version of the document.
This Method is used to initially set the SubscribedDataSet to TargetVariablesType and to create the list of target Variables of a SubscribedDataSetType.
The Client shall be authorized to modify the configuration for the PubSub functionality when invoking this Method on the Server.
Signature
CreateTargetVariables (
[in]ConfigurationVersionDataType ConfigurationVersion
[in]FieldTargetDataType[] TargetVariablesToAdd
[out] StatusCode[] AddResults
);
Argument |
Description |
ConfigurationVersion |
Configuration version of the DataSet. The configuration version passed in through CreateTargetVariables must match the current configuration version in DataSetMetaData Property. If it does not match, the result Bad_InvalidState shall be returned. The ConfigurationVersionDataType is defined in 6.2.2.1.5. |
TargetVariablesToAdd |
The list of target Variables to write received DataSet fields to. The FieldTargetDataType is defined in 6.2.9.2.3. The succeeded targets are added to the TargetVariables Property. |
AddResults |
The result codes for the Variables to connect. |
Method Result Codes
ResultCode |
Description |
Bad_NothingToDo |
An empty list of Variables was passed in. |
Bad_InvalidState |
The DataSetReader is not configured yet or the ConfigurationVersion does not match the version in the Publisher. |
Bad_UserAccessDenied |
Operation Result Codes
ResultCode |
Description |
Bad_NodeIdInvalid |
See OPC 10000-4 for the description of this result code. |
Bad_NodeIdUnknown |
See OPC 10000-4 for the description of this result code. |
Bad_IndexRangeInvalid |
See OPC 10000-4 for the description of this result code. This status code indicates either an invalid ReceiverIndexRange or an invalid WriterIndexRange or if the two settings result in a different size. |
Bad_IndexRangeNoData |
See OPC 10000-4 for the description of this result code. If the ArrayDimensions have a fixed length that cannot change and no data exists within the range of indexes specified, Bad_IndexRangeNoData is returned in AddDataConnections. |
Bad_TooManyMonitoredItems |
The Server has reached its maximum number of items for the DataSetReader object. |
Bad_InvalidState |
The TargetNodeId is already used by another connection. |
Bad_TypeMismatch |
The Server shall return a Bad_TypeMismatch error if the data type of the DataSet field is not the same type or subtype of the target Variable DataType. Based on the DataType hierarchy, subtypes of the Variable DataType shall be accepted by the Server. A ByteString is structurally the same as a one dimensional array of Byte. A Server shall accept a ByteString if an array of Byte is expected. |