

'Declaration<ComDefaultInterfaceAttribute(OpcLabs.EasyOpc.UA.ComTypes._UAAttributeData)> <ComVisibleAttribute(True)> <ExceptionContractAnnotationAttribute(True)> <GuidAttribute("C6820823-AFDF-4368-A8E8-D85075ECF5CA")> <TypeConverterAttribute(System.ComponentModel.ExpandableObjectConverter)> <CLSCompliantAttribute(True)> <ValueControlAttribute("OpcLabs.BaseLib.Forms.Common.ObjectSerializationControl, OpcLabs.BaseLibForms, Version=5.84.192.1, Culture=neutral, PublicKeyToken=6faddca41dacb409", DefaultReadWrite=False, Export=True, PageId=10001)> <SerializableAttribute()> Public Class UAAttributeData Inherits UADataValue Implements LINQPad.ICustomMemberProvider, OpcLabs.BaseLib.ComTypes._Info, OpcLabs.BaseLib.ComTypes._Object2, OpcLabs.EasyOpc.UA.ComTypes._UAAttributeData, OpcLabs.EasyOpc.UA.ComTypes._UADataValue, System.ICloneable, System.IFormattable, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
'UsageDim instance As UAAttributeData
[ComDefaultInterface(OpcLabs.EasyOpc.UA.ComTypes._UAAttributeData)] [ComVisible(true)] [ExceptionContractAnnotation(true)] [Guid("C6820823-AFDF-4368-A8E8-D85075ECF5CA")] [TypeConverter(System.ComponentModel.ExpandableObjectConverter)] [CLSCompliant(true)] [ValueControl("OpcLabs.BaseLib.Forms.Common.ObjectSerializationControl, OpcLabs.BaseLibForms, Version=5.84.192.1, Culture=neutral, PublicKeyToken=6faddca41dacb409", DefaultReadWrite=false, Export=true, PageId=10001)] [Serializable()] public class UAAttributeData : UADataValue, LINQPad.ICustomMemberProvider, OpcLabs.BaseLib.ComTypes._Info, OpcLabs.BaseLib.ComTypes._Object2, OpcLabs.EasyOpc.UA.ComTypes._UAAttributeData, OpcLabs.EasyOpc.UA.ComTypes._UADataValue, System.ICloneable, System.IFormattable, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
[ComDefaultInterface(OpcLabs.EasyOpc.UA.ComTypes._UAAttributeData)] [ComVisible(true)] [ExceptionContractAnnotation(true)] [Guid("C6820823-AFDF-4368-A8E8-D85075ECF5CA")] [TypeConverter(System.ComponentModel.ExpandableObjectConverter)] [CLSCompliant(true)] [ValueControl("OpcLabs.BaseLib.Forms.Common.ObjectSerializationControl, OpcLabs.BaseLibForms, Version=5.84.192.1, Culture=neutral, PublicKeyToken=6faddca41dacb409", DefaultReadWrite=false, Export=true, PageId=10001)] [Serializable()] public ref class UAAttributeData : public UADataValue, LINQPad.ICustomMemberProvider, OpcLabs.BaseLib.ComTypes._Info, OpcLabs.BaseLib.ComTypes._Object2, OpcLabs.EasyOpc.UA.ComTypes._UAAttributeData, OpcLabs.EasyOpc.UA.ComTypes._UADataValue, System.ICloneable, System.IFormattable, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
The UAAttributeData class encapsulates the value of an attribute in an OPC UA server, along with associated data such as the status code and timestamps for the source and server. This class is designed to provide a comprehensive representation of attribute data that can be used for both reading from and writing to OPC UA servers.
// This example shows how to read and display data of an attribute (value, timestamps, and status code). // // Find all latest examples here: https://www.doc-that.com/files/onlinedocs/OPCLabs-ConnectivityStudio/Latest/examples.html . // OPC client and subscriber examples in C# on GitHub: https://github.com/OPCLabs/Examples-ConnectivityStudio-CSharp . // Missing some example? Ask us for it on our Online Forums, https://forum.opclabs.com/forum/index ! You do not have to own // a commercial license in order to use Online Forums, and we reply to every post. using System; using OpcLabs.EasyOpc.UA; using OpcLabs.EasyOpc.UA.OperationModel; namespace UADocExamples._EasyUAClient { partial class Read { public static void Main1() { UAEndpointDescriptor endpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer"; // or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) // or "https://opcua.demo-this.com:51212/UA/SampleServer/" // Instantiate the client object. var client = new EasyUAClient(); // Obtain attribute data. By default, the Value attribute of a node will be read. UAAttributeData attributeData; try { attributeData = client.Read(endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10853"); } catch (UAException uaException) { Console.WriteLine($"*** Failure: {uaException.GetBaseException().Message}"); return; } // Display results Console.WriteLine($"Value: {attributeData.Value}"); Console.WriteLine($"ServerTimestamp: {attributeData.ServerTimestamp}"); Console.WriteLine($"SourceTimestamp: {attributeData.SourceTimestamp}"); Console.WriteLine($"StatusCode: {attributeData.StatusCode}"); // Example output: // //Value: -2.230064E-31 //ServerTimestamp: 11/6/2011 1:34:30 PM //SourceTimestamp: 11/6/2011 1:34:30 PM //StatusCode: Good } } }
# This example shows how to read and display data of an attribute (value, timestamps, and status code). # # Find all latest examples here: https://www.doc-that.com/files/onlinedocs/OPCLabs-ConnectivityStudio/Latest/examples.html . # OPC client and subscriber examples in PowerShell on GitHub: https://github.com/OPCLabs/Examples-ConnectivityStudio-PowerShell . # Missing some example? Ask us for it on our Online Forums, https://forum.opclabs.com/forum/index ! You do not have to own # a commercial license in order to use Online Forums, and we reply to every post. #requires -Version 5.1 using namespace OpcLabs.EasyOpc.UA using namespace OpcLabs.EasyOpc.UA.OperationModel # The path below assumes that the current directory is [ProductDir]/Examples-NET/PowerShell/Windows . Add-Type -Path "../../../Components/Opclabs.QuickOpc/net472/OpcLabs.EasyOpcUAPrimitives.dll" Add-Type -Path "../../../Components/Opclabs.QuickOpc/net472/OpcLabs.EasyOpcUACore.dll" Add-Type -Path "../../../Components/Opclabs.QuickOpc/net472/OpcLabs.EasyOpcUA.dll" Add-Type -Path "../../../Components/Opclabs.QuickOpc/net472/OpcLabs.EasyOpcUAComponents.dll" [UAEndpointDescriptor]$endpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer" # or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) # or "https://opcua.demo-this.com:51212/UA/SampleServer/" # Instantiate the client object. $client = New-Object EasyUAClient # Obtain attribute data. By default, the Value attribute of a node will be read. try { $attributeData = $client.Read($endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10853") } catch [UAException] { Write-Host "*** Failure: $($PSItem.Exception.GetBaseException().Message)" return } # Display results Write-Host "Value: $($attributeData.Value)" Write-Host "ServerTimestamp: $($attributeData.ServerTimestamp)" Write-Host "SourceTimestamp: $($attributeData.SourceTimestamp)" Write-Host "StatusCode: $($attributeData.StatusCode)" # Example output: # #Value: -2.230064E-31 #ServerTimestamp: 11/6/2011 1:34:30 PM #SourceTimestamp: 11/6/2011 1:34:30 PM #StatusCode: Good
' This example shows how to read and display data of an attribute (value, timestamps, and status code). ' ' Find all latest examples here: https://www.doc-that.com/files/onlinedocs/OPCLabs-ConnectivityStudio/Latest/examples.html . ' OPC client and subscriber examples in VB.NET on GitHub: https://github.com/OPCLabs/Examples-ConnectivityStudio-VBNET . ' Missing some example? Ask us for it on our Online Forums, https://forum.opclabs.com/forum/index ! You do not have to own ' a commercial license in order to use Online Forums, and we reply to every post. Imports OpcLabs.EasyOpc.UA Imports OpcLabs.EasyOpc.UA.OperationModel Namespace Global.UADocExamples._EasyUAClient Friend Class Read Public Shared Sub Main1() ' Define which server we will work with. Dim endpointDescriptor As UAEndpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer" ' or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) ' or "https://opcua.demo-this.com:51212/UA/SampleServer/" ' Instantiate the client object Dim client = New EasyUAClient() ' Obtain attribute data. By default, the Value attribute of a node will be read. Dim attributeData As UAAttributeData Try attributeData = client.Read(endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10853") Catch uaException As UAException Console.WriteLine("*** Failure: {0}", uaException.GetBaseException.Message) Exit Sub End Try ' Display results Console.WriteLine("Value: {0}", attributeData.Value) Console.WriteLine("ServerTimestamp: {0}", attributeData.ServerTimestamp) Console.WriteLine("SourceTimestamp: {0}", attributeData.SourceTimestamp) Console.WriteLine("StatusCode: {0}", attributeData.StatusCode) ' Example output: ' 'Value: -2.230064E-31 'ServerTimestamp: 11/6/2011 1:34:30 PM 'SourceTimestamp: 11/6/2011 1:34:30 PM 'StatusCode: Good End Sub End Class End Namespace
# This example shows how to read and display data of an attribute (value, timestamps, and status code). # # Find all latest examples here: https://www.doc-that.com/files/onlinedocs/OPCLabs-ConnectivityStudio/Latest/examples.html . # OPC client and subscriber examples in Python on GitHub: https://github.com/OPCLabs/Examples-ConnectivityStudio-Python . # Missing some example? Ask us for it on our Online Forums, https://forum.opclabs.com/forum/index ! You do not have to own # a commercial license in order to use Online Forums, and we reply to every post. # The QuickOPC package is needed. Install it using "pip install opclabs_quickopc". import opclabs_quickopc # Import .NET namespaces. from OpcLabs.EasyOpc.UA import * from OpcLabs.EasyOpc.UA.OperationModel import * # Instantiate the client object. client = EasyUAClient() # Obtain attribute data. By default, the Value attribute of a node will be read. try: attributeData = IEasyUAClientExtension.Read(client, UAEndpointDescriptor('opc.tcp://opcua.demo-this.com:51210/UA/SampleServer'), UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10853')) except UAException as uaException: print('*** Failure: ' + uaException.GetBaseException().Message) exit() # Display results. print('Value: ', attributeData.Value) print('ServerTimestamp: ', attributeData.ServerTimestamp) print('SourceTimestamp: ', attributeData.SourceTimestamp) print('StatusCode: ', attributeData.StatusCode) # Example output: # #Value: -2.230064E-31 #ServerTimestamp: 11/6/2011 1:34:30 PM #SourceTimestamp: 11/6/2011 1:34:30 PM #StatusCode: Good
// This example shows how to write data (a value, timestamps and status code) into a single attribute of a node. // // Find all latest examples here: https://www.doc-that.com/files/onlinedocs/OPCLabs-ConnectivityStudio/Latest/examples.html . // OPC client and subscriber examples in C# on GitHub: https://github.com/OPCLabs/Examples-ConnectivityStudio-CSharp . // Missing some example? Ask us for it on our Online Forums, https://forum.opclabs.com/forum/index ! You do not have to own // a commercial license in order to use Online Forums, and we reply to every post. using System; using OpcLabs.EasyOpc.UA; using OpcLabs.EasyOpc.UA.OperationModel; namespace UADocExamples._EasyUAClient { class Write { public static void Main1() { UAEndpointDescriptor endpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer"; // or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) // or "https://opcua.demo-this.com:51212/UA/SampleServer/" // Instantiate the client object. var client = new EasyUAClient(); Console.WriteLine("Modifying data of a node's attribute..."); try { client.Write(endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10221", new UAAttributeData(12345, UASeverity.GoodOrSuccess, DateTime.UtcNow)); // The target server may not support this, and in such case a failure will occur. } catch (UAException uaException) { Console.WriteLine($"*** Failure: {uaException.GetBaseException().Message}"); return; } Console.WriteLine("Finished."); } } }
# This example shows how to write data (a value, timestamps and status code) into a single attribute of a node. # # Find all latest examples here: https://www.doc-that.com/files/onlinedocs/OPCLabs-ConnectivityStudio/Latest/examples.html . # OPC client and subscriber examples in PowerShell on GitHub: https://github.com/OPCLabs/Examples-ConnectivityStudio-PowerShell . # Missing some example? Ask us for it on our Online Forums, https://forum.opclabs.com/forum/index ! You do not have to own # a commercial license in order to use Online Forums, and we reply to every post. #requires -Version 5.1 using namespace OpcLabs.EasyOpc.UA using namespace OpcLabs.EasyOpc.UA.OperationModel # The path below assumes that the current directory is [ProductDir]/Examples-NET/PowerShell/Windows . Add-Type -Path "../../../Components/Opclabs.QuickOpc/net472/OpcLabs.EasyOpcUAPrimitives.dll" Add-Type -Path "../../../Components/Opclabs.QuickOpc/net472/OpcLabs.EasyOpcUACore.dll" Add-Type -Path "../../../Components/Opclabs.QuickOpc/net472/OpcLabs.EasyOpcUA.dll" Add-Type -Path "../../../Components/Opclabs.QuickOpc/net472/OpcLabs.EasyOpcUAComponents.dll" [UAEndpointDescriptor]$endpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer" # or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) # or "https://opcua.demo-this.com:51212/UA/SampleServer/" # Instantiate the client object. $client = New-Object EasyUAClient Write-Host "Modifying data of a node's attribute..." try { $client.Write($endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10221", (New-Object UAAttributeData(12345, [UASeverity]::GoodOrSuccess, [DateTime]::UtcNow))) # The target server may not support this, and in such case a failure will occur. } catch [UAException] { Write-Host "*** Failure: $($PSItem.Exception.GetBaseException().Message)" return } Write-Host "Finished."
' This example shows how to write data (a value, timestamps and status code) into a single attribute of a node. ' ' Find all latest examples here: https://www.doc-that.com/files/onlinedocs/OPCLabs-ConnectivityStudio/Latest/examples.html . ' OPC client and subscriber examples in VB.NET on GitHub: https://github.com/OPCLabs/Examples-ConnectivityStudio-VBNET . ' Missing some example? Ask us for it on our Online Forums, https://forum.opclabs.com/forum/index ! You do not have to own ' a commercial license in order to use Online Forums, and we reply to every post. Imports OpcLabs.EasyOpc.UA Imports OpcLabs.EasyOpc.UA.OperationModel Namespace Global.UADocExamples._EasyUAClient Friend Class Write Public Shared Sub Main1() ' Define which server we will work with. Dim endpointDescriptor As UAEndpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer" ' or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) ' or "https://opcua.demo-this.com:51212/UA/SampleServer/" ' Instantiate the client object Dim client = New EasyUAClient() Try ' Modify data of a node's attribute client.Write(endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10221", New UAAttributeData(12345, UASeverity.GoodOrSuccess, Date.UtcNow)) ' or "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer" ' The target server may not support this, and in such case a failure will occur. Catch uaException As UAException Console.WriteLine("*** Failure: {0}", uaException.GetBaseException().Message) End Try End Sub End Class End Namespace
REM This example shows how to write data (a value, timestamps and status code) REM into a single attribute of a node. REM REM Find all latest examples here: https://www.doc-that.com/files/onlinedocs/OPCLabs-ConnectivityStudio/Latest/examples.html . REM OPC client and subscriber examples in Visual Basic on GitHub: https://github.com/OPCLabs/Examples-ConnectivityStudio-VB . REM Missing some example? Ask us for it on our Online Forums, https://forum.opclabs.com/forum/index ! You do not have to own REM a commercial license in order to use Online Forums, and we reply to every post. Public Sub Write_Main_Command_Click() OutputText = "" Const GoodOrSuccess = 0 ' Instantiate the client object Dim Client As New EasyUAClient ' Modify data of a node's attribute Dim StatusCode As New UAStatusCode StatusCode.Severity = GoodOrSuccess Dim AttributeData As New UAAttributeData AttributeData.SetValue 12345 Set AttributeData.StatusCode = StatusCode AttributeData.SourceTimestamp = Now() ' Perform the operation On Error Resume Next Call Client.Write("opc.tcp://opcua.demo-this.com:51210/UA/SampleServer", "nsu=http://test.org/UA/Data/ ;i=10221", AttributeData) If Err.Number <> 0 Then OutputText = OutputText & "*** Failure: " & Err.Source & ": " & Err.Description & vbCrLf Exit Sub End If On Error GoTo 0 End Sub
# This example shows how to write data (a value, timestamps and status code) into a single attribute of a node. # # Find all latest examples here: https://www.doc-that.com/files/onlinedocs/OPCLabs-ConnectivityStudio/Latest/examples.html . # OPC client and subscriber examples in Python on GitHub: https://github.com/OPCLabs/Examples-ConnectivityStudio-Python . # Missing some example? Ask us for it on our Online Forums, https://forum.opclabs.com/forum/index ! You do not have to own # a commercial license in order to use Online Forums, and we reply to every post. # The QuickOPC package is needed. Install it using "pip install opclabs_quickopc". import opclabs_quickopc # Import .NET namespaces. from System import * from OpcLabs.EasyOpc.UA import * from OpcLabs.EasyOpc.UA.OperationModel import * endpointDescriptor = UAEndpointDescriptor('opc.tcp://opcua.demo-this.com:51210/UA/SampleServer') # or 'http://opcua.demo-this.com:51211/UA/SampleServer' (currently not supported) # or 'https://opcua.demo-this.com:51212/UA/SampleServer/' # Instantiate the client object client = EasyUAClient() print("Modifying data of a node's attribute...") try: IEasyUAClientExtension.Write(client, endpointDescriptor, UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10221'), UAAttributeData(12345, UAStatusCode(UASeverity.GoodOrSuccess), DateTime.UtcNow)) except UAException as uaException: print('*** Failure: ' + uaException.GetBaseException().Message) exit() print('Finished.')
// This KEPServerEX/UA example shows how to read and display data of an attribute (value, timestamps, and status code). // // Find all latest examples here: https://www.doc-that.com/files/onlinedocs/OPCLabs-ConnectivityStudio/Latest/examples.html . // OPC client and subscriber examples in C# on GitHub: https://github.com/OPCLabs/Examples-ConnectivityStudio-CSharp . // Missing some example? Ask us for it on our Online Forums, https://forum.opclabs.com/forum/index ! You do not have to own // a commercial license in order to use Online Forums, and we reply to every post. using System; using OpcLabs.EasyOpc.UA; using OpcLabs.EasyOpc.UA.AddressSpace; using OpcLabs.EasyOpc.UA.OperationModel; namespace UADocExamples.Specialized { partial class Kepware_KEPServerEX_UA { public static void Read() { UAEndpointDescriptor endpointDescriptor = "opc.tcp://localhost:49320"; // default KEPServerEX/UA endpoint // Instantiate the client object. var client = new EasyUAClient(); // Obtain attribute data. By default, the Value attribute of a node will be read. UAAttributeData attributeData; try { attributeData = client.Read(endpointDescriptor, // The UANodeId.KEPServerEX(...) helper method simplifies creation of node IDs for KEPServerEX/UA nodes. UANodeId.KEPServerEX("Simulation Examples.Functions.Random1")); } catch (UAException uaException) { Console.WriteLine($"*** Failure: {uaException.GetBaseException().Message}"); return; } // Display results Console.WriteLine($"Value: {attributeData.Value}"); Console.WriteLine($"ServerTimestamp: {attributeData.ServerTimestamp}"); Console.WriteLine($"SourceTimestamp: {attributeData.SourceTimestamp}"); Console.WriteLine($"StatusCode: {attributeData.StatusCode}"); } } }
System.Object
OpcLabs.BaseLib.Object2
OpcLabs.BaseLib.Info
OpcLabs.EasyOpc.UA.UADataValue
OpcLabs.EasyOpc.UA.UAAttributeData
OpcLabs.EasyOpc.UA.Generic.UAAttributeData<TValue>