1 PACKAGE BODY IGS_AD_VAL_AOS AS
2 /* $Header: IGSAD36B.pls 115.4 2002/11/28 21:30:50 nsidana ship $ */
3 --
4 -- Validate against the system admission outcome status closed indicator.
5
6
7 -- Validate the admission outcome status system default idicator.
8 FUNCTION admp_val_aos_dflt(
9 p_adm_outcome_status IN VARCHAR2 ,
10 p_s_adm_outcome_status IN VARCHAR2 ,
11 p_message_name OUT NOCOPY VARCHAR2 )
12 RETURN BOOLEAN AS
13 BEGIN -- ADMP_VAL_AOS_DFLT
14 -- Check if another IGS_AD_OU_STAT record exists with the system
15 -- default indicator set to 'Y'
16 DECLARE
17 v_count_rec NUMBER;
18 v_sys_def_ind IGS_AD_OU_STAT.system_default_ind%TYPE;
19 CURSOR c_count IS
20 SELECT count(*),
21 system_default_ind
22 FROM IGS_AD_OU_STAT aos
23 WHERE aos.adm_outcome_status <> p_adm_outcome_status AND
24 aos.s_adm_outcome_status = p_s_adm_outcome_status AND
25 aos.system_default_ind = 'Y'
26 GROUP BY system_default_ind;
27 BEGIN
28 --- Set the default message number
29 p_message_name := NULL;
30 OPEN c_count;
31 FETCH c_count INTO v_count_rec,
32 v_sys_def_ind;
33 IF (c_count%FOUND) THEN
34 IF (v_count_rec > 0) AND (v_sys_def_ind = 'Y') THEN
35 p_message_name := 'IGS_AD_SYSADM_OUTST_ONLY_ONE';
36 CLOSE c_count;
37 RETURN FALSE;
38 END IF;
39 END IF;
40 CLOSE c_count;
41 RETURN TRUE;
42 END;
43 EXCEPTION
44 WHEN OTHERS THEN
45 Fnd_Message.Set_Name('IGS','IGS_GE_UNHANDLED_EXP');
46 Fnd_Message.Set_Token('NAME','IGS_AD_VAL_AOS.admp_val_aos_dflt');
47 IGS_GE_MSG_STACK.ADD;
48 App_Exception.Raise_Exception;
49 END admp_val_aos_dflt;
50
51
52 END IGS_AD_VAL_AOS;