[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;