Scan class execution duration and ways to know if it has complete execution

Hi all,

Was wondering if it's possible to know if a scan class has complete it's execution. I have several tags on a 'one-shot execution' driven scan class which is driven by user demand. As currently this scan class execution duration is around 70 seconds and I am reading these tag values in a script then combining them with data from a database to display in a power table, I'd like to know once all the tags have been updated before reading the tags. I could look at one of the tag's 'last changed' timestamp however if there hasn't been a value or quality change the timestamp wouldn't change either.

Below is a screenshot of the scan class execution stats.

The other questions is that with the same number of tags on a normal direct scan class, the execution duration is only around 23ms. These tags are from 100 or so device drivers and I am only reading 2 or 3 values from each device. Is this due to the 'one shot' execution that each scan is a complete new scan of the tags so it takes longer?

image

The Ignition version for this gateway is v7.9.8.

Many thanks.

I've never found one-shot execution particularly useful, unless the only purpose is to lazily deliver the new values for display on a UI.

For any other purpose, you should be use system.opc.readValues(), not Ignition tags.