Question about best practices with tag mappings


Recently other people here have started programming in Ignition. These people are used to programming Rockwell PanelView HMI screens.

My question is about where to do the tag mappings. I have gotten into the habit of doing most mappings into root container custom properties usually with indirect tags. They on the other hand are mapping tags directly in the components that are utilizing the tags even if multiple components use the same tag.

I do it my way from having to rearrange things and trying to track down all the tags down in all the components when I first started doing Ignition HMI screens. Which I’d do totally differently now.

They do it their way because that is the way PanelView works.

Which way is preferred and why?

Thank you,

Short answer: There’s no preference at a platform level.

Long answer: Some things ought/need to be root container properties. If you want to parameterize a window, you must make the parameters properties of the root container. In addition to those, I generally put query bindings on a container instead of components so that it is easy to use that data in multiple places without incurring extra gateway traffic. This consideration doesn’t apply to tags–extra subscriptions don’t appear to generate any extra traffic.

I always bind input fields directly to tags at the component level, as they often need to be set to bidirectional.