The administrator creates allowed value definition (the allowed value type) from the Fields & Layouts tab on the administration menu, click Allowed Value Types and Combinations. The administrator also creates the allowed value combinations from within the same utility. The administrator can configure list type fields such that end users may add new values to a list (the ADD_NEW layout cell attribute). See the section at the end of this page regarding the configuration of allowed values when an end user adds a value to a list field. The following screen appears when the administrator uses the Allowed Value Types and Combinations utility:
Allowed Value Types screen
To create a parent-child dependency:
Note: On occasions, you might want to create an allowed value list where only a subset of the values in the list will appear. For example, you might have retired some of the values in the child list and only want current values to appear. You can achieve this by using the AREA field as the parent, and the list field as the child.
New Allowed Value Type
There are three methods that can be used:
The same field may be used as a parent to more than one child field by creating more than one allowed value type. Each of these allowed value types may have any one of three refresh types. When a parent field is changed by a user on an add or edit screen, only one of the above three methods can be used. Which method chosen is decided as follows:
It is possible to construct allowed value relationships that “cascade”, i.e. you define a parent – child relationship for one pair of fields, and then define a second parent – child relationship where the parent is the child of the first relationship. This forms a grandparent – parent – child relationship between three fields. The data dictionary display type for all the fields must be List, Popup or Tab. Other display types will not work.
The child field select list will always show only * None * as a possible value, until both the grandparent value and the parent values have been selected. If you alter the metadata associating the allowed values, in such a way that editing a record causes a child record to be invalid, a warning will be displayed by ExtraView, informing the user that the child value is no longer valid. The invalid value is still displayed at this time though. If the user alters the values of the grandparent or parent, the invalid value in the child field will no longer be displayed.
It is strongly recommended that you only use this feature when there is a single parent to all the children within a list and the lists are not excessively large. You may use the feature with cascading allowed values, but all the individual allowed value relationships must set the Enable reverse allowed values checkbox. When reverse allowed values are enabled, ExtraView initially fills all the fields in the allowed value relationship with all the parent values and all the child values. When a user selects any value in any of the fields in the allowed value relationship, the remaining fields are all filtered, both parents of the selected value and children of the selected value.
For example, if you have an allowed value relationship with a parent and child field, the user may then select a child value and the appropriate parent is then selected. If there is a cascade of three fields, and the user chooses a value in the middle field list, then the value in the parent field is selected. The child values in the third field list are then filtered to only display the valid children for the second field.
When a user selects a parent, then all child fields are filtered as with regular allowed value lists.
If the user selects * None * in any list within the allowed value relationship and reverse allowed values are enabled, then all fields in the allowed value list are reset to their initial values.
For reverse allowed values to work, all the fields in the entire chain of allowed values must be on the layout, and must all have read and write permission. This includes using reverse allowed values on a report or Quicklist layout.
One parent field may be the parent to multiple child fields. When you set up layouts with this scenario, you may also use JavaScript refresh to maintain the lists for users, provided that there are no more than 10 child fields for the parent. In the very rare and exceptional circumstance that you need more than 10 child fields to a single parent, then server-side refreshes will still work, and with no restriction on the number of child fields to a single parent.
You may create two or three allowed value relationships for the one child field, with different fields as the parent field. When you create this scenario you individually populate the allowed children for each of the parents in their respective allowed value lists. When you include the two or three parent fields and the one child field on the same add or edit screen, then the children that are visible will be those that have common parents. If a child value only has one of the parent fields as an allowed value, the child will not be displayed and it is not a valid selection. If only one parent and the child exists on the add or edit screen, then this combination will work correctly as the simpler single-parent allowed value combination. The parent and child fields used for this combination must all be enumerated lists with a display type of List, Popup, Tab, Checkbox, or Radio button. User display types are not supported at this time. Note that you should not use JavaScript refresh for an allowed value with multiple parents.
The ADD_NEW layout cell attribute controls the ability of an end user being able to add a new value to a list on the add or edit screens. If a field with this layout cell attribute is the child in an allowed value relationship, there is control over the behavior of adding the new field value as a child of the allowed value relationship. The control is achieved through a behavior setting named AUTO_POPULATE_ALLOWED_VALUES. When this setting is YES, then in a popup from an add or edit screen that adds a new value to a list, and that list is the child within an allowed value relationship, then the new value will be added to the list and will be automatically added to the currently selected parent(s). If the value is NO, then the user will be prompted to select the Business Area, Project and the specific parent values to which the newly created child value will be added within the allowed value relationship.