1 PACKAGE BODY IGS_ST_VAL_ESSC AS
2 /* $Header: IGSST06B.pls 115.5 2002/11/29 04:11:31 nsidana ship $ */
3
4 --
5 -- Validate the setting of the delete of an enrolment statistics snapshot
6 FUNCTION stap_val_essc_delete(
7 p_snapshot_dt_time IN DATE ,
8 p_delete_snapshot_ind IN VARCHAR2 DEFAULT 'N',
9 p_message_name OUT NOCOPY VARCHAR2)
10 RETURN BOOLEAN AS
11 gv_other_detail VARCHAR2(255);
12 BEGIN
13 DECLARE
14 CURSOR c_govt_snapshot_ctl(
15 cp_snapshot_dt_time IGS_EN_ST_SNAPSHOT.snapshot_dt_time%TYPE) IS
16 SELECT gsc.submission_yr
17 FROM IGS_ST_GVT_SPSHT_CTL gsc
18 WHERE gsc.ess_snapshot_dt_time = cp_snapshot_dt_time;
19 BEGIN
20 -- This module validates the setting of the
21 -- IGS_EN_ST_SPSHT_CTL.delete_snapshot_ind.
22 -- If the enrolment statistics snapshot is used by a government snapshot then
23 -- it cannot be marked for delete.
24 p_message_name := null;
25 -- Validate input parameters.
26 IF(p_snapshot_dt_time IS NULL OR
27 p_delete_snapshot_ind <> 'Y') THEN
28 RETURN TRUE;
29 END IF;
30 -- Validate if the enrolment statistics snapshot is used by a government
31 -- snapshot.
32 FOR v_govt_snapshot_ctl_rec IN c_govt_snapshot_ctl(
33 p_snapshot_dt_time) LOOP
34 p_message_name := 'IGS_ST_CANT_DEL_ENRL_STAT';
35 RETURN FALSE;
36 END LOOP;
37 RETURN TRUE;
38 EXCEPTION
39 WHEN OTHERS THEN
40 FND_MESSAGE.SET_NAME('IGS','IGS_GE_UNHANDLED_EXP');
41 FND_MESSAGE.SET_TOKEN('NAME','IGS_ST_VAL_ESSC.stap_val_essc_deleten');
42 IGS_GE_MSG_STACK.ADD;
43 App_Exception.Raise_Exception;
44 END;
45 END stap_val_essc_delete;
46 END IGS_ST_VAL_ESSC;