Ignition 8.1.39
@paul-griffith
When a Memory Document Tag or Memory Dataset value is modified from the designer Tag Browser, the Timestamp is not updated.
is it bug or the expected behavior ?
With the same tags, writing a value with system.tag.writeBlocking, update the Timestamp.
This appears to be an intentional optimization, where only the single part that's modified is actually sent over the wire from the designer, and then the dataset on the gateway side can be updated in-place instead of having to construct an entire new dataset.
Ok I see. I wanted to use Timesramp property to detect some change on dataset and document tags...
But this is a designer optimization. Are you seeing this at runtime?
Posting my observations here.
- When updating document tag from Designer Tag Browser, I also do NOT see the timestamp update.
- When I bind to a key of a document tag from within a Perspective view, then update the value of the key, the timestamp DOES update.
- The following (executed from script console) does NOT update timestamp:
document = system.tag.readBlocking([tagPath])[0].value.toDict()
print system.tag.writeBlocking([tagPath], [document])
- Modifying the dictionary before writing it back DOES update the timestamp:
document = system.tag.readBlocking([tagPath])[0].value.toDict()
document['pickle'] = 'onion'
print system.tag.writeBlocking([tagPath], [document])
It appears timestamp updates whenever value changes, unless done via Tag Edit.