DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_AD_VAL_CCM

Source


1 PACKAGE BODY IGS_AD_VAL_CCM AS
2 /* $Header: IGSAD48B.pls 115.5 2002/11/28 21:34:36 nsidana ship $ */
3   -------------------------------------------------------------------------------------------
4   --Change History:
5   --Who         When            What
6   --avenkatr    29-AUG-2001    Bug Id : 1956374. Removed procedure "corp_val_cc_closed"
7   -------------------------------------------------------------------------------------------
8 
9 
10   -- Validate that default correspondence cat is not closed.
11   FUNCTION admp_val_ccm_dflt_2(
12   p_correspondence_cat IN VARCHAR2 ,
13   p_dflt_cat_ind IN VARCHAR2 DEFAULT 'N',
14   p_message_name	OUT NOCOPY VARCHAR2)
15   RETURN BOOLEAN IS
16   	gv_other_detail		VARCHAR2(255);
17   BEGIN   -- admp_val_ccm_dflt_2
18   	-- Validate if the correspondence category mapping default is not also
19   	-- closed
20  DECLARE
21 v_message_name			VARCHAR2(30);
22   BEGIN
23   	p_message_name := null;
24   	IF (p_dflt_cat_ind = 'N') THEN
25   		RETURN TRUE;
26   	END IF;
27   	IF (IGS_AD_VAL_ACAI.corp_val_cc_closed(
28   			p_correspondence_cat,
29   			v_message_name) = FALSE) THEN
30   		p_message_name := 'IGS_AD_DFLTMAP_CANNOT_CLS_COR';
31   		RETURN FALSE;
32   	END IF;
33   	RETURN TRUE;
34   END;
35   EXCEPTION
36   	WHEN OTHERS THEN
37 	    Fnd_Message.Set_Name('IGS','IGS_GE_UNHANDLED_EXP');
38 	    Fnd_Message.Set_Token('NAME','IGS_AD_VAL_CCM.admp_val_ccm_dflt_2');
39 	    IGS_GE_MSG_STACK.ADD;
40 	    App_Exception.Raise_Exception;
41   END admp_val_ccm_dflt_2;
42   --
43   -- Validate that one cor cat is marked as the default for the adm cat.
44   FUNCTION admp_val_ccm_dflt_1(
45   p_admission_cat IN VARCHAR2 ,
46   p_message_name	OUT NOCOPY VARCHAR2 ,
47   p_return_type OUT NOCOPY VARCHAR2 )
48   RETURN BOOLEAN IS
49   	gv_other_detail		VARCHAR2(255);
50   BEGIN   -- ADMP_VAL_CCM_DFLT_1
51   	-- Validate that one correspondence category is marked as the default for the
52   	-- admission category
53   DECLARE
54   	cst_no			CONSTANT CHAR := 'N';
55   	cst_yes			CONSTANT CHAR := 'Y';
56   	cst_error		CONSTANT CHAR := 'E';
57   	cst_warn		CONSTANT CHAR := 'W';
58   	v_record_found		BOOLEAN DEFAULT FALSE;
59   	v_yes_found		BOOLEAN DEFAULT FALSE;
60   	CURSOR c_ccm(
61   		 cp_admission_cat	IGS_CO_CAT_MAP.admission_cat%TYPE)IS
62   		SELECT	ccm.dflt_cat_ind
63   		FROM	IGS_CO_CAT_MAP ccm
64   		WHERE	ccm.admission_cat = cp_admission_cat;
65   BEGIN
66   	--- Set the default message number
67   	p_message_name := null;
68   	FOR v_dflt_cat_ind IN c_ccm(
69   				p_admission_cat) LOOP
70   		v_record_found := TRUE;
71   		IF (v_dflt_cat_ind.dflt_cat_ind = cst_yes) THEN
72   			v_yes_found := TRUE;
73   			EXIT;
74   		END IF;
75   	END LOOP;
76   	IF v_record_found = FALSE THEN
77   		--p_message_num := 2351;
78 		p_message_name := 'IGS_AD_NO_CORCAT_MAPED_ADMCAT';
79   		p_return_type := cst_warn;
80   		RETURN FALSE;
81   	END IF;
82   	IF (v_yes_found = FALSE) THEN
83   		--p_message_num := 2348;
84 		p_message_name := 'IGS_AD_ONLY_ONE_CORCAT_MARKED';
85   		p_return_type := cst_error;
86   		RETURN FALSE;
87   	END IF;
88   	p_return_type := NULL;
89   	RETURN TRUE;
90   END;
91   EXCEPTION
92   	WHEN OTHERS THEN
93 	    Fnd_Message.Set_Name('IGS','IGS_GE_UNHANDLED_EXP');
94 	    Fnd_Message.Set_Token('NAME','IGS_AD_VAL_CCM.admp_val_ccm_dflt_1');
95 	    IGS_GE_MSG_STACK.ADD;
96 	    App_Exception.Raise_Exception;
97   END admp_val_ccm_dflt_1;
98   --
99   -- Validate if the cor cat can be marked as the default for the adm cat.
100   FUNCTION admp_val_ccm_dflt(
101   p_admission_cat IN VARCHAR2 ,
102   p_correspondence_cat IN VARCHAR2 ,
103   p_message_name	OUT NOCOPY VARCHAR2 )
104   RETURN BOOLEAN IS
105   	gv_other_detail		VARCHAR2(255);
106   BEGIN   -- ADMP_VAL_CCM_DFLT
107   	-- Validate if the correspondence category can be marked as the default for the
108   	--  admission category
109   	-- (only one correspondence category can be marked as the default)
110   DECLARE
111   	v_dflt_cat_ind		IGS_CO_CAT_MAP.dflt_cat_ind%TYPE;
112   	cst_yes			CONSTANT CHAR := 'Y';
113   	CURSOR c_ccm(cp_admission_cat		IGS_CO_CAT_MAP.admission_cat%TYPE,
114   		cp_correspondence_cat	IGS_CO_CAT_MAP.correspondence_cat%TYPE) IS
115   		SELECT	ccm.dflt_cat_ind
116   		FROM	IGS_CO_CAT_MAP ccm
117   		WHERE	ccm.admission_cat = cp_admission_cat AND
118   			ccm.correspondence_cat <> cp_correspondence_cat AND
119   			ccm.dflt_cat_ind = cst_yes;
120   BEGIN
121   	--- Set the default message number
122   	p_message_name := null;
123   	OPEN c_ccm(p_admission_cat,
124   		   p_correspondence_cat);
125   	FETCH c_ccm INTO v_dflt_cat_ind;
126   	IF (c_ccm%FOUND) THEN
127   		--p_message_num := 2348;
128 		p_message_name := 'IGS_AD_ONLY_ONE_CORCAT_MARKED';
129   		CLOSE c_ccm;
130   		RETURN FALSE;
131   	END IF;
132   	CLOSE c_ccm;
133   	RETURN TRUE;
134   END;
135   EXCEPTION
136   	WHEN OTHERS THEN
137 	    Fnd_Message.Set_Name('IGS','IGS_GE_UNHANDLED_EXP');
138 	    Fnd_Message.Set_Token('NAME','IGS_AD_VAL_CCM.admp_val_ccm_dflt');
139 	    IGS_GE_MSG_STACK.ADD;
140 	    App_Exception.Raise_Exception;
141   END admp_val_ccm_dflt;
142 
143 
144 END IGS_AD_VAL_CCM;