Bug with Template Repeater?

Hello,

I have a [40] element UDT array of (x3) Booleans, and (x1) String that I've been trying to tag up with a template repeater. The UDT is called "Table_B_Manual_Buttons", and the parameters of each element of the array are "Center", "Clamp", "Unclamp", and "Name".

The Booleans are simply going to control pneumatic valves to either fire solenoid "A", "B", or de-energize both.

I made a template with some custom parameters. As you may notice there are other parameters that will be used as feedback to show the state of the valve, "Clamp_Indicator_Tag", etc. I'm not focused on those, because that part has been working.

When i pull a single copy of the template in and directly bind the above tags to the parameters of the template, it all works fine. However, as soon as I try to create a template repeater, and bind the template parameters to a dataset, the Booleans of the forementioned array do NOT work whatsoever. I've triple checked that the column names of the Dataset editor match perfectly to the custom parameters of the template.


I've also triple checked that I'm pointing to the correct tags when binding to the template parameters.

Is this another case of Ignition not playing friendly with an array of Boolean tags?

Thanks!

Your template parameters are the problem. In practice, Vision template parameters are functional only as input parameters. You won't be able to write back to your solenoids with them in a template repeater.

Your template should simply take a string tagpath parameter, intended to supply the folder name/udt instance name containing the expected named inner tags.

Inside the template, using indirect tag bindings to retrieve the values you need, and use bidirectional indirect bindings to make writable solenoids.

Your template repeater simply supplies all of the tagpaths in its dataset.

2 Likes

Thank you @pturmel! I followed exactly what you recommended and it's working perfectly now. I should have dug a bit deeper into the manual on the Template Repeater component to know they are only good for reading values. I appreciate the speedy assistance!

1 Like