Search Results personal_flag




Overview

The PL/SQL package APPS.FEM_DIM_PRS_UTILS_PVT is a private utility package within the Oracle Enterprise Performance Management (EPM) / Enterprise Resource Planning (ETRM) dimension management framework of Oracle E-Business Suite. It provides internal support routines used by the Application Programming Interfaces (APIs) that manage dimension members, hierarchies, and metadata for the Financial Consolidation Hub (FCH) and Enterprise Planning and Budgeting components. The package name decomposes as FEM (Financial Enterprise Management), DIM (Dimension handling), PRS (Personal/Personalization), and UTILS (Utilities), indicating its role in governing personalized dimension structures.

A central concept in this package is the personal_flag attribute, referenced in the user's search. Personal dimensions and hierarchies represent user-specific member augmentations, allowing individual planners or analysts to add private members and hierarchy branches to shared corporate dimensions without polluting the global metadata model. This package encapsulates the logic required to evaluate, purge, and maintain those personal structures.

Key Procedures and Functions

The ETRM metadata documents a single public-facing procedure within this package body:

  • PURGE_PERSONAL_METADATA — The primary documented entry point. This procedure removes personalized dimension metadata for a given user. It accepts an API version, initialization flag, commit flag, validation level, user identifier, and an optional dimension identifier. Its purpose is to cleanse all personal members, attributes, and hierarchy relationships belonging to a specific user, either for a single dimension (when a dimension ID is supplied) or across all eligible dimensions (when no dimension is specified). It is typically invoked when a user is terminated, when personal data must be reset, or during administrative cleanup of orphaned personalizations.

In addition to this documented procedure, the package body exposes internal (private) routines that are not part of the public interface:

  • Purge_Personal_Members_Pvt — A private routine that performs the actual deletion of personalized member rows, driven by a cursor record and user identifier.
  • pd — An internal debugging stub, currently disabled (it writes to DBMS_OUTPUT only when uncommented). It serves no runtime business purpose.

An internal cursor (g_xdim_csr) selects eligible dimensions by joining the base dimension and extended dimension tables, filtering on flags such as hier_editor_managed_flag = 'Y', read_only_flag = 'N', composite_dimension_flag = 'N', and dimension_active_flag = 'Y'. This ensures only editable, active, non-composite dimensions are purged.

Tables Accessed

The documented tables accessed through APPS synonyms include: FEM_BUDGETS_ATTR, FEM_BUDGETS_B, FEM_BUDGETS_TL, FEM_CAL_PERIODS_ATTR, FEM_CAL_PERIODS_B, FEM_CAL_PERIODS_TL, FEM_CCTR_ORGS_ATTR, FEM_CCTR_ORGS_B, FEM_CCTR_ORGS_TL, FEM_CHANNELS_ATTR, FEM_CHANNELS_B, FEM_CHANNELS_TL, FEM_CUSTOMERS_ATTR, FEM_CUSTOMERS_B, and FEM_CUSTOMERS_TL. These represent seeded and user-defined dimensions (Budgets, Calendar Periods, Cost Center Organizations, Channels, Customers) with associated attribute and translated-label structures.

The _B tables hold base member records, the _TL tables hold translated labels, and the _ATTR tables store dimensional attributes. The purge logic traverses these tables to eliminate rows flagged as personal, effectively removing user-specific members from the shared dimension space. The package also references FEM_DIMENSIONS_B and FEM_XDIM_DIMENSIONS through its internal cursor to identify purgable dimensions.

Usage Notes

This package is classified as PVT (private), meaning it is not intended for direct invocation by end users or external integrations. It is invoked internally by higher-level dimension management APIs, dimension editor forms, and administrative concurrent programs. The ETRM metadata indicates it is referenced by zero other documented packages, confirming its strict internal scope.

Because the package is private and its procedures may change without notice across patch levels, customizations should never call FEM_DIM_PRS_UTILS_PVT directly. Instead, developers should invoke the supported public dimension APIs that internally depend on these utilities. In Oracle EBS 12.1.1 and 12.2.2, personal dimension cleanup is generally triggered from the dimension administration responsibility or through scheduled purge programs, and the resulting deletions are committed according to the p_commit parameter passed to PURGE_PERSONAL_METADATA.