DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_GR_VAL_GHL

Source


1 PACKAGE BODY IGS_GR_VAL_GHL AS
2 /* $Header: IGSGR09B.pls 115.4 2002/11/29 00:41:10 nsidana ship $ */
3   --
4   -- Validate if government honours level is closed.
5   FUNCTION grdp_val_ghl_closed(
6   p_govt_honours_level IN VARCHAR2 ,
7   p_message_name OUT NOCOPY VARCHAR2 )
8   RETURN BOOLEAN AS
9   BEGIN	--grdp_val_ghl_closed
10   	--Validate if the government honours level is closed
11   DECLARE
12   	v_closed_ind		VARCHAR2(1);
13   	CURSOR	c_ghl IS
14   		SELECT	'x'
15   		FROM	IGS_GR_GOVT_HNS_LVL
16   		WHERE	govt_honours_level	= p_govt_honours_level AND
17   			closed_ind		= 'Y';
18   BEGIN
19      	--set default message number
20      	p_message_name := NULL;
21   	OPEN c_ghl;
22   	FETCH c_ghl INTO v_closed_ind;
23   	IF c_ghl%FOUND THEN
24   		CLOSE c_ghl;
25   		p_message_name := 'IGS_GR_GOV_HNRS_CLOSED';
26   		RETURN FALSE;
27   	END IF;
28   	CLOSE c_ghl;
29   	RETURN TRUE;
30   EXCEPTION
31      	WHEN OTHERS THEN
32   		IF(c_ghl%ISOPEN) THEN
33   			CLOSE c_ghl;
34   		END IF;
35   		RAISE;
36   END;
37   EXCEPTION
38      	WHEN OTHERS THEN
39        		Fnd_Message.Set_Name('IGS', 'IGS_GE_UNHANDLED_EXCEPTION');
40        		App_Exception.Raise_Exception;
41   END grdp_val_ghl_closed;
42   --
43   -- Validate no open honours level using govt honours level to be closed.
44   FUNCTION grdp_val_ghl_upd(
45   p_govt_honours_level IN VARCHAR2 ,
46   p_closed_ind IN VARCHAR2 DEFAULT 'N',
47   p_message_name OUT NOCOPY VARCHAR2 )
48   RETURN BOOLEAN AS
49   BEGIN	-- grdp_val_ghl_upd
50   	-- This module validates that there are no open user defined honours level
51   	-- records mapped to this government honours level.
52   DECLARE
53   	v_hl		IGS_GR_HONOURS_LEVEL.govt_honours_level%TYPE;
54   	CURSOR c_hl IS
55   		SELECT 	'x'
56   		FROM	IGS_GR_HONOURS_LEVEL hl
57   		WHERE	hl.govt_honours_level 	= p_govt_honours_level AND
58   			hl.closed_ind 		= 'N';
59   BEGIN
60   	-- Set the default message number
61   	p_message_name := NULL;
62   	IF p_closed_ind = 'Y' THEN
63   		OPEN c_hl;
64   		FETCH c_hl INTO v_hl;
65   		IF (c_hl%ROWCOUNT) > 0 THEN
66   			CLOSE c_hl;
67   			p_message_name := 'IGS_GR_GOV_HNRS_CANNOT_CLOSED';
68   			RETURN FALSE;
69   		END IF;
70   		CLOSE c_hl;
71   	END IF;
72   	RETURN TRUE;
73   END;
74   EXCEPTION
75   	WHEN OTHERS THEN
76        		Fnd_Message.Set_Name('IGS', 'IGS_GE_UNHANDLED_EXCEPTION');
77        		IGS_GE_MSG_STACK.ADD;
78        		App_Exception.Raise_Exception;
79   END grdp_val_ghl_upd;
80 END IGS_GR_VAL_GHL;