I am new to ignition and need to know how duplicate a view and keep all the indirect links active. I have many refrigeration units that will use on of 5 different views, only slightly different by a solenoid or two.
I recommend the "Views as Templates" section at Inductive University in case you haven't seen it.
The video Andrew linked will be useful.
There are two obvious options to me that you have:
- Create a single View that is used as a template. As part of this, you should have a custom prop on the View that holds the tag path to the refrigeration unit. Then every relevant tag binding on the page should use this in an indirect tag binding to retrieve the correct device/tags from the refrig unit. Use the
isAvailableexpression function from the Ignition Extensions module (Ignition Extensions - Convenience utilities for advanced users - I would highly recommend this!) on the
visiblemeta prop to show/hide devices that may not be on all refrig units. (You can use the
isGoodfunction available as standard, but this is a bit dodgy since the devices will be hidden if the tags are valid, but have errors like configuration errors, etc.
trueif the tag is both not "Bad_Disabled" and not "Bad_NotFound")
- If there are too many differences, it may be better to create multiple templates, or one View for each refrig unit. If this is the case, develop the Views in the same way as above, using a custom View prop to hold the base tag path to the refrig unit. This makes it far simpler to change it later on.