Search Results igs_pr_ms_stat_pkg




Overview

The APPS.IGS_PR_MS_STAT_PKG package body is a database-tier PL/SQL component belonging to the Oracle E-Business Suite Student System (IGS) product family, specifically the Progression and Milestones (IGS_PR) module. Its principal business function is to provide the procedural interface for maintaining milestone status records stored in the IGS_PR_MS_STAT_ALL table. In the ETRM object classification it is registered as an OTHER type API, meaning it is an internally-facing package rather than a formally published public API, and it is typically consumed by the surrounding IGS forms, concurrent processes, and dependent packages rather than by external integrations.

The package encapsulates the standard Oracle Forms-style DML logic set: row locking, insert, update, delete, and pre-DML validation. This pattern is characteristic of EBS client/server and OAF-based maintenance screens, where the form's underlying block triggers delegate persistence activities to a package of this shape. The package is documented as VALID in the APPS schema and is referenced by two other database objects, confirming it occupies a mid-tier position in the IGS dependency hierarchy.

Key Procedures and Functions

The ETRM metadata documents nine procedures and functions within the package body. Their documented purposes are as follows:

  • INSERT_ROW — Inserts a new milestone status record into the underlying entity, applying defaulting rules and column derivations before the row is written.
  • LOCK_ROW — Obtains an exclusive row-level lock on an existing milestone status record to prevent concurrent modification during a transaction.
  • UPDATE_ROW — Applies modifications to an existing milestone status record, performing the necessary validation and audit column maintenance before committing the change.
  • ADD_ROW — Provides the higher-level entry point used to create a milestone status record, orchestrating defaults, validation, and insertion in a single call.
  • DELETE_ROW — Removes a milestone status record, subject to the referential and business-rule checks enforced by the package.
  • GET_PK_FOR_VALIDATION — Resolves and returns the primary key value used to validate the target row prior to DML operations.
  • GET_FK_IGS_LOOKUPS_VIEW — Resolves the lookup view foreign key, ensuring that a milestone status value is validated against the IGS lookups view rather than accepted blindly.
  • CHECK_CONSTRAINTS — Performs the package's aggregate constraint validation, verifying business rules and referential integrity before the row is persisted.
  • BEFORE_DML — A pre-DML hook invoked ahead of insert, update, or delete to centralise audit stamping, WHO column population, and mandatory validation logic.

Tables Accessed

The package operates on a single documented base table, IGS_PR_MS_STAT_ALL, accessed through the APPS synonym. This table holds the milestone status rows that the package creates, locks, updates, and deletes. The _ALL suffix indicates the table is partitioned by business group (org_id), so the package's DML respects the multi-tenant security model enforced throughout the IGS schema. In addition to this base table, the package references IGS_LOOKUPS_VIEW_PKG and the view used by GET_FK_IGS_LOOKUPS_VIEW, meaning lookup validation is driven through the standard IGS lookup mechanism rather than a hard-coded value set.

Usage Notes

IGS_PR_MS_STAT_PKG is normally invoked indirectly. Maintenance forms for milestone status data — whether Oracle Forms-based or OA Framework-based — call the package's ADD_ROW, UPDATE_ROW, DELETE_ROW, and LOCK_ROW procedures from block-level triggers, while BEFORE_DML and CHECK_CONSTRAINTS execute automatically as part of that flow. Because the package is classified as OTHER rather than a public API, custom code should treat it as an internal implementation detail and prefer the published IGS APIs where available; direct calls are nevertheless possible from concurrent programs or bespoke PL/SQL when no public alternative exists.

The package depends on APP_EXCEPTION, FND_GLOBAL, FND_MESSAGE, IGS_GE_GEN_003, IGS_GE_MSG_STACK, IGS_LOOKUPS_VIEW_PKG, and IGS_PR_MILESTONE_PKG. Error handling therefore follows the standard EBS pattern of raising exceptions and pushing tokens onto IGS_GE_MSG_STACK for display by the calling form. Because the package body is self-referencing (IGS_PR_MS_STAT_PKG references IGS_PR_MS_STAT_PKG), internal procedures call one another in sequence, so any recompilation must succeed as a unit. The package is not referenced by any database object, confirming it sits at the top of its own dependency chain within the APPS schema.