Search Results msd_cs_dfn_utl




Overview

The APPS.MSD_CS_DFN_UTL package body is a utility package within the Oracle E-Business Suite Advanced Planning / Demand Planning (MSD) schema. It supports the definition and metadata management layer of the MSD_CS (Constraint Specification / Definition) subsystem by providing reusable helper routines for column definitions, level metadata, and record-to-array conversion. In Oracle EBS 12.1.1 and 12.2.2, this package is compiled under the APPS schema in a VALID state, meaning all dependencies are resolved and the package is available to calling code. Its primary role is to serve as a shared utility layer so that other MSD packages and concurrent programs can retrieve level identifiers, descriptions, dimension descriptions, and planning server column information without duplicating lookup logic. The package is internal infrastructure — it is not an end-user facing API, but rather a supporting component used by the broader planning data model.

Key Procedures and Functions

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

  • POPULATE_COLUMN_DEFN_ARRAY — Populates an in-memory array of column definitions, typically sourced from MSD_CS_DEFN_COLUMN_DTLS, so that downstream processing can iterate over the defined columns for a planning data set.
  • CONV_CS_REC_TO_ARRAY — Converts a constraint specification record structure into a PL/SQL array, enabling bulk processing or passing of record data between program units.
  • GET_DIM_DESC — Returns the description of a dimension, resolving the dimension identifier to its human-readable description for display or logging.
  • GET_LEVEL_ID — Resolves and returns the internal level identifier for a given planning level, providing the numeric key used by MSD_LEVELS.
  • GET_LEVEL_NAME — Returns the level name associated with a level identifier, supporting display and lookup operations.
  • GET_LEVEL_DESC — Returns the descriptive text for a planning level, complementing GET_LEVEL_NAME for user-facing output.
  • GET_PLANNING_SERVER_CLMN — Retrieves planning server column information, used to map logical planning attributes to physical server column definitions.

These routines form a consistent access layer over level and column metadata, and they are typically called in sequence within larger planning processes.

Tables Accessed

The package references several tables through APPS synonyms. MSD_CS_DEFN_COLUMN_DTLS (with its _V view) stores column definition details used by POPULATE_COLUMN_DEFN_ARRAY. MSD_LEVELS (with _V view) stores planning level definitions consumed by GET_LEVEL_ID, GET_LEVEL_NAME, and GET_LEVEL_DESC. MSD_CS_DATA holds constraint specification data converted by CONV_CS_REC_TO_ARRAY. FND_LOOKUP_VALUES_VL supplies lookup values for descriptive resolution. PLITBLM is a standard Oracle-supplied PL/SQL table type utility referenced at compile time. The package also references itself (MSD_CS_DFN_UTL) and standard SYS constructs. It is not referenced by any database object, indicating it is a leaf-level utility.

Usage Notes

MSD_CS_DFN_UTL is invoked by other MSD packages and by planning concurrent programs that need to resolve level or column metadata before executing a data transformation. Because it is a PACKAGE BODY with no external dependents, it is called directly by five other packages rather than through a database trigger or view. Custom code extending planning functionality may call these routines, but the package is classified as OTHER (internal) API and is not part of Oracle's supported public interface. Developers should treat GET_LEVEL_* and GET_DIM_DESC as read-only metadata helpers and avoid modifying the package, since any change would invalidate dependent packages. In 12.2.2 online patching environments, the package is compiled into the APPS edition and remains available across the patch cycle.