Hi,
Internally in our product we have a set of bit data types (1-8 bits, 16 bits and 32 bits wide). We translate these bit data types to OPC variables with variable type OptionSetValue and data type BitFieldMaskDataType. Internally we have no support to write a portion of the bits of a variable. So, if an OPC client writes only 1 bit (by only setting 1 bit in the validity field) to e.g. a 3 bit variable our OPC server NAK this WriteValue of the write service. Our server implementation requires that the validity field of the BitFieldMaskDataType must match the size of the bit data type, e.g. we expect that 3 bits are set in the validity field if the client writes to a .
My question is what status code we should return to the client for such a WriteValue?
05/30/2017
https://reference.opcfoundatio…../#5.10.4.4
Bad_WriteNotSupported
The requested write operation is not supported.If a Client attempts to write any *value*, status code, timestamp combination and the Server does not support the requested combination (which could be a single quantity such as just timestamp); than the Server shall not perform any write on this Node and shall return this StatusCode for this Node. It is also used if writing an IndexRange is not supported for a Node.
1 Guest(s)