Search Results okc_rep_contract_access




Overview

The OKC_REP_CONTRACT_ACCESS table is a core data object within the Oracle E-Business Suite Contracts Core (OKC) module. Its primary role is to function as an access control list (ACL), governing user permissions for viewing and interacting with specific contracts within the system. This table is essential for implementing a security model where contract visibility and actions are restricted based on user roles or resource assignments, rather than being universally accessible. It acts as a junction table, linking contracts defined in OKC_REP_CONTRACTS_ALL with the resources (users or roles) defined in JTF_RS_RESOURCE_EXTNS, thereby defining a many-to-many relationship between contracts and authorized personnel.

Key Information Stored

The table's structure centers on identifiers that link a contract to a resource and define the nature of the access. The primary key, ACCESS_ID, uniquely identifies each access control record. The two critical foreign key columns are CONTRACT_ID, which references a specific contract header, and RESOURCE_ID, which references a resource from the Trading Community Architecture's resource extensions. While the provided metadata does not list additional columns, such a table in an access control context would typically include fields to specify the access level (e.g., VIEW, UPDATE, FULL) and potentially the source or reason for the granted access. The presence of these columns would be confirmed by querying the database's data dictionary (USER_TAB_COLUMNS) for a specific implementation.

Common Use Cases and Queries

The primary use case is enforcing row-level security for contract reporting and operations. When a user accesses the Contracts Repository or related reports, the application queries this table to filter the set of contracts the user is permitted to see. A common reporting query would join this table to contract and resource details to produce an access audit list. For example:

  • List all resources with access to a specific contract:
    SELECT r.RESOURCE_NAME, a.ACCESS_ID FROM OKC_REP_CONTRACT_ACCESS a, JTF_RS_RESOURCE_EXTNS r WHERE a.RESOURCE_ID = r.RESOURCE_ID AND a.CONTRACT_ID = :p_contract_id;
  • List all contracts accessible to a specific resource:
    SELECT c.CONTRACT_NUMBER, c.TITLE FROM OKC_REP_CONTRACT_ACCESS a, OKC_REP_CONTRACTS_ALL c WHERE a.CONTRACT_ID = c.CONTRACT_ID AND a.RESOURCE_ID = :p_resource_id;

Note: The metadata indicates the table is "Not implemented in this database," suggesting it may be a planned or legacy structure in the documented environment, and its active use should be verified in a target instance.

Related Objects

OKC_REP_CONTRACT_ACCESS is centrally connected to two key tables via foreign key constraints, forming the backbone of its access control logic.

  • OKC_REP_CONTRACTS_ALL: This is the primary contract repository table. The foreign key from OKC_REP_CONTRACT_ACCESS.CONTRACT_ID to OKC_REP_CONTRACTS_ALL.CONTRACT_ID ensures that every access record pertains to a valid, existing contract header.
  • JTF_RS_RESOURCE_EXTNS: This table, part of the Resource Manager, stores extended information about resources (often corresponding to users or roles). The foreign key from OKC_REP_CONTRACT_ACCESS.RESOURCE_ID to JTF_RS_RESOURCE_EXTNS.RESOURCE_ID ensures that access is granted only to valid system resources.

These relationships are critical for maintaining referential integrity and for any joins performed to resolve access records into meaningful contract and resource names for reporting or application logic.