DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_AD_VAL_AUOS

Source


1 PACKAGE BODY IGS_AD_VAL_AUOS AS
2 /* $Header: IGSAD46B.pls 120.2 2006/05/29 11:06:56 apadegal noship $ */
3   -- Validate against the system admission outcome status closed indicator.
4   FUNCTION admp_val_saos_clsd(
5   p_s_adm_outcome_status IN VARCHAR2 ,
6   p_message_name OUT NOCOPY VARCHAR2 )
7   RETURN BOOLEAN IS
8   	gv_other_detail		VARCHAR2(255);
9   BEGIN	--AMDP_VAL_SAOS_CLSD
10   	--Check if the s_adm_outcome_status is closed
11   DECLARE
12   	v_closed_ind	VARCHAR(1);
13   	CURSOR c_saos IS
14   		SELECT	saos.closed_ind
15   		FROM	IGS_LOOKUP_values saos
16   		WHERE   saos.lookup_code = p_s_adm_outcome_status
17 		AND     saos.lookup_type = 'ADM_OUTCOME_STATUS';
18   BEGIN
19   	--- Set the default message number
20   	p_message_name := Null;
21   	OPEN c_saos;
22   	FETCH c_saos INTO v_closed_ind;
23   	IF (c_saos%FOUND) THEN
24   		IF (v_closed_ind = 'Y') THEN
25   			p_message_name := 'IGS_AD_SYSADM_OUTCOME_ST_CLS';
26   			CLOSE c_saos;
27   			RETURN FALSE;
28   		END IF;
29   	END IF;
30   	CLOSE c_saos;
31   	RETURN TRUE;
32   END;
33   EXCEPTION
34   	WHEN OTHERS THEN
35 	    Fnd_Message.Set_Name('IGS','IGS_GE_UNHANDLED_EXP');
36 	    Fnd_Message.Set_Token('NAME','IGS_AD_VAL_AUOS.admp_val_saos_clsd');
37 	    IGS_GE_MSG_STACK.ADD;
38 	    App_Exception.Raise_Exception;
39   END admp_val_saos_clsd;
40 
41   --
42   -- Validate the system admission outcome status unit_outcome_ind is Y .
43   FUNCTION ADMP_VAL_SAOS_UNIOUT(
44   p_s_adm_outcome_status IN VARCHAR2 ,
45   p_message_name OUT NOCOPY VARCHAR2 )
46   RETURN BOOLEAN IS
47   	gv_other_detail	VARCHAR2(255);
48   BEGIN	--admp_val_saos_uniout
49   	--This module Checks if the s_adm_outcome_status.unit_outcome_ind is set to Yes
50   DECLARE
51   	v_saos_exists	VARCHAR2(1);
52   	CURSOR c_saos IS
53   		SELECT 	'X'
54   		FROM	IGS_LOOKUPS_VIEW	saos
55   		WHERE	saos.lookup_type   = 'ADM_OUTCOME_STATUS' AND
56 		        saos.lookup_code	= p_s_adm_outcome_status	AND
57   			saos.unit_outcome_ind		<> 'Y';
58   BEGIN
59   	--Set the default message number
60   	p_message_name := Null;
61   	OPEN c_saos;
62   	FETCH c_saos INTO v_saos_exists;
63   	IF (c_saos%FOUND) THEN
64   		CLOSE c_saos;
65   		p_message_name := 'IGS_AD_UNIT_IND_SETTO_YES';
66   		RETURN FALSE;
67   	END IF;
68   	CLOSE c_saos;
69   	RETURN TRUE;
70   EXCEPTION
71   	WHEN OTHERS THEN
72   		IF (c_saos%ISOPEN) THEN
73   			CLOSE c_saos;
74   		END IF;
75   		RAISE;
76   END;
77   EXCEPTION
78   	WHEN OTHERS THEN
79 	    Fnd_Message.Set_Name('IGS','IGS_GE_UNHANDLED_EXP');
80 	    Fnd_Message.Set_Token('NAME','IGS_AD_VAL_AUOS.admp_val_saos_uniout');
81 	    IGS_GE_MSG_STACK.ADD;
82 	    App_Exception.Raise_Exception;
83   END admp_val_saos_uniout;
84 
85   --
86   -- Validate the admission unit outcome status has only one system default
87   FUNCTION ADMP_VAL_AUOS_DFLT(
88   p_adm_unit_outcome_status IN VARCHAR2 ,
89   p_s_adm_outcome_status IN VARCHAR2 ,
90   p_message_name OUT NOCOPY VARCHAR2 )
91   RETURN BOOLEAN IS
92   	gv_other_detail	VARCHAR2(255);
93   BEGIN	--admp_val_auos_dflt
94   	--This module Checks if another IGS_AD_UNIT_OU_STAT record
95   	--exists with the system default indicator set to 'Y'.
96   DECLARE
97   	v_auos_exists	VARCHAR2(1);
98   	CURSOR c_auos IS
99   		SELECT 	'X'
100   		FROM	IGS_AD_UNIT_OU_STAT	auos
101   		WHERE	auos.adm_unit_outcome_status	<> p_adm_unit_outcome_status	AND
102   			auos.s_adm_outcome_status	= p_s_adm_outcome_status	AND
103   			auos.system_default_ind		= 'Y';
104   BEGIN
105   	--Set the default message number
106   	p_message_name := Null;
107   	OPEN c_auos;
108   	FETCH c_auos INTO v_auos_exists;
109   	IF (c_auos%FOUND) THEN
110   		CLOSE c_auos;
111   		p_message_name := 'IGS_AD_ONLYONE_SYSADM_STATUS';
112   		RETURN FALSE;
113   	END IF;
114   	CLOSE c_auos;
115   	RETURN TRUE;
116   EXCEPTION
117   	WHEN OTHERS THEN
118   		IF (c_auos%ISOPEN) THEN
119   			CLOSE c_auos;
120   		END IF;
121   		RAISE;
122   END;
123   EXCEPTION
124   	WHEN OTHERS THEN
125 	    Fnd_Message.Set_Name('IGS','IGS_GE_UNHANDLED_EXP');
126 	    Fnd_Message.Set_Token('NAME','IGS_AD_VAL_AUOS.admp_val_auos_dflt');
127 	    IGS_GE_MSG_STACK.ADD;
128 	    App_Exception.Raise_Exception;
129   END admp_val_auos_dflt;
130 
131 END IGS_AD_VAL_AUOS;