Search Results csi_item_instances_h_pkg




Overview

The APPS.CSI_ITEM_INSTANCES_H_PKG package body is a foundational data-access layer within the Oracle E-Business Suite Install Base (CSI) module. It supports the CSI_ITEM_INSTANCES_H entity — the "H" (history) table that stores historical and audit versions of item instance records maintained in the core Install Base repository. In Oracle EBS 12.1.1 and 12.2.2, the Install Base tracks every customer product, component, and configuration instance across its lifecycle, and the history table preserves prior state as records are inserted, changed, or retired. This package encapsulates the standard insert, update, lock, and delete operations against that history table, applying the Oracle Application Object Library (AOL) conventions used throughout EBS: attribute-column handling, WHO-column (created_by, creation_date, last_updated_by) population, concurrency locking, and standardized error signalling through FND_API and APP_EXCEPTION. It is classified as an "OTHER" API rather than a public, externally supported interface, and the ETRM metadata records that it is not referenced by any other database object directly — it is a low-level internal utility for the history table. Notably, the metadata indicates the package body is referenced by one other package and itself ultimately references the CSI_ITEM_INSTANCES_H_S sequence (the "_S" suffix that users commonly search for as csi_item_instances_h_s), which supplies surrogate primary keys for new history rows.

Key Procedures and Functions

ETRM documents four procedures on this package body. No parameter lists are published, so only their functional roles are described below.

  • INSERT_ROW — Creates a new row in the item instance history table, populating the primary key (typically sourced from the CSI_ITEM_INSTANCES_H_S sequence, as confirmed by the dependency listing), the WHO/audit columns, and the caller-supplied attribute values.
  • UPDATE_ROW — Modifies an existing history row, re-applying WHO-column maintenance and enforcing the concurrency rules expected of an AOL-style table handler.
  • LOCK_ROW — Acquires a row-level lock to serialize concurrent modification. It is exposed so callers can check and hold a record before performing dependent updates, preventing lost-update conditions.
  • DELETE_ROW — Removes a history row by its key. In a history table this is used sparingly, generally during purge or correction logic rather than routine business processing.

Tables Accessed

  • CSI_ITEM_INSTANCES_H — the primary history table this package reads and writes. All four DML procedures operate against it, and an additional _S sequence object — CSI_ITEM_INSTANCES_H_S — is referenced to generate the surrogate key on insert.
  • DUAL — used for single-row SQL evaluations, such as sequence NEXTVAL retrieval and standard AOL housekeeping checks.

The dependency listing additionally shows the package consuming APP_EXCEPTION, FND_API, FND_MESSAGE, and STANDARD, confirming that error raising and message formatting follow the standard EBS API conventions.

Usage Notes

Because this is an internal history-table handler, it is normally invoked indirectly rather than called by name from custom code. Typical call paths include Install Base forms and concurrent programs that archive item instance changes, and the one package identified in the dependency metadata as referencing CSI_ITEM_INSTANCES_H_PKG — most probably the corresponding Install Base history/maintenance package handling record versioning. In Oracle EBS 12.2.2 the same package remains valid and unchanged in classification.

For custom development, direct invocation is discouraged: the package is unsupported ("OTHER" classification) and its behaviour is tied to Install Base versioning logic. Where custom maintenance of history records is truly required, callers should respect the WHO-column and locking conventions, wrap calls in the standard FND_API error-handling pattern, and avoid bypassing whichever higher-level Install Base API normally drives the insert, update, and delete operations in the supported flow.