Dynamic Cell Update Binding - UDT

Hi everyone.

In the Ignition I have a “Power Table” that is filled by a script.

The script read the Tags inside a folder and in the first column insert the tagpath (one tagpath by row).
Now I need to insert the values in the other columns for each tagpath, but I don’t want to binding the values manually (cell binding) and I need a dynamic update (auto-update).

I can create a script that read a tag and insert the value in the table, but I don’t like this method.
Can I binding the values as I bind an indicator (for exemple LED Indicator) to an UDT? And this UDT use the tagpath to pick up the values?

If you don’t mind me asking, could you provide that script for me? I posted a thread a couple of days ago similar to this, and this sounds exactly like what I need, although I feel as there is another way to do this as well.


Searching for the solution as well.
A table to follow the evolution of some selected tags in client would be nice for sure (I only have the selected one currently with a simple label on the selected row).

I did it using system.tag.browseTags and system.dataset.addRow.

Just had an idea that seems to work for me:
I use a custom methods taking the tag path and filling the other cells with the value I need (the method return a new dataset at the end). I call this methods from an expression bind on the data of the table with a pollRate of 1s.

Hello @Myllka, @cedric, can you tell my how did you solve this? I’m working on the same thing. Thanks!

a solution could be to use a template repeater

Yes, is a good one, but I need to apply this to a big amount of tags. So I think it’s gonna look better in a table. Thanks!

From what I can tell, the script he’s using creates the table dataset from scratch and then he simply binds this dataset to the table data property.
e.g. the script will create a dataset with the same field columns as in the dataset in his screenshot:
tagPath | Select | Board | Channel | Group | etc…

Calling it every 1s will then update the values.
I presume that the script is within a library and that it’s called using the expression function: runScript(…)

My question is: does sorting and filtering still work? Or is this reset each time the table contents are updated?