- Posts: 345
- Thank you received: 4
Online Forums
Technical support is provided through Support Forums below. Anybody can view them; you need to Register/Login to our site (see links in upper right corner) in order to Post questions. You do not have to be a licensed user of our product.
Please read Rules for forum posts before reporting your issue or asking a question. OPC Labs team is actively monitoring the forums, and replies as soon as possible. Various technical information can also be found in our Knowledge Base. For your convenience, we have also assembled a Frequently Asked Questions page.
Do not use the Contact page for technical issues.
- Forum
- Discussions
- QuickOPC-Classic in .NET
- Browsing, Browse Dialogs and Controls
- FSGateway OPC server browsing issue
FSGateway OPC server browsing issue
Thank you for your answer.
See our browsing code below.
Form1.DaItemDialog1.ServerDescriptor.MachineName = server_properties.server_comp_name
Form1.DaItemDialog1.ServerDescriptor.ServerClass = server_properties.RealServerName
If Form1.DaItemDialog1.ShowDialog() = DialogResult.OK Then
TagName = Form1.DaItemDialog1.NodeElement.ItemId
'Dim varType As VarType = easyDAClient.GetDataTypePropertyValue("", "OPCLabs.KitServer.2", "Simulation.Random")
Dim value As Object = Nothing
Dim exception As Exception = Nothing
Try ' Catch the exception May-29-2017
value = easyDAClient.GetDataTypePropertyValue("", server_properties.RealServerName, TagName)
Catch ex As OpcException
exception = ex
sTagType = ""
DisplayOPCException(exception)
End Try
EnableNativeClient is set to 'false' .
Thank you.
Michael
Please Log in or Create an account to join the conversation.
I do not know the cause, but one thing is for sure: In what you have reported before, the browse dialog was using the NET API client implementation. The error below indicates the usage of Native client implementation. While mixing the two approaches in one program is possible, it is not recommended. If you are setting the EnableNativeClient to 'false' (I might have recommended that earlier), it should to be done consistently in the whole program, at every place that creates either the EasyDAClient, or any of the browse dialogs/controls, in the corresonding property of the newly created instance.
Also - and that might be just imprecise formulation - I have problem with you writing "the following crash is observed using try-catch". The GetMultiplePropertyValues method does (should) *not* report operation errors by throwing an exception. It reports them by returning a non-null Exception object in the elements of the result array. If you wanted to state that a try-catch is needed to handle operation errors from this method, send me the related piece of code, because there is something seriously wrong either with your code, or our code.
Regards
Please Log in or Create an account to join the conversation.
I have downloaded QuickOPC 2021.3 build 503.1 and used it in my product. I can browse now, but the following crash is observed using try-catch. See the attached screen capture.
Can you please advise?
Thank you.
Michael
Please Log in or Create an account to join the conversation.
this is now fixed in QuickOPC 2021.3 build 503.1 or later, available for download from our Web site.
Best regards
Please Log in or Create an account to join the conversation.
Thank you for your answer. Currently we are using version 2021.2. If you can provide a fix in version 2021.3 this will be great.
Thank you.
Regards,
Michael
Please Log in or Create an account to join the conversation.
This appears to be a problem in QuickOPC. That you for reporting it.
Apparently you are using version 5.61 (2021.2).
We can fix the problem either relatively quickly in the current version, i.e. 5.62 (2021.3). Or, into the upcoming version 5.63 (2022.1) - it may be couple of months before it is released. Version 5.61 cannot be fixed.
Let me know if you need the fix into 5.62 (2021.3).
Best regards
Please Log in or Create an account to join the conversation.
We have a customer who is having a problem when browsing for items. The OPC Server is Wonderware FSGateway. See the attached screen capture and the exception details below.
com://192.168.10.12/ArchestrA.FSGateway.2
Exceptions
Type: OpcLabs.BaseLib.Browsing.BrowseException
Data:
HelpLink:
HResult: -2146233088 (0x80131500)
InnerException:
OpcLabs.BaseLib.Navigation.Parsing.BrowsePathFormatException: Browse path format error: The browse name is invalid.
The string to be parsed: "ControlSystemStatus.PLCPowerLoss".
Symbolic code: InvalidBrowseName.
+ The client method called (or event/callback invoked) was 'BrowseNodes'.
? OpcLabs.BaseLib.Navigation.Parsing.BrowsePathParser.Parse(String value)
? OpcLabs.BaseLib.Navigation.BrowsePath.Parse(BrowsePath basePath, String value)
? OpcLabs.BaseLib.Navigation.BrowsePath..ctor(BrowsePath basePath, String value)
? OpcLabs.EasyOpc.Implementation.NetApi.DataAccess.NetApiEasyToOpcNetApiDa.ToDANodeElement(BrowseElement element, BrowsePath basePath, OpcTechnologies technology, Boolean isBranch, Boolean isLeaf)
? OpcLabs.EasyOpc.Implementation.NetApi.DataAccess.NetApiEasyToOpcNetApiDa.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
Data:
OpcLabs.EasyOpc.Implementation.NetApi.NetApiErrorHarmonization.Processed: True
OpcLabs.EasyOpc.Implementation.ErrorEnhancement.Processed: True
OpcLabs.EasyOpc.Implementation.DAErrorEnhancement.Processed: True
Format Error: The browse name is invalid.
Code: InvalidBrowseName
CodeType: OpcLabs.BaseLib.Navigation.Parsing.BrowsePathFormatErrorCode
InnerException:
Message: The browse name is invalid.
HelpLink:
HResult: -2146233033 (0x80131537)
InnerException:
Message:
Browse path format error: The browse name is invalid.
The string to be parsed: "ControlSystemStatus.PLCPowerLoss".
Symbolic code: InvalidBrowseName.
+ The client method called (or event/callback invoked) was 'BrowseNodes'.
Source: OpcLabs.BaseLib
StackTrace:
? OpcLabs.BaseLib.Navigation.Parsing.BrowsePathParser.Parse(String value)
? OpcLabs.BaseLib.Navigation.BrowsePath.Parse(BrowsePath basePath, String value)
? OpcLabs.BaseLib.Navigation.BrowsePath..ctor(BrowsePath basePath, String value)
? OpcLabs.EasyOpc.Implementation.NetApi.DataAccess.NetApiEasyToOpcNetApiDa.ToDANodeElement(BrowseElement element, BrowsePath basePath, OpcTechnologies technology, Boolean isBranch, Boolean isLeaf)
? OpcLabs.EasyOpc.Implementation.NetApi.DataAccess.NetApiEasyToOpcNetApiDa.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
TargetSite: OpcLabs.BaseLib.Navigation.BrowsePath Parse(System.String)
DeclaringType: OpcLabs.BaseLib.Navigation.Parsing.BrowsePathParser
Module: OpcLabs.BaseLib.dll
Assembly: OpcLabs.BaseLib, Version=5.61.284.1, Culture=neutral, PublicKeyToken=6faddca41dacb409
CustomAttributes:
FullyQualifiedName: C:\Program Files (x86)\Control-See\UCME-OPC\BIN\OpcLabs.BaseLib.dll
MDStreamVersion: 131072
MetadataToken: 1
ModuleHandle: System.ModuleHandle
MDStreamVersion: 131072
ModuleVersionId: 75ae4e85-0a4b-40f4-8fe5-bed9dceb2e6d
Name: OpcLabs.BaseLib.dll
ScopeName: OpcLabs.BaseLib.dll
Message: Problem browsing OPC Data Access (OPC-DA) leaves.
Source:
StackTrace:
TargetSite:
I appreciate your help.
Thank you.
Michael
Please Log in or Create an account to join the conversation.
- Forum
- Discussions
- QuickOPC-Classic in .NET
- Browsing, Browse Dialogs and Controls
- FSGateway OPC server browsing issue