Re-configuring tags in Ignition scripting or “Edit (raw)” GUI while they are bad/stale causes them to lose their bad/stale status. This is not what I was expecting when just trying to adjust alarm or history settings on a tag. I would expect the value should stay stale.
Here’s a short snippet of code to reproduce the issue. Running on Ignition 8.0.9.
# A tag that is currently stale under MQTT engine
stale_tag = '[MQTT Engine]Edge Nodes/sfdev/352656100817959/Dev1/DIN1 Flow Total'
tag_directory = '[MQTT Engine]Edge Nodes/sfdev/352656100817959/Dev1'
# Read the tag before configuring ... will show Bad_Stale
before_tag_read = system.tag.readBlocking([stale_tag])[0]
# Read/write the tag configuration without any changes
tag_config = system.tag.getConfiguration(stale_tag, False)
system.tag.configure(tag_directory, tag_config, 'o')
# Read the tag after configuring ... will show Good
after_tag_read = system.tag.readBlocking([ stale_tag ])[0]
before_tag_read.getQuality()
after_tag_read.getQuality()
If you run that in a scripting console on a tag that was previously showing stale, the final two lines of output will be:
Bad_Stale
Good
If this isn’t a bug, is there a recommended method to adjust a tag’s configuration without losing the quality?