Search Results mo_utils




Overview

MO_UTILS is a foundational utility package in the Oracle E-Business Suite (EBS) Applications (APPS) schema that supports Multi-Organization Access Control (MOAC) and Multi-Org security functionality across Oracle Applications Release 12.1.1 and 12.2.2. The package body encapsulates common helper logic used throughout the MO (Multi-Org) module and by the many dependent products that rely on organization and ledger context resolution. Its principal business role is to determine, at runtime, the set of books or ledger associated with the current session, the default operating unit, the accessible organizations based on the user's security profile, and whether a given organization or ledger falls within the user's authorized scope.

The ETRM metadata classifies MO_UTILS as an "OTHER" API, indicating that it is an internal, published utility package rather than a formal public API. Its status is VALID, and it resides in the APPS schema. Notably, the package body is documented as being referenced by 97 other database objects, confirming its role as a widely consumed dependency within the EBS codebase. The package body itself is not referenced as a callable unit by other objects in the dependency listing, but its catalog indicates extensive downstream usage by packages that call its public procedures and functions.

Key Procedures and Functions

The documented package exposes eleven procedures and functions. Their purposes are as follows:

  • GET_SET_OF_BOOKS_NAME — Returns the name of the set of books or ledger applicable to the current context.
  • GET_SET_OF_BOOKS_INFO — Retrieves detailed set of books or ledger information used for context resolution.
  • GET_LEDGER_NAME — Returns the ledger name for the currently active ledger, supporting the Release 12 ledger-based architecture.
  • GET_LEDGER_INFO — Retrieves ledger attributes and identifying information.
  • GET_MULTI_ORG_FLAG — Determines whether Multi-Org is enabled or required for the current environment, serving as a gating check for MOAC behavior.
  • GET_DEFAULT_OU — Returns the default operating unit for the session based on the user's security profile and profile option settings.
  • GET_CHILD_TAB_ORGS — Returns the organization hierarchy relevant to a given organization node, supporting organizational roll-up logic.
  • GET_DEFAULT_ORG_ID — Resolves and returns the default organization identifier for the current session.
  • CHECK_ORG_IN_SP — Validates whether a specified organization is included in the user's security profile.
  • CHECK_LEDGER_IN_SP — Validates whether a specified ledger is included within the user's security profile scope.
  • GET_ORG_NAME — Returns the descriptive name associated with a given organization identifier.

Collectively these routines provide the resolution and validation primitives that MOAC-aware forms and concurrent programs use to establish and verify organization and ledger context.

Tables Accessed

MO_UTILS reads from several core reference and security tables through APPS synonyms. FND_PROFILE_OPTION_VALUES supplies profile option settings that govern default organization and set of books behavior. GL_LEDGERS and GL_LEDGERS_PUBLIC_V provide ledger definitions and public ledger views used in Release 12. HR_OPERATING_UNITS and HR_ORGANIZATION_INFORMATION supply operating unit and organization classification data. MO_GLOB_ORG_ACCESS_TMP is a temporary table used by MO_GLOBAL to cache accessible organization identifiers for the session. PER_ORGANIZATION_LIST and PER_SECURITY_PROFILES define the organization security structure, while PER_BUSINESS_GROUPS provides business group context. The package also depends on FND_MESSAGE, APP_EXCEPTION, FND_PROFILE, and MO_GLOBAL for messaging, error raising, profile access, and organization initialization.

Usage Notes

MO_UTILS is typically invoked indirectly. Forms built on the Oracle Applications framework call these utilities when initializing the organization context, when validating a user-supplied organization or ledger, and when populating organization LOVs. Concurrent programs and custom PL/SQL code that must operate in a Multi-Org environment also call MO_UTILS to determine the default operating unit, confirm that an organization or ledger is within the user's security profile, and obtain descriptive names. Because MO_GLOBAL establishes the session-level organization context used by MO_UTILS, callers should ensure MO_GLOBAL initialization has occurred before invoking these routines. Given its wide dependency footprint, modifications to this package body carry significant regression risk across the 97 dependent objects and should be undertaken only with full impact analysis.