Professional OPC
Development Tools

logos

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.

How to use minimumQuality in WaitForMultipleItemValues

More
09 May 2023 08:53 #11731 by support
Hello.

Ad 1. Yes.

Ad 2. If you were using .NET, there are multiple overloads of the WaitForMultipleItemValues, which would allow you to omit extra parameters. But all they do is just transform the input arguments, and the core functionality is still available in VB6. In most cases (including probably your case), you need to wait for a Good quality (that one has numerical value at least 192). So, for the second argument to the method (minimumQuality), you need to create a DAQuality object and set its InternalValue (opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%2...s.DAQuality~InternalValue.html ) to 192, and pass this object as the second argument to WaitForMultipleItemValues .

Ad 3. I am not sure if I understand the question. The items are being processed in parallel, not one by one. So the timeout is "per item" and, and the same time, for "all the items". And there is no "reading". The method establishes a subscription to all these items, so that it can obtain not just a one-time value, but also the subsequent changes (beware that this is much more demanding, performance-wise, that a simple read). If all items are known the have the sufficient quality before the timeout elapses, the function returns. If at least one item does not have it, the function will return after the timeout elapses, and the items that do not have the sufficient quality will have an error indication in the return array.

Some documentation: opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%2...ng%20for%20OPC-DA%20Items.html

Best regards

Please Log in or Create an account to join the conversation.

More
09 May 2023 02:18 #11728 by mlebelle
I am using the easyDAClient object in a VB6 application.

The function easyDAClient.ReadMultipleItems(arguments) works as expected for reading multiple items from the OPC server.
However sometimes the OPC server/quickopc returns WaitingForInitialData LimitOK (32) and then there is no value returned.

I was reading about the function WaitForMultipleItemValues() and according to the documentation this function is the same as ReadMultipleItems() with some additional parameters. I have a question about these parameters.

1. The first parameter of WaitForMultipleItemValues() is ItemGroupArgumentsArray. I guess that I can use the same variable/parameeter that I am using in the exiting ReadMultipleItems. Is that correct?

2. The second parameter of WaitForMultipleItemValues() is MinimumQuality. Can you please show how this parameter looks like (the value) if I want to avoid "WaitingForInitialData LimitOK (32)" errors.

3. The third parameter is the timeout in milliseconds. Is that the time out per item or the time out for reading all items?

So I will call WaitForMultipleItemValues(arguments, ???, 5000)

Thanks in advance for your support

Please Log in or Create an account to join the conversation.

Moderators: support
Time to create page: 0.077 seconds