Search Results r12_moac_conv




Overview

AD_MO_UTIL_PKG is a utility package owned by the APPS schema in Oracle E-Business Suite. Its name and contents indicate that it belongs to the Multi-Org (MO) access-control infrastructure — the mechanism by which EBS enforces Operating Unit (Org ID) security at the database level. The package is classified as an OTHER API in the E-Business Suite Technical Reference Manual (ETRM), meaning it is not a published, supported business API intended for customer invocation, but rather an internal helper used by the Applications DBA (AD) and Multi-Org setup tooling.

The package header carries a version stamp of 120.0 dated 2005, indicating it was introduced during the R12 development cycle and has remained largely stable. It is declared with AUTHID CURRENT_USER, so its SQL executes under the privileges of the invoking user rather than the definer, which is consistent with a DBA-run conversion/admin utility operating directly against data dictionary views.

Key Procedures and Functions

The package exposes a single documented procedure:

  • R12_MOAC_CONV — The name expands to "R12 Multi-Org Access Control Conversion." This procedure performs the conversion of Multi-Org security objects into the R12 Multi-Org Access Control (MOAC) model. It accepts a series of identification parameters covering the product user name, the view name, the product table name, the product schema name, the application short name, the apps user name, the security policy name, and an action parameter. The combination of these arguments shows that the routine creates or alters a row-level security (RLS) policy on a specific editioning view over a specific product table, using Oracle's fine-grained access control (DBMS_RLS) facilities. The p_action parameter drives whether the policy is created, dropped, or refreshed as part of the conversion.

Tables Accessed

Although the ETRM does not enumerate base tables, the referenced objects — all accessed via APPS synonyms — reveal the dictionary surfaces the package inspects and manipulates:

  • DBA_USERS — Used to validate the product user and the APPS user named in the parameters.
  • DBA_EDITIONING_VIEWS — Used to confirm the existence and status of the editioning view supplied in p_view_name.
  • DBA_POLICIES — Used to detect existing RLS policies on the target object before creating or modifying them.
  • DBMS_RLS — The PL/SQL package invoked to add, drop, or enable the security policy itself.
  • DBMS_SQL — Used for dynamic SQL construction and execution, necessary because object and schema names are supplied at runtime.

No other PL/SQL packages in the ETRM reference this package, confirming its role as a terminal, low-level utility.

Usage Notes

AD_MO_UTIL_PKG is an internal Applications DBA tool. It is not surfaced through an EBS form or a standard concurrent program and is not intended to be called from customer code. It is typically invoked during R12 upgrades and Multi-Org Access Control enablement, when the adadmin or AutoConfig-driven setup process converts legacy Operating Unit security into MOAC policies across each affected product table. Because the procedure performs DDL against security policies and executes dynamic SQL under AUTHID CURRENT_USER, it must be run by a privileged account with DBA rights, and it should only ever be executed within the sanctioned upgrade or patching sequence. Direct manual invocation outside those controlled circumstances risks leaving tables with missing or duplicated RLS policies and is not supported.