Search Results gl_access_sets_pkg




Overview

The APPS.GL_ACCESS_SETS_PKG package body implements the core business logic for maintaining Access Sets in Oracle General Ledger. Access Sets are the security mechanism that restricts which balancing segment values (and, where enabled, management segment values) a given responsibility may use when entering or querying journal entries and account combinations. In Oracle EBS 12.1.1 and 12.2.2, this package provides the server-side underpinnings that allow the Access Set setup form, the ledger and data access set definition processes, and the GL security engine to create, maintain, and validate access set definitions together with their associated assignment rules.

The package is classified as OTHER and is not a published public API; it is nonetheless a stable, long-lived component of the GL security framework and is referenced by other packages within the Applications schema (two documented callers). Its responsibilities include generating unique identifiers for access set records, translating access set definitions into the underlying normalization assignment rows used at runtime, and performing the standard insert, update, and locking operations required to keep the access set tables consistent.

Key Procedures and Functions

  • GET_UNIQUE_ID — Returns a unique identifier used when inserting new access set and access set detail rows, ensuring primary key integrity across the GL_ACCESS_SETS and GL_ACCESS_SETS_S tables.
  • HAS_DETAILS_IN_DB — Determines whether an access set already has persisted detail or assignment records in the database, allowing callers to distinguish newly entered definitions from existing ones.
  • MAINTAIN_DEF_LEDGER_ASSIGN — Maintains the default ledger assignment associated with an access set, synchronizing the assignment of the default ledger made through the access set definition.
  • GET_VALUE_SET_ID — Retrieves the value set identifier associated with a segment, used to resolve the correct value set when building access set definitions.
  • SELECT_COLUMNS — Constructs or supplies the column list used when querying access set data, supporting the package's internal select logic.
  • CREATE_IMPLICIT_ACCESS_SET — Creates an implicit access set, typically generated automatically by the system rather than entered manually by a user.
  • UPDATE_IMPLICIT_ACCESS_SET — Modifies an existing implicit access set to reflect changed segment or assignment criteria.
  • INSERT_ROW — Inserts a new row into the access set tables, applying identifier generation and defaulting rules.
  • UPDATE_ROW — Updates an existing access set row in place, preserving the record's identity while refreshing its attributes.
  • LOCK_ROW — Acquires a row-level lock on an access set record to serialize concurrent maintenance and prevent lost updates.

Tables Accessed

  • GL_ACCESS_SETS and GL_ACCESS_SETS_S — The primary (base) and translated (TL) tables holding the access set header definitions that this package inserts, updates, and locks.
  • GL_ACCESS_SET_NORM_ASSIGN — Stores the normalized assignment of segment values to access sets; populated and maintained so that runtime security checks can resolve permitted values efficiently.
  • FND_ID_FLEX_SEGMENTS and FND_SEGMENT_ATTRIBUTE_VALUES — Key Flexfield metadata consulted to identify the balancing and management segments and their attributes when constructing access set assignment rules.
  • DUAL — Used for scalar evaluations and identifier derivation.

Usage Notes

This package is invoked indirectly through Oracle General Ledger's Access Set setup and ledger definition flows, and by other Applications packages that manage GL security data. It is not documented as a supported public API, so customizations should avoid direct invocation and instead use the supported setup forms or the published GL data access set APIs. Where direct use is unavoidable, callers should respect the locking discipline implied by LOCK_ROW and commit consistently with the surrounding transaction.