Preview Attribute Dependency Enhancements
About This Feature
-
If you use attribute dependencies to link related Drop-Down List or Multi-Select List attributes, you can turn on the Attribute Dependency Enhancements feature to access additional capabilities and improve the user experience of creating activities.
-
The following enhancements are included:
-
Required dependent attributes: Administrators can make the dependent attribute in a dependency conditionally required, so it is only required for certain values in the controlling attribute.
-
UX Improvements when configuring activity attributes:
-
Grouped dependent attribute controls: All attributes that are part of dependencies (or dependency chains) are grouped together in their own section, and users must manually save attribute values they have selected in this section (to ensure all required attribute values are set).
-
Auto-hide attributes: Attributes in the dependencies section only become visible when they are relevant.
-
Auto-select lone attribute options: When a dependent attribute has only one possible option available, the system automatically selects that option.
-
-
-
Together, these enhancements let you build dynamic forms for configuring activity attributes. Dynamic forms are particularly useful for activity types that require a lot of attributes, but where not all attributes are needed in every situation. Here's how these features can help deliver a better user experience:
-
Fields appear only when relevant: Dependent attributes stay hidden until triggered by a specific selection. This minimizes cognitive load for users, and speeds up the process of creating an activity.
-
Fewer manual inputs: When a dependent attribute has only one valid option, the form auto-selects it, eliminating the need for manual input.
-
No unnecessary “N/A” selections: Dependent attributes can be conditionally required, so they're mandatory only when relevant. This means users don't have to spend time selecting “N/A” for irrelevant fields, while ensuring that critical data is collected when it matters.
-
Note
This feature is currently available in Preview, so it is not yet turned on by default in your Uptempo instance. To use this feature, speak with your Customer Success contact about enabling it for your organization.
To learn more about Preview features, see Uptempo's Feature Release Lifecycle.
How It Works
Required Dependent Attributes
When you configure an attribute dependency (in Activity Configuration > Attributes > Attribute Dependencies) you can choose any attribute as the Dependent Attribute that:
-
Is a Drop-Down List or Multi-Select List attribute
-
Appears on at least one activity type where the selected Controlling Attribute also appears
If the attribute you select as the Dependent Attribute is set as required on an activity type where the Controlling Attribute also appears, then it will also be required within the attribute dependency on that activity type.
Note
You set attributes as required by configuring individual activity types, in Activity Configuration > Activities > Activity Types. You can't set dependent attributes as required in the attribute dependency configuration itself, which means it's not possible to automatically make dependent attributes required on all activity types where the dependency appears.
Required dependent attributes are different from standard required attributes because they are only conditionally required. A standard attribute that is set as required must always be given a value. But when a dependent attribute is set as required, it is only required when its controlling attribute is set to an option that makes it relevant.
The controlling attribute in a dependency determines which options in the dependent attribute are valid. Sometimes, certain options in the controlling attribute have no valid options in the dependent attribute. In this situation, the dependent attribute is only required when the controlling attribute is set to an option that has valid dependent options — when the selected controlling attribute option has no valid dependent options, the dependent attribute field is not required (and is not even displayed).
For example, in this case the State attribute is a dependent of the Promotion Type attribute. When the Promotion Type is set to Samples, the State attribute is not relevant, so it's not required:
But when the Promotion Type is set to Coupon, the State attribute becomes relevant, so it is conditionally required:
This ensures that users don't have to select a value for an attribute when it isn't relevant, but don't miss an attribute when it is needed.
Grouped Dependent Attribute Controls
When you create or edit an activity of a type that has one or more attribute dependencies, all of the fields for attributes that are part of a dependency are grouped into their own separate section in the list of attributes:
Within this section, the links between attribute dependencies (and chains of dependencies) are visually represented:
Note
The display order of attributes in an activity is defined centrally in Activity Configuration > Attributes > Attribute Definitions. This display order applies globally across all activity types.
On activity types with attribute dependencies, the attribute dependencies section is inserted into the display order at the position of the first controlling attribute, based on the global order. Because this section also includes all other attributes that are part of dependencies, these attributes may appear higher (or lower) in the display order than they would if they weren’t part of a dependency.
Unlike with standard attributes, when you select a value for any attribute in this section, it is not automatically saved. Instead, you must click Save to manually save the selected values. This helps to ensure that all required attributes have a value. If one or more required attributes in the attribute dependencies section does not have a value set, the indicator icon alerts you to the issue, and the Save button is deactivated until all required attributes have values:
Note
The attribute dependencies section appears in two places: the Details Panel (when you edit an existing activity) and the Details step of the Activity Setup Assistant (when you create a new activity).
The section works the same way in both places, with one exception: the Save button and the missing value indicator icon are not used in the Activity Setup Assistant version. Instead, the Next button of the Activity Setup Assistant works the same way as the Save button in this context.
Auto-Hide Attributes & Auto-Select Lone Attribute Options
To make it easier to configure the attributes on an activity, the attribute dependencies section has two features designed to streamline this process.
When a dependent attribute is not (yet) relevant to the activity being created, it is automatically hidden. This minimizes the number of attributes that are initially visible when creating an activity, and reduces distracting visual clutter.
A dependent attribute only becomes visible after you set the controlling attribute to a value for which the dependent attribute has valid options:
-
If there are no valid options in a dependent attribute, it remains hidden.
-
For dependency chains (multiple linked dependencies), additional dependent attributes are progressively revealed (as needed) after each controlling attribute selection.
In this example, only one attribute is visible initially, but two more are revealed as selections are made:
In some cases, a controlling attribute value has only a one valid option in the dependent attribute. This can happen if an attribute previously had more options that are no longer needed and have been removed, or if you want users to set a value for data consistency.
Whenever you select a value in a controlling attribute that leaves only one possible option in the dependent attribute, the system automatically sets that option in the dependent attribute to save you time and unnecessary clicks.
Examples
The following examples illustrate how these features work in practice:
Example Setup
-
There is a controlling attribute called Channel, which has options like Email, Paid Social, Organic Social, Direct Mail, etc.
-
The Channel attribute has a dependent attribute called Subchannel, which specifies the channel in more detail.
-
The Subchannel dependent attribute is set as required.
Example 1
When the controlling Channel attribute is set to the Paid Social option, only some options in the dependent Subchannel attribute are valid:
-
Valid: Facebook Ads or LinkedIn Ads
-
Not Valid: Sponsored Webinar or Magazine Ad
In this case, the Subchannel attribute is required, and lists only the valid options.
Example 2
When the controlling Channel attribute is set to the Email option, there is only one valid option in the dependent Subchannel attribute: Marketing Email.
In this case, the Subchannel attribute is required, and the Marketing Email option is automatically selected.
Example 3
When the controlling Channel attribute is set to the Direct Mail option, there are no valid options in the dependent Subchannel attribute.
In this case, the the Subchannel attribute is not required, and is automatically hidden.