OPC Studio User's Guide and Reference
EncodeInDataTypeDefinitionModel Method (IUADataTypeSystem)



OpcLabs.EasyOpcUA Assembly > OpcLabs.EasyOpc.UA.DataTypeModel Namespace > IUADataTypeSystem Interface : EncodeInDataTypeDefinitionModel Method
Information about an OPC UA data type.

The value of this parameter cannot be null (Nothing in Visual Basic).

The generic data to be encoded.

The value of this parameter cannot be null (Nothing in Visual Basic).

Endpoint descriptor of the OPC UA server where the data resides.

Because the OpcLabs.EasyOpc.UA.UAEndpointDescriptor has implicit conversions from System.String and System.Uri, in languages that support implicit conversion operators (such as C# or VB.NET), you can simply use a string (representing the endpoint URL, or a so-called OPC UA endpoint descriptor string), or a System.Uri object, in place of this parameter, and the corresponding endpoint descriptor will be constructed automatically. When the implicit conversion operators are not supported (such as with Python.NET), you can use the FromString or FromUri static method instead.

Also, because the OpcLabs.EasyOpc.UA.Discovery.UAApplicationElement and OpcLabs.EasyOpc.UA.Discovery.UADiscoveryElement have an implicit conversion to OpcLabs.EasyOpc.UA.UAEndpointDescriptor, in languages that support implicit conversion operators (such as C# or VB.NET), you can simply use a OpcLabs.EasyOpc.UA.Discovery.UAApplicationElement or OpcLabs.EasyOpc.UA.Discovery.UADiscoveryElement (results from OPC UA discovery) in place of this parameter, and the corresponding endpoint descriptor will be constructed automatically. When the implicit conversion operators are not supported (such as with Python.NET), you can convert a (non-null) OpcLabs.EasyOpc.UA.Discovery.UAApplicationElement or OpcLabs.EasyOpc.UA.Discovery.UADiscoveryElement to OpcLabs.EasyOpc.UA.UAEndpointDescriptor using the OpcLabs.EasyOpc.UA.Discovery.UAApplicationElement.ToUAEndpointDescriptor or OpcLabs.EasyOpc.UA.Discovery.UADiscoveryElement.ToUAEndpointDescriptor method instead.

If you are using OPC Wizard (for server development), an implicit conversion from OpcLabs.EasyOpc.UA.EasyUAServerCore can be used in the same way to simply pass the server object in place of this parameter, which will use its OpcLabs.EasyOpc.UA.EasyUAServerCore.EffectiveServerDescriptor property for the connection.

The value of this parameter cannot be null (Nothing in Visual Basic).

Provides access to OPC UA server tables.

The value of this parameter cannot be null (Nothing in Visual Basic).

Determines whether the encoding layout is fixed.
In DataTypeDefinition model, encodes generic data according to given data type info.
Syntax
'Declaration
 
<NotNullAttribute()>
Function EncodeInDataTypeDefinitionModel( _
   ByVal dataTypeInfo As UADataTypeInfo, _
   ByVal genericData As GenericData, _
   ByVal endpointDescriptor As UAEndpointDescriptor, _
   ByVal serverTables As IUAServerTables, _
   ByVal fixedLayout As Boolean _
) As ValueResult
'Usage
 
Dim instance As IUADataTypeSystem
Dim dataTypeInfo As UADataTypeInfo
Dim genericData As GenericData
Dim endpointDescriptor As UAEndpointDescriptor
Dim serverTables As IUAServerTables
Dim fixedLayout As Boolean
Dim value As ValueResult
 
value = instance.EncodeInDataTypeDefinitionModel(dataTypeInfo, genericData, endpointDescriptor, serverTables, fixedLayout)

Parameters

dataTypeInfo
Information about an OPC UA data type.

The value of this parameter cannot be null (Nothing in Visual Basic).

genericData
The generic data to be encoded.

The value of this parameter cannot be null (Nothing in Visual Basic).

endpointDescriptor
Endpoint descriptor of the OPC UA server where the data resides.

Because the OpcLabs.EasyOpc.UA.UAEndpointDescriptor has implicit conversions from System.String and System.Uri, in languages that support implicit conversion operators (such as C# or VB.NET), you can simply use a string (representing the endpoint URL, or a so-called OPC UA endpoint descriptor string), or a System.Uri object, in place of this parameter, and the corresponding endpoint descriptor will be constructed automatically. When the implicit conversion operators are not supported (such as with Python.NET), you can use the FromString or FromUri static method instead.

Also, because the OpcLabs.EasyOpc.UA.Discovery.UAApplicationElement and OpcLabs.EasyOpc.UA.Discovery.UADiscoveryElement have an implicit conversion to OpcLabs.EasyOpc.UA.UAEndpointDescriptor, in languages that support implicit conversion operators (such as C# or VB.NET), you can simply use a OpcLabs.EasyOpc.UA.Discovery.UAApplicationElement or OpcLabs.EasyOpc.UA.Discovery.UADiscoveryElement (results from OPC UA discovery) in place of this parameter, and the corresponding endpoint descriptor will be constructed automatically. When the implicit conversion operators are not supported (such as with Python.NET), you can convert a (non-null) OpcLabs.EasyOpc.UA.Discovery.UAApplicationElement or OpcLabs.EasyOpc.UA.Discovery.UADiscoveryElement to OpcLabs.EasyOpc.UA.UAEndpointDescriptor using the OpcLabs.EasyOpc.UA.Discovery.UAApplicationElement.ToUAEndpointDescriptor or OpcLabs.EasyOpc.UA.Discovery.UADiscoveryElement.ToUAEndpointDescriptor method instead.

If you are using OPC Wizard (for server development), an implicit conversion from OpcLabs.EasyOpc.UA.EasyUAServerCore can be used in the same way to simply pass the server object in place of this parameter, which will use its OpcLabs.EasyOpc.UA.EasyUAServerCore.EffectiveServerDescriptor property for the connection.

The value of this parameter cannot be null (Nothing in Visual Basic).

serverTables
Provides access to OPC UA server tables.

The value of this parameter cannot be null (Nothing in Visual Basic).

fixedLayout
Determines whether the encoding layout is fixed.

Return Value

A value result: A success with the encoded object body, or a failure.

This method never returns null (Nothing in Visual Basic).

Requirements

Target Platforms: .NET Framework: Windows 10 (selected versions), Windows 11 (selected versions), Windows Server 2016, Windows Server 2022; .NET: Linux, macOS, Microsoft Windows

See Also