[Question] ClientTagManager, How to read all tag's properties

In Ignition 7.9, with the ClientTagManager,
we could read tag’s properties values with TagManager::getTags()
and Tag::getAttribute(tagProp)

In Ignition 8.0, getTags doesn’t exist anymore.
How to access to Tag object from TagPath ?

Perhaps, we have to use ClientTagManager.readAsync with a tagPath.property ???
or there is another function to collect all tag’s properties values from a Tag ???

If you’re simply looking for the structure of the tag, I believe that you are looking for system.tag.getConfiguration().

If you’re attempting to read/write from a tag, please continue reading below.

All tag reads and writes in 8.0 need to be Async, because of the potential for delay due to the network part of the information chain. If you have a Session open and you use a script to request a tag value, you do not want to pause the session while the request is sent to the Gateway and then returned - in extreme cases, requests could take several seconds.

This is where the callback function of readAsync and writeAsync becomes important: you must define what to do with the requested value (or what to do with the quality code of the write request). This callback function is where you should define any property you would like updated with the requested value.

1 Like

Yes I’m looking for the tag configuration, especially the tag’s attributes/properties (for exemple .engUnit, .engLow, …) but from the SDK.
In Ignition 7.9, from the sdk, ClientTagManager.getTags(…) enable to return a Tag object and the getAttribute method provide the attribut value.

I try to upgrade a third party module which use ClientTagManager.

Looking at the meager Javadocs, it looks like you’re on the right path. Use readAsync, construct TagPaths that point to a tag’s property (look at BasicTagPath constructor that takes a Property).

There’s some common tag props defined in CommonTagProps.

http://files.inductiveautomation.com/sdk/javadoc/ignition80/8.0.0-beta/index.html

2 Likes

You can also getTagConfigsAsync from the provider, if you already have it.

1 Like

I’ll try asap getTagConfigsAsync