Search Results fnd_flex_value_rule_usages




Overview

The FND_FLEX_VALUE_RULE_USAGES table is a core data object within the Application Object Library (FND) module of Oracle E-Business Suite (EBS). It functions as the central repository for defining the assignment of flexfield security rules to specific application responsibilities. This table is essential for implementing responsibility-level security on key flexfield value sets, controlling which users, based on their assigned responsibility, can view or select specific values (e.g., inventory items, account codes, suppliers) within a flexfield pop-up window. The table enforces a many-to-many relationship between security rules (FND_FLEX_VALUE_RULES) and responsibilities (FND_RESPONSIBILITY), enabling a single rule to be applied across multiple responsibilities and a single responsibility to utilize multiple rules.

Key Information Stored

The table's structure is defined by its composite primary key and its foreign key relationships. The primary key columns uniquely identify each rule assignment: APPLICATION_ID (identifies the application of the responsibility), RESPONSIBILITY_ID (identifies the specific responsibility), and FLEX_VALUE_RULE_ID (identifies the security rule being applied). A critical additional column is FLEX_VALUE_SET_ID, which links to the FND_FLEX_VALUE_SETS table to identify the specific value set upon which the security rule acts. This column is part of a foreign key constraint, ensuring data integrity by guaranteeing that the rule and the value set are consistent within the assignment.

Common Use Cases and Queries

The primary use case is administering and auditing responsibility-based flexfield security. System administrators query this table to verify which security rules are active for a given responsibility or to identify all responsibilities protected by a particular rule. A common diagnostic query involves joining to related tables to produce a readable report. For example, to list all rule assignments for a specific responsibility name, one might use:

  • SELECT frv.RULE_CODE, fvs.FLEX_VALUE_SET_NAME, fr.RESPONSIBILITY_NAME
  • FROM FND_FLEX_VALUE_RULE_USAGES usg,
  • FND_FLEX_VALUE_RULES frv,
  • FND_FLEX_VALUE_SETS fvs,
  • FND_RESPONSIBILITY fr
  • WHERE usg.FLEX_VALUE_RULE_ID = frv.FLEX_VALUE_RULE_ID
  • AND usg.FLEX_VALUE_SET_ID = fvs.FLEX_VALUE_SET_ID
  • AND usg.APPLICATION_ID = fr.APPLICATION_ID
  • AND usg.RESPONSIBILITY_ID = fr.RESPONSIBILITY_ID
  • AND fr.RESPONSIBILITY_NAME = '&RESP_NAME';

Another critical scenario is during data migration or cloning, where scripts may need to replicate security assignments from one environment to another by inserting records into this table, always respecting its key constraints.

Related Objects

FND_FLEX_VALUE_RULE_USAGES is intrinsically linked to several key FND tables via foreign key constraints, forming the backbone of flexfield security. The table FND_FLEX_VALUE_RULES is the parent, storing the definition of the security rule itself (its code, type, and WHERE clause). The table FND_FLEX_VALUE_SETS is referenced to tie the rule assignment to the specific value set being secured. The table FND_RESPONSIBILITY is referenced via a composite foreign key on APPLICATION_ID and RESPONSIBILITY_ID to validate the responsibility. For reporting and application logic, views such as FND_FLEX_VALUE_RULE_USAGES_VL may exist to provide translated descriptions. Data in this table is typically maintained via the Oracle EBS front-end forms for defining flexfield value sets and their security rules.