Search Results cn_obj_procedures_v




Overview

The APPS.CN_OBJ_PROCEDURES_V_PKG package body is a repository-layer API within the Oracle E-Business Suite Contracts (CN) schema, historically derived from the Common Repository (CN_REPOSITORY) component of Oracle's Contracts core. Its purpose is to provide a controlled DML interface against the CN_OBJ_PROCEDURES_V view, which exposes procedure metadata held in the repository's object model. In the context of ETRM (Enterprise Technology Reference Model) 12.1.1 and 12.2.2, this package is classified as an OTHER API — meaning it is a supporting/internal programmatic interface rather than a public, fully supported business API. It is primarily used internally by the repository maintenance and dependency-mapping framework to register, retrieve, and manage procedure-level object definitions. The package header declares a set of public procedures; the body implements them against the underlying view and sequence.

Key Procedures and Functions

The ETRM documentation records two public procedures for this package body:

  • INSERT_ROW — Inserts a single new row into CN_OBJ_PROCEDURES_V. It accepts the full set of procedure-attribute values (procedure id, name, description, dependency map flag, status, repository id, parameter list, procedure type, return type, package id, public flag, and seed procedure id). If the supplied primary key (procedure id) is null, the procedure allocates one from the CN_OBJECTS_S sequence. It hard-codes the object_type column to the literal 'PRC' (procedure) during the insert, then returns the generated ROWID to the caller via an OUT parameter. If the subsequent row lookup fails, it raises NO_DATA_FOUND.
  • SELECT_ROW — Retrieves a single record from CN_OBJ_PROCEDURES_V into a %ROWTYPE variable passed as an IN OUT parameter. It conditionally executes only when the procedure_id attribute in the passed row is not null, providing a key-based fetch of the procedure definition.

Tables Accessed

Two database objects are documented as referenced through APPS synonyms:

  • CN_OBJECTS_S — The repository object sequence. It is the source of surrogate primary keys for new procedure records when the caller does not provide an explicit procedure_id. This sequence also underpins the related insert logic for other repository object types, reinforcing the shared identity space of the CN repository model.
  • DUAL — Used only as the syntactic vehicle for selecting CN_OBJECTS_S.NEXTVAL into the local primary-key variable.
  • CN_OBJ_PROCEDURES_V — Although not listed among the "tables referenced" metadata, it is the principal target of both the INSERT (INSERT_ROW) and SELECT (SELECT_ROW) operations. Because it is a view, inserts and selects are directed at the underlying base repository tables through the view definition.

Usage Notes

According to the ETRM metadata, this package is referenced by zero other packages, indicating it is a terminal API invoked directly rather than a shared utility dependency. In typical Oracle EBS deployments it is invoked through:

  • Internal repository maintenance forms — Contracts/Common Repository setup forms that register procedure and package objects for dependency mapping.
  • Concurrent programs and setup scripts — Batch loading or seed data scripts that populate procedure metadata into the repository.
  • Custom diagnostic or migration code — Custom PL/SQL that needs to create or read procedure definitions without manipulating the base repository tables directly.

Because the package is classified as OTHER rather than a public API, supported use is limited: it should not be relied upon as a stable extension point across releases, and customizations should preferentially treat CN_OBJ_PROCEDURES_V as read-only, reserving INSERT_ROW for internal or seed-loading contexts.