Hi. I’m designing a software to monitor some variables of five buildings, to do it I create a UDT that contains all the tags that I need to monitor. To make the navigation more efficient the software have buttons that open popup windows with the displays that shows the values, I pass a parameter to this windows, the parameter is a UDT type parameter so when I bind a display to a value I do that through a property binding. But I need that each display open another popup window to show more information like the quality of a tag within the UDT, but I only pass the UDT type parameter to this windows and this don’t allow me to access the dot fields of the tags within the UDT, I also need this new Popup windows be dynamic to use only one window to show the information for different tags. How can I do that?
This user also sent an e-mail in to support, but for those interested in how to do this:
You can use the meta tag from the UDT to get the tag path (window.UDTproperty::Meta.TagPath) and pass that to the next window you are opening. With that tag path, you can access the meta properties using an indirect binding.
How do you pass a UDT type parameter to a window?
I have a window with a parameter on the root container that is of my UDT type. I then have a template on that window that takes the same UDT type parameter. I bind the Template UDT parameter to the window’s root container UDT parameter.
Then I have a button on a menu bar that I configure to “open” the window, and I need to pass a UDT tag instance to the window (the parameter that I created on the root container). However, the “Pass Parameters” box only lets me choose a component property for the parameter, or to just enter text. How do I pass an actual tag instance to the window? I tried just entering the path to the tag, but that did not work? Thanks.
Unfortunately, you can’t get the UDT data type value by reading a tag in a script. You have to have a property on the main window or template that is the UDT that you can pass into the popup window.
Usually people will add a custom property that is bound directly or indirectly to a tag and they use that to pass into the window.