The COM UA Proxy converts all the ItemIds in the Read into valid NodeIds by replacing the ‘-’ with ‘=’ and calls the OPC UA Read Service for the Value Attribute.

If the Read Service call is successful then DataValue for each node is mapped to the VQT for each item as shown in Figure A.9.

If the Read Service call fails or If there are errors for some of the Nodes, then the StatusCodes of these Nodes are mapped to the error code by the COM UA Proxy.

The mapping of the OPC UA Status code to OPC DA Read Error code (in the COM UA Proxy) is shown in Table A.38:

Table A.38 – OPC UA Read error mapping

OPC UA Status Code

OPC DA Error ID

Bad_OutOfMemory

E_OUTOFMEMORY

Bad_NodeIdInvalid

E_INVALIDITEMID

Bad_NodeIdUnknown

E_UNKNOWNITEMID

Bad_NotReadable

E_BADRIGHTS

Bad_UserAccessDenied

E_ACCESSDENIED

Bad_AttributeIdInvalid

E_INVALIDITEMID

Bad_UnexpectedError

E_FAIL

Bad_InternalError

E_FAIL

Bad_SessionClosed

E_FAIL

Bad_TypeMismatch

E_BADTYPE