Overview of Value Sets

A value set is a group of valid values that you assign to a flexfield segment to control the values that are stored for business object attributes.

A user enters a value for an attribute of a business object while using the application. The flexfield validates the value against the set of valid values that you configured as a value set and assigned to the segment.

For example, you can define a required format, such as a five-digit number, or a list of valid values, such as green, red, and blue.

Flexfield segments are usually validated, and typically each segment in a given flexfield uses a different value set. You can assign a single value set to more than one segment, and you can share value sets among different flexfields.

Note: Ensure that changes to a shared value set are compatible with all flexfields segments using the value set.

The following aspects are important in understanding value sets:

  • Managing value sets

  • Validation

  • Security

  • Precision and scale

  • Usage and deployment

  • Protected value set data

Managing Value Sets

To open the Manage Value Sets page, use the Manage Value Sets task. You can also use the Manage Descriptive Flexfields and Manage Extensible Flexfields tasks for configuring a segment, including its value set. To open the Manage Values page, select the value set from the Manage Value Sets page, and click Manage Values. Alternatively, click Manage Values from the Edit Value Set page.

Validation

The following types of validation are available for value sets:

  • Format only, where users enter data instead of selecting values from a list

  • Independent, a list of values consisting of valid values you specify

  • Dependent, a list of values where a valid value derives from the independent value of another segment

  • Subset, where the list of values is a subset of the values in an existing independent value set

  • Table, where the values derive from a column in an application table and the list of values is limited by a WHERE clause

A segment that uses a format only value set doesn't present a list of valid values to users. If required, you may add table validated value sets to the list of available value sets available for configuration.

For a dependent value set, you must assign an existing independent value set to it. You can’t assign a value set whose validation type is Dependent.

Note: For the Accounting Key Flexfield value sets, you must use independent validation only. If you use other validations, you can't use the full chart of accounts functionality, such as data security, reporting, and account hierarchy integration.

Security

Value set security only works in conjunction with usage within flexfield segments. You can specify that data security be applied to the values in flexfield segments that use a value set. Based on the roles provisioned to users, data security policies determine which values of the flexfield segment users can view or modify.

The application of value set security has the following conditions:

  • At the value set level: The value set is the resource secured by data security policies. If a value set is secured, every usage of it in any flexfield is secured. Disabling security for individual usages of the same value set isn't possible.

  • Applies to independent, dependent, or table-validated value sets.

  • Applies mainly when data is being created or updated, and to key flexfield combinations tables for query purposes. Value set security doesn't determine which descriptive flexfield data is shown upon querying.

  • Security conditions defined on value sets always use table aliases. When filters are used, table aliases are always used by default. When predicates are defined for data security conditions, make sure that the predicates also use table aliases.

For key flexfields, the attributes in the view object corresponding to the account combination ID, structure instance number (SIN), and data set number (DSN) can't be transient. They must exist in the database table. For key flexfields, the SIN segment is the discriminator attribute, and the account combination segment is the common attribute.

Precision and Scale

If the data type of a value set is Number, you can specify the precision (maximum number of digits user can enter) or scale (maximum number of digits following the decimal point).

Usage and Deployment

The usage of a value set is the flexfields where that value set is used. The deployment status of flexfields in which the value set is used indicates the deployment status of the value set instance.

The figure shows a value set shared by both a key flexfield and a descriptive flexfield.

For most value sets, when you enter values into a flexfield segment, you can enter only values that already exist in the value set assigned to that segment.

Global and context-sensitive segment require a value set. You can assign a value set to a descriptive flexfield context segment. If you specify only context values, not value sets for contexts, the set of valid values is equal to the set of context values.

Protected Value Set Data

Application developers may mark some value sets as protected, indicating that you can't edit them.

You can edit only value sets that are not marked as protected. You can't edit or delete protected value sets. If the value set type supports values (such as independent, dependent or subset value sets), then you can't add, edit, or delete values.

Note: References to protected value sets aren't restricted. Value sets, protected or not, may be assigned to any flexfield segment. Likewise, other value sets may reference protected value sets; for example, an unprotected dependent value set may reference a protected independent value set.