Search Results igs_en_plan_units_pkg




Overview

IGS_EN_PLAN_UNITS_PKG is a PL/SQL package body owned by the APPS schema in Oracle E-Business Suite. It belongs to the Student Systems/Enrollment (IGS) product family and supports the maintenance of planned unit records for students. In the Oracle EBS data model, planned units represent the academic units a student intends to undertake within a study period, forming the basis for enrollment planning, registration, and later assessment processing.

The package provides the standard interface layer — the Table API — for the IGS_EN_PLAN_UNITS entity. Rather than allowing direct DML against the underlying table, Oracle EBS enrollments functionality routes inserts, updates, and deletes through this package so that validation, foreign key defaulting, primary key generation, and DML event handling are applied consistently. The ETRM classification for the object is OTHER, and its documented status is VALID in release 12.1.1. The package body depends on several shared infrastructure components, including FND_API, FND_GLOBAL, FND_MESSAGE, APP_EXCEPTION, and the local message stack IGS_GE_MSG_STACK, which together provide the standardized error handling and API conventions used throughout the Student Systems schema.

Key Procedures and Functions

The ETRM metadata documents ten procedures and functions within this package body. Because the entity follows the Oracle EBS Table API pattern, the procedures divide into DML operations, key-handling utilities, and event triggers.

  • INSERT_ROW — Inserts a new row into the planned units entity, applying the package's validation and defaulting logic.
  • UPDATE_ROW — Updates an existing planned units record, revalidating the affected columns.
  • DELETE_ROW — Removes a planned units record, enforcing any referential or business constraints before deletion.
  • ADD_ROW — A convenience wrapper that performs an insert operation, typically used by dependent packages that need to create planned unit rows as part of a larger transaction.
  • LOCK_ROW — Acquires a row-level lock on a planned units record to support optimistic concurrency control during updates.
  • GET_PK_FOR_VALIDATION — Returns the primary key of the entity for use in validation routines, allowing callers to confirm that a referenced record exists before proceeding.
  • GET_FK_IGS_EN_STDNT_PS_ATT — Derives or returns the foreign key value that links a planned unit to the student program attempt (IGS_EN_STDNT_PS_ATT), establishing the student context for the record.
  • GET_FK_IGS_EN_SPA_TERMS — Derives or returns the foreign key value linking the planned unit to the study period attempt term (IGS_EN_SPA_TERMS), anchoring the record to a specific term.
  • BEFORE_DML — A generic pre-DML event handler that centralizes logic executed before any insert, update, or delete.
  • BEFORE_INSERT_UPDATE — A trigger routine invoked specifically before insert and update operations, handling attribute defaulting and validation common to both operations.

Tables Accessed

Two base tables are documented as accessed through APPS synonyms. IGS_EN_PLAN_UNITS is the primary entity table and is the target of the insert, update, delete, lock, and validation routines. IGS_EN_SPA_TERMS is referenced to resolve the study period term context for a planned unit, supporting the GET_FK_IGS_EN_SPA_TERMS utility. The dependency listing additionally shows references to IGS_EN_SPA_TERMS_API and IGS_EN_SPA_TERMS_PKG, indicating that term-level validation is delegated to the terms API rather than performed directly. References to IGS_PS_UNIT_OFR_OPT indicate that validation of the offered unit option associated with a planned unit is also performed through the dependent object.

Usage Notes

IGS_EN_PLAN_UNITS_PKG is not referenced by any database object, which confirms that it is an entry-point API rather than a lower-level utility. It is instead invoked by higher-level code: the documentation records that seven other packages reference it, and dependencies on IGS_EN_STDNT_PS_ATT_PKG and the SPA terms packages indicate that the planned units API is called during student program attempt and term processing. Typical invocation paths include the Oracle EBS enrollment forms that maintain planned unit records, concurrent programs that generate or process planned units in bulk, and custom extensions that must create or amend planned units while respecting the same validation and key-derivation rules enforced by the standard product. Custom code should always call the documented procedures — particularly ADD_ROW or INSERT_ROW and UPDATE_ROW — rather than issuing direct DML against IGS_EN_PLAN_UNITS, so that BEFORE_DML and BEFORE_INSERT_UPDATE logic, foreign key derivation, and message-stack error reporting remain in effect. The dependence on FND_API and FND_GLOBAL also means callers should invoke the package within a properly initialized EBS session so that application context and error handling function correctly.