Dependent Picklist

From AgileApps Support Wiki

A Dependent Picklist provides a list of choices, where the available options are determined by some other value.

About Dependent Picklists

A Dependent Picklist can be based on a set of Radio Buttons or a standard Picklist. The value of that field is the triggering value. When that value is present in the record, or when the user selects a value in that GUI, the value determines which options are present in the Dependent Picklist.

For example, suppose you have a request management system for a software application. In that application, you might set up radio buttons to specify the kind of request: Software (coding) or Documentation. A Dependent Picklist could then be used to set up a different set choices for each kind of request:

Kind of Request Request Type
Software
  • Bug Report
  • Feature Request
Documentation
  • Bug Report
  • New Feature Writeup
  • Documentation Enhancement
    (for a new document, for example, or an improvement)

A single Request Type field can then be used for each kind of request, with an appropriate set of choices for each kind.

Learn more: Enumerated Fields
Considerations
  • A field cannot be deleted if it is the triggering value for a dependent field.
  • If the triggering field for a dependent field is changed, a message appears telling you that data will be lost if the change is executed. Confirmation is required to proceed.

Adding a Dependent Picklist

This is a four-step process:

  • Create the triggering field (also known as the parent field).
  • Create the dependent picklist.
  • Specify the complete collection of options that will be available.
  • For each possible triggering choice, specify which of the available options appear in the dependent picklist.

To add a dependent picklist:

  1. Create a triggering field with one of the following types, and add values to it:
  2. Create a new field of type Dependent Picklist
  3. Fill in the basic field settings:
    Label
    The field label that will be displayed
    Display Type
    Dependent Picklist
    Parent Field
    • Select the "parent" field (the triggering field)
    • Enter the picklist values
    Maximum Storage Length
    Specify a number of characters that is equal to or greater than the size of the longest value-string that can be selected. Otherwise, a Data Truncation Error may occur at runtime.
    Show First Value as Default
    This setting causes the first value in the presented list of values to be the default. Otherwise, there is no default.
    Sort List Alphabetically
    This setting causes the values in presented list to be sorted alphabetically. Otherwise, they are displayed in the order defined in the Manage Values section.
    Tip:
    It is the values that are sorted, not the display labels. A common practice is to add numbers to the values so the entries display in the order you want them.
    (The remaining attributes are standard Field properties.)
  4. Click [Save]
    A new section appears: Enumerated Values.
  5. In the new section, click [Manage Values]
  6. Specify the entire collection of possible values.
    In the example given above, the list would consist of:
    • Bug Report
    • New Feature Request
    • New Feature Writeup
    • Documentation Enhancement
  7. Click [Save]
    A new section appears: Dependent Picklist Assiciations.
  8. In the new section, click [Add Associations]
  9. In the Parent Values field, select one of the triggering values.
    Two list boxes appear.
    Note: Field values are shown, not their display labels.
  10. Move items from the Available Items list to the Selected Items list.
    Selected items appear as options in the dependent picklist, for that particular triggering value.
  11. Click [Save]
  12. Repeat the last few steps to add additional associations for each of the possible triggering values.
    Learn more: Enumerated Fields#Manage and Reorder Values