1 PACKAGE BODY IGS_AD_VAL_APCL AS
2 /* $Header: IGSAD39B.pls 115.6 2002/11/28 21:31:26 nsidana ship $ */
3 -------------------------------------------------------------------------------------------
4 --Change History:
5 --Who When What
6 --avenkatr 29-AUG-2001 Bug Id : 1956374. Added Pragma to Function "corp_val_slet_closed"
7 --avenkatr 29-AUG-2001 Bug Id : 1956374. Added Pragma to Function "corp_val_slet_slrt"
8 -------------------------------------------------------------------------------------------
9
10 -- Validate if System Letter is closed.
11 FUNCTION corp_val_slet_closed(
12 p_correspondence_type IN VARCHAR2 ,
13 p_letter_reference_number IN NUMBER ,
14 p_message_name OUT NOCOPY VARCHAR2 )
15 RETURN BOOLEAN IS
16 gv_other_detail VARCHAR2(255);
17 BEGIN -- corp_val_slet_closed
18 -- Validate if IGS_CO_S_LTR is closed.
19 DECLARE
20
21 v_closed_ind IGS_CO_S_LTR.closed_ind%TYPE DEFAULT NULL;
22 CURSOR c_s_letter IS
23 SELECT closed_ind
24 FROM IGS_CO_S_LTR
25 WHERE correspondence_type = p_correspondence_type AND
26 letter_reference_number = p_letter_reference_number;
27
28 BEGIN
29
30 p_message_name := Null;
31 OPEN c_s_letter;
32 FETCH c_s_letter INTO v_closed_ind;
33 CLOSE c_s_letter;
34 IF (v_closed_ind = 'Y') THEN
35 p_message_name := 'IGS_CO_LETTER_IS_CLOSED';
36 RETURN FALSE;
37 END IF;
38 RETURN TRUE;
39
40 END;
41
42 END corp_val_slet_closed;
43 --
44 -- Validate the System Letter is of a certain Letter Reference Type.
45 FUNCTION CORP_VAL_SLET_SLRT(
46 p_correspondence_type IN VARCHAR2 ,
47 p_letter_reference_number IN NUMBER ,
48 p_s_letter_reference_type IN VARCHAR2 ,
49 p_message_name OUT NOCOPY VARCHAR2 )
50 RETURN BOOLEAN IS
51 gv_other_detail VARCHAR2(255);
52 BEGIN -- corp_val_slet_slrt
53 -- This module validates that the passed IGS_CO_S_LTR has the passed
54 -- IGS_CO_S_LTR_REF_TYPE
55 DECLARE
56 v_dummy VARCHAR2(1);
57 CURSOR c_sl IS
58 SELECT 'x'
59 FROM IGS_CO_S_LTR sl
60 WHERE sl.correspondence_type = p_correspondence_type AND
61 sl.letter_reference_number = p_letter_reference_number AND
62 sl.s_letter_reference_type = p_s_letter_reference_type;
63
64 BEGIN
65
66 -- Set the default message number
67 p_message_name := Null;
68 OPEN c_sl;
69 FETCH c_sl INTO v_dummy;
70 IF c_sl%NOTFOUND THEN
71 CLOSE c_sl;
72 p_message_name := 'IGS_CO_LETTER_NOTAVAIL_SUBSYS';
73 RETURN FALSE;
74 END IF;
75 CLOSE c_sl;
76 RETURN TRUE;
77
78 EXCEPTION
79
80 WHEN OTHERS THEN
81 IF c_sl%ISOPEN THEN
82 CLOSE c_sl;
83 END IF;
84 RAISE;
85
86 END;
87 END corp_val_slet_slrt;
88
89 END IGS_AD_VAL_APCL;