// Attempts to parse a relative OPC-UA browse path and displays its elements. using System; using OpcLabs.BaseLib; using OpcLabs.EasyOpc.UA.Navigation; using OpcLabs.EasyOpc.UA.Navigation.Parsing; namespace UADocExamples._UABrowsePathParser { class TryParseRelative { public static void Main1() { var browsePathElements = new UABrowsePathElementCollection(); var browsePathParser = new UABrowsePathParser(); IStringParsingError stringParsingError = browsePathParser.TryParseRelative("/Data.Dynamic.Scalar.CycleComplete", browsePathElements); // Display results if (!(stringParsingError is null)) { Console.WriteLine("*** Error: {0}", stringParsingError); return; } foreach (UABrowsePathElement browsePathElement in browsePathElements) Console.WriteLine(browsePathElement); // Example output: // /Data // .Dynamic // .Scalar // .CycleComplete } } }
# Attempts to parse a relative OPC-UA browse path and displays its elements. # 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.Navigation import * from OpcLabs.EasyOpc.UA.Navigation.Parsing import * browsePathElements = UABrowsePathElementCollection() browsePathParser = UABrowsePathParser() stringParsingError = browsePathParser.TryParseRelative('/Data.Dynamic.Scalar.CycleComplete', browsePathElements) # Display results. if stringParsingError is not None: print('*** Error: ', stringParsingError, sep='') exit() for browsePathElement in browsePathElements: print(browsePathElement) print() print('Finished.')
' Attempts to parse a relative OPC-UA browse path and displays its elements. Imports System Imports OpcLabs.BaseLib Imports OpcLabs.EasyOpc.UA.Navigation Imports OpcLabs.EasyOpc.UA.Navigation.Parsing Namespace _UABrowsePathParser Friend Class TryParseRelative Public Shared Sub Main1() Dim browsePathElements = New UABrowsePathElementCollection() Dim browsePathParser = New UABrowsePathParser() Dim stringParsingError As IStringParsingError = browsePathParser.TryParseRelative("/Data.Dynamic.Scalar.CycleComplete", browsePathElements) ' Display results If Not stringParsingError Is Nothing Then Console.WriteLine("*** Error: {0}", stringParsingError) Exit Sub End If For Each browsePathElement As UABrowsePathElement In browsePathElements Console.WriteLine(browsePathElement) Next browsePathElement ' Example output: ' /Data ' .Dynamic ' .Scalar ' .CycleComplete End Sub End Class End Namespace
// Attempts to parse a relative OPC-UA browse path and displays its elements. class procedure TryParseRelative.Main; var BrowsePathElement: _UABrowsePathElement; BrowsePathElements: _UABrowsePathElementCollection; BrowsePathParser: OpcLabs_EasyOpcUA_TLB._UABrowsePathParser; Count: Cardinal; Element: OleVariant; ElementEnumerator: IEnumVariant; StringParsingError: _StringParsingError; begin BrowsePathElements := CoUABrowsePathElementCollection.Create; BrowsePathParser := CoUABrowsePathParser.Create; StringParsingError := BrowsePathParser.TryParseRelative('/Data.Dynamic.Scalar.CycleComplete', BrowsePathElements); // Display results if StringParsingError <> nil then begin WriteLn('*** Error: ', StringParsingError.ToString); Exit; end; ElementEnumerator := BrowsePathElements.GetEnumerator; while (ElementEnumerator.Next(1, Element, Count) = S_OK) do begin BrowsePathElement := IUnknown(Element) as _UABrowsePathElement; WriteLn(BrowsePathElement.ToString); end; // Example output: // /Data // .Dynamic // .Scalar // .CycleComplete end;
// Attempts to parse a relative OPC-UA browse path and displays its elements. $BrowsePathElements = new COM("OpcLabs.EasyOpc.UA.Navigation.UABrowsePathElementCollection"); $BrowsePathParser = new COM("OpcLabs.EasyOpc.UA.Navigation.Parsing.UABrowsePathParser"); $StringParsingError = $BrowsePathParser->TryParseRelative("/Data.Dynamic.Scalar.CycleComplete", $BrowsePathElements); // Display results if (!is_null($StringParsingError)) { printf("*** Error: %s\n", $StringParsingError); exit(); } printf("StartingNodeId: %s\n", $BrowsePath->StartingNodeId); printf("Elements:\n"); for ($i = 0; $i < $BrowsePathElements->Count; $i++) { printf("%s\n", $BrowsePathElements[$i]); } // Example output: // /Data // .Dynamic // .Scalar // .CycleComplete
Rem Attempts to parse a relative OPC-UA browse path and displays its elements. Private Sub TryParseRelative_Main_Command_Click() OutputText = "" Dim BrowsePathElements As New UABrowsePathElementCollection Dim BrowsePathParser As New UABrowsePathParser Dim stringParsingError As stringParsingError Set stringParsingError = BrowsePathParser.TryParseRelative("/Data.Dynamic.Scalar.CycleComplete", BrowsePathElements) ' Display results If Not stringParsingError Is Nothing Then OutputText = OutputText & "*** Error: " & stringParsingError & vbCrLf Exit Sub End If Dim BrowsePathElement: For Each BrowsePathElement In BrowsePathElements OutputText = OutputText & BrowsePathElement & vbCrLf Next ' Example output: '/Data '.Dynamic '.Scalar '.CycleComplete End Sub
Rem Attempts to parse a relative OPC-UA browse path and displays its elements. Option Explicit Dim BrowsePathElements: Set BrowsePathElements = CreateObject("OpcLabs.EasyOpc.UA.Navigation.UABrowsePathElementCollection") Dim BrowsePathParser: Set BrowsePathParser = CreateObject("OpcLabs.EasyOpc.UA.Navigation.Parsing.UABrowsePathParser") Dim StringParsingError: Set StringParsingError = BrowsePathParser.TryParseRelative("/Data.Dynamic.Scalar.CycleComplete", BrowsePathElements) ' Display results If Not (StringParsingError Is Nothing) Then WScript.Echo "*** Error: " & StringParsingError WScript.Quit End If Dim BrowsePathElement: For Each BrowsePathElement In BrowsePathElements WScript.Echo BrowsePathElement Next
Copyright © 2004-2023 CODE Consulting and Development, s.r.o., Plzen. All rights reserved. Web page: www.opclabs.com
Send Documentation Feedback. Resources: Knowledge Base. Technical support: Online Forums, FAQ.