# Display values from tags in table form

**URL:** <https://forum.inductiveautomation.com/t/display-values-from-tags-in-table-form/11331>\
**Category:** General Discussion\
**Created:** [March 8, 2016, 10:27pm UTC](https://forum.inductiveautomation.com/t/display-values-from-tags-in-table-form/11331 "2016-03-08T22:27:16Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![richardNZ15](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/richardnz15/32/33373_2.png) [@richardNZ15](https://forum.inductiveautomation.com/u/richardNZ15)\
**Post date:** [March 8, 2016, 10:27pm UTC](https://forum.inductiveautomation.com/t/display-values-from-tags-in-table-form/11331/1 "2016-03-08T22:27:16Z")

</div>

Hi I am trying to read in an array of 100 values from the PLC. I have built tags for each element of the array, and are able to read the values OK.

How can i easily display these tags in an table form in such a way that i do not have to manually enter tags 100 times?

I have tried using the table component, And was hoping to do a cell update binding on the table. I am able to display the value of the tag (INT) on the table if i manually set up the cell binding. However I don’t know how to automate the process for 100 tags.

Can i somehow paste in a bunch of cell bindings from Excel? I managed to copy out the cell binding into excel, but cannot seem to copy back into Ignition power table cell update. I have attached two images to describe what i mean. Thanks

---

<div class="post-metadata">

**Author:** ![jpark](https://avatars.discourse-cdn.com/v4/letter/j/a88e57/32.png) [@jpark](https://forum.inductiveautomation.com/u/jpark)\
**Post date:** [March 9, 2016, 11:57pm UTC](https://forum.inductiveautomation.com/t/display-values-from-tags-in-table-form/11331/2 "2016-03-09T23:57:38Z")

</div>

Create a template to display 1 “row”.  
The use a template repeater to display the 100 templates.

Or if you want to use scripting, have a script that reads all 100 values and creates the dataset.

---

<div class="post-metadata">

**Author:** ![richardNZ15](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/richardnz15/32/33373_2.png) [@richardNZ15](https://forum.inductiveautomation.com/u/richardNZ15)\
**Post date:** [March 10, 2016, 1:35am UTC](https://forum.inductiveautomation.com/t/display-values-from-tags-in-table-form/11331/3 "2016-03-10T01:35:35Z")

</div>

Thanks for the reply. Yes I have tried and successfully got it working with a template repeater. Because you are able to copy the template dataset to excel, do some excel magic, and paste it back into the template repeater.

I feel like a table would be a neater way to approach this though. What kind of scripting would be required for generating dataset data of a table?

I have found i can set a value of a cell (row 5, col 1) in the table via:

[color=#0000FF] newData = system.dataset.setValue(self.data, 5,1, 66.6)  
self.data = newData[/color]

But nothing seems to happen when i try reading in a tag and setting the value with:

[color=#0000FF] value = system.tag.read(‘temp/testReal2/value’)  
newData = system.dataset.setValue(self.data, 5,1, value)  
self.data = newData[/color]

Is there some different syntax needed when using a tag read?

This is all scripted under the Power Table Extension Function - initialize.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [March 10, 2016, 2:02am UTC](https://forum.inductiveautomation.com/t/display-values-from-tags-in-table-form/11331/4 "2016-03-10T02:02:59Z")

</div>

[quote=“richardNZ15”]But nothing seems to happen when i try reading in a tag and setting the value with:`value = system.tag.read('temp/testReal2/value')
newData = system.dataset.setValue(self.data, 5,1, value)
self.data = newData`Is there some different syntax needed when using a tag read?[/quote]Yes. Tag reads never give you the plain value. They always return an object of type [QualifiedValue](https://docs.inductiveautomation.com/display/DOC/system.tag.read), which contains properties for the actual value, the quality code, and the last timestamp. Change your code above like so:`value = system.tag.read('temp/testReal2').value
newData = system.dataset.setValue(self.data, 5,1, value)
self.data = newData`Note the placement of .value after the closing paren.

---

<div class="post-metadata">

**Author:** ![19tb21](https://avatars.discourse-cdn.com/v4/letter/1/0ea827/32.png) [@19tb21](https://forum.inductiveautomation.com/u/19tb21)\
**Post date:** [November 1, 2018, 4:29pm UTC](https://forum.inductiveautomation.com/t/display-values-from-tags-in-table-form/11331/5 "2018-11-01T16:29:21Z")

</div>

sorry to bring up an old thread, but it is unclear to me how I am actually binding a tag value to a given row/column after I have read it in? do I run this as a project script somewhere, create a multidimensional array and then just bind the whole dataset in the “Data” property?

---

<div class="post-metadata">

**Author:** ![richardNZ15](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/richardnz15/32/33373_2.png) [@richardNZ15](https://forum.inductiveautomation.com/u/richardNZ15)\
**Post date:** [November 2, 2018, 3:44am UTC](https://forum.inductiveautomation.com/t/display-values-from-tags-in-table-form/11331/6 "2018-11-02T03:44:22Z")

</div>

I think what i ended up doing here was reading all the values via scripting and creating a dataset.  
Then i wrote that dataset to the table.data property.  
I then initiated the script on a button click, but you could do it with a timer component provided you are sure it will not hang the system
