Quality is always GOOD when using browseConfiguration

We are on version 7.9.12 and I’m trying to get tag quality when using system.tag.browseConfiguration(). I can get the tag value and any of the other TagConfigProps that I’ve tried (except Timestamp), but Quality always returns DataQuality.GOOD even for disabled tags.

Am I misunderstanding what the Quality property is supposed to be or is this property broken?

Also TagConfigProps.Timestamp always returns none.

from com.inductiveautomation.ignition.common.sqltags.model.types import DataQuality
from com.inductiveautomation.ignition.common.tags.config import TagConfigProps
dev = "[default]DEVICES/some_udt_instance"

tags = system.tag.browseConfiguration(dev, False)
for tag in tags:
	print tag.name, tag.getOrDefault(TagConfigProps.Quality)

You can use

tags = system.tag.browseConfiguration(dev, False)
for tag in tags:
	print tag.name, system.tag.read(tag.getFullPath()+'.Quality').value

Thanks MMaynard. That’s more or less the workaround I have been using.

The problem is I’m writing a script that gets info from every tag in a very large system and doing a tag read on every tag greatly increases the execution time of the script.

You can switch it over to a readAll to speed it up

vals = [x.value for x in system.tag.readAll([tag.getFullPath()+'.Quality' for tag in tags])]
print vals

That’s what I;m doing except I just read the tag itself and I have value, quality and timestamp in the qualified value that it returns.

Unfortunately that greatly increases the amount of time it takes to complete such a large scale operation.

I realize that it’s most likely that TagConfigProps.Quality and TagConfigProps.Timestamp are broken in the version we are using.

I’m wondering if this has ever been fixed and if so in what version.

That I will have to leave up to the actual insiders
@Kevin.Herron @Paul.Scott @PGriffith