Search Results get_fk_igs_ps_dscp
Overview
IGS_PS_UNIT_DSCP_PKG is a public PL/SQL package in the APPS schema that encapsulates transactional access to the IGS_PS_UNIT_DSCP table, the entity storing the association between a specific version of a program unit and the discipline group to which a percentage of that unit belongs. In Oracle EBS Release 12.1.1 and 12.2.2 it is used primarily by the Student Systems / Oracle Student System (formerly Oracle iLearning and Student Records) product family to maintain curriculum and discipline-group distribution data for units.
The package is declared with AUTHID CURRENT_USER and is classified as an OTHER API. This classification indicates that the package is not a fully public, customer-facing business API in the same sense as a standard interface, but rather the internal row-handling layer used by the forms and other packages that maintain unit discipline distribution records. As documented by ETRM, ten procedures and functions make up the package, and the header reflects a stable release line ($Header: IGSPI76S.pls 115.4, shipped in 2002).
Key Procedures and Functions
- INSERT_ROW — Inserts a new unit discipline distribution row for a given unit code, version number, discipline group code, and percentage. It receives an X_ROWID in out parameter so the caller can retrieve the ROWID of the newly created row, and accepts a default X_MODE of 'R'.
- LOCK_ROW — Acquires and verifies a pessimistic lock on an existing row so that concurrent sessions cannot modify the same unit discipline record simultaneously.
- UPDATE_ROW — Modifies the percentage or other surrogate attributes of an existing unit discipline row, again accepting an X_ROWID and an X_MODE.
- ADD_ROW — Performs an insert-or-update semantic on the unit discipline distribution record; it is the variant of INSERT_ROW typically used when the calling form cannot guarantee whether the row already exists.
- DELETE_ROW — Removes the identified unit discipline row, operating on the supplied X_ROWID.
- GET_PK_FOR_VALIDATION — Boolean function that validates the primary key combination (unit code, version number, discipline group code) before a DML operation proceeds.
- GET_FK_IGS_PS_DSCP — Validates the foreign key reference from IGS_PS_UNIT_DSCP to the discipline group definition (discipline group code). This is the procedure surfaced by the searched term "get_fk_igs_ps_dscp" and is commonly used by forms or concurrent programs that must confirm a discipline group code exists before inserting or updating a unit discipline distribution row.
- GET_FK_IGS_PS_UNIT_VER — Validates the foreign key reference to the unit version, using the unit code and version number pair.
- CHECK_CONSTRAINTS — Executes declarative constraint checking for the table, accepting optional column name and column value parameters.
- BEFORE_DML — Central pre-DML hook that populates who-columns (creation date, created by, last update date, last updated by, last update login) and performs validation before INSERT, UPDATE, ADD, or DELETE operations.
Tables Accessed
The package is documented as reading and writing IGS_PS_UNIT_DSCP, the table holding unit/discipline-group percentage allocations. It also references DUAL, which is used in the GET_FK and validation routines to perform single-row lookups that confirm parent keys exist. The foreign key procedures reference the parent entities indirectly through IGS_PS_DSCP (discipline group) and IGS_PS_UNIT_VER (unit version), which are the referenced tables in the constraints enforced by GET_FK_IGS_PS_DSCP and GET_FK_IGS_PS_UNIT_VER respectively.
Usage Notes
The package is normally invoked indirectly by Oracle Student System forms and by the row-handling APIs that wrap IGS_PS_UNIT_DSCP. Direct calls are most often seen in custom extensions, data conversion scripts, and interfaces that need to insert or validate unit discipline distributions. Four other packages in the ETRM repository are documented as referencing this package, so it forms part of the shared internal data-access layer for unit discipline distribution data. Because AUTHID CURRENT_USER is specified, any custom caller must be granted appropriate privileges on the referenced tables and must be aware that the package executes with the caller's privileges rather than as APPS. The GET_FK_IGS_PS_DSCP procedure is the specific routine to use when validating that a discipline group code supplied by an external source exists before assigning a percentage to it in IGS_PS_UNIT_DSCP.