Differences in propagation behavior of object wizard overrides between releases
- Last UpdatedJan 16, 2025
- 3 minute read
This section describes several areas where differences in Object Wizard propagation exist between releases of Application Server, specifically, between Application Server 2023 and subsequent releases, as compared to prior releases. Changes were made to Application Server 2023 to provide a more predictable developer and user experience by modifying how Object Wizards configurations propagate to better align with the behavior that most users expect to see.
Deleting a Choice Group or Association in a Parent Template
The propagation of override values from a parent template with an Object Wizard to its child instances, as related to both dynamic attributes and extensions, can vary between releases. Prior to Application Server 2023, deleting a Choice Group, Option, or removing an attribute association in the Object Wizard would be propagated only partially to the child instances.
Note that overrides made within the instance, and not at the template level, are retained. This behavior remains constant between releases.
As an example of varying behavior, two different attributes are assigned to two different Choices within a Choice Group:
-
Attribute A_1 is assigned to Choice 1
-
Attribute A_2 is assigned to Choice 2.
-
The values of both attributes are overriden in the template.
-
The override values are propagated to a child instance.
-
The Choice Group is deleted in the template.
As of Application Server 2023, both attributes in the child instance revert to their initial values, and the overrides are discarded. This is the behavior that most customers expect.
However, in prior releases, only attribute A_2 reverted to its original value, and attribute A_1 retained the override value. This behavior could cause some confusion, and has therefore been changed in Application Server 2023. Now, once the association or Choice Group containing the overriden value is removed from the parent template, all affected attributes in child instances revert to their values as defined within the template object in the Attribute Editor.
Resetting an attribute override in a parent template
A similar difference between releases exists when a dynamic attribute override is reset in the parent template. Continuing with the previous example:
-
Attribute A_1 is assigned to Choice 1
-
Attribute A_2 is assigned to Choice 2.
-
Assign an override to the description for each Choice in the wizard override settings.
-
After saving the parent template to propagate the overrides to the child instance, reset the descriptions in the wizard override settings (select the X in the Settings pane for both attributes).
As of Application Server 2023, both description attributes in the child instance are deleted (attribute A_1.description and A_2.description no longer exist in the child instance). Again, this is the behavior that most customers expect.
In prior releases, the description attributes remain in the child instances; only the value value was removed.
Changing IO mode in a parent template
All the settings in the derived templates are preserved, even if settings are changed in the parent template. This is existing behavior. However:
-
If the child has IO Mode set as Read-Write, and
-
If ‘Output every scan’ in the parent set to true
As of Application Server 2023, child instances have “reflect input to output” set to true. In previous version this was set to false.
Visibility changes in child objects
In some circumstances, the visibility of a Choice Group in derived objects could change unexpectedly if you override an attribute setting for one of the choices in the parent template. This change in visibility status can occur in both child templates and instances. This unexpected behavior can occur if you derive a template from an Object Wizard, and then override a setting and change a default choice. While changing a default choice automatically hides the Choice Group, even making the Choice Group visible again by overriding the visibility setting may not correctly propagate to child objects (both templates and instances) if an attribute setting has also been overridden. As a result, the Choice Group in derived objects may not be visible, even though it is set to be visible in the parent template.
This behavior is corrected in Application Server 2023 to ensure that Choice Group visibility remains consistent between the parent and child objects.