Programming Parent Tags

The following information describes an older technology. With rare exceptions, Parent-Child tag structures created using the Tag Browser should be used instead of programmed parent tags.

Parent tags are a user-created tag type that will generate a set of related tags (child tags) with each new instance. They are typically used in applications that have a series of devices such as generators or lift stations where each instance will use a similar port, driver, I/O tag set, etc.

The tag that represents the generator or lift station as a whole is referred to as the "parent tag", while the various dynamically-generated tags are referred to as the "child tags". The child tags are created by way of calls to the StartTag function. Their parameters do not exist within the tag properties database, except in the case where the developer subsequently overrides those properties.

Because the child tags are created automatically by each parent, it becomes a simple task for developers to add new lift stations or other objects to the application.

Parameterized pages can be created that accept an instance of a parent tag as the parameter, then automatically link all of the monitoring and control features within the page to the child tags. Parent tag structures are most useful when there is a clear pattern to the child tag parameters from one instance to the next. It should be possible to calculate or copy each child tag's parameters from its parent's configuration.

Child tags and their properties are not stored in the tag properties database. The exception to this rule is that overrides to properties are stored in the tag properties database. Parent tags and all of the child tags will be listed in the Tag Browser and their properties may be edited there.

 Although child tags do not store their parameters in the tag properties database, they do count towards the tag limit as set by your VTScada license.

Overrides to child tag values will remain in effect and be distributed to all stations running the application. Overridden fields in the configuration panel will turn orange instead of green (subject to the application property, ParmOverrideColor). You can also right-click on a child tag's configuration panel field and select "Add Override" from the pop-up menu.

Right-clicking and selecting "Remove Override" is the only way to return to the property value defined in code - simply deleting the value will set it to an override value of Invalid, rather than removing the override.