DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_EN_VAL_GCC

Source


1 PACKAGE BODY IGS_EN_VAL_GCC AS
2 /* $Header: IGSEN40B.pls 115.3 2002/11/28 23:58:58 nsidana ship $ */
3   --
4   -- Validate the update of a government citizenship code record.
5   FUNCTION enrp_val_gcc_upd(
6   p_govt_citizenship_cd IN NUMBER ,
7   p_closed_ind IN VARCHAR2 DEFAULT 'N',
8   p_message_name OUT NOCOPY VARCHAR2)
9   RETURN BOOLEAN AS
10   BEGIN
11   DECLARE
12 
13   	v_citizenship_cd	IGS_ST_CITIZENSHP_CD%ROWTYPE;
14   	CURSOR	c_citizenship_cd IS
15   		SELECT 	*
16   		FROM	IGS_ST_CITIZENSHP_CD
17   		WHERE	govt_citizenship_cd = p_govt_citizenship_cd and
18   			closed_ind = 'N';
19   BEGIN
20   	-- Validate the update on a govt_citizenshhip_record.
21   	-- A IGS_PE_GOVCITIZEN_CD record cannot be closed if
22   	-- there are IGS_ST_CITIZENSHP_CD records mapped to it that
23   	-- are still open
24   	IF (p_closed_ind = 'Y') THEN
25   		-- check if open IGS_ST_CITIZENSHP_CD records exist
26   		OPEN  c_citizenship_cd;
27   		FETCH c_citizenship_cd INTO v_citizenship_cd;
28   		IF (c_citizenship_cd%FOUND) THEN
29   			CLOSE c_citizenship_cd;
30   			p_message_name := 'IGS_EN_CANT_CLOSE_GOV_CITZ_CD';
31   			RETURN FALSE;
32   		END IF;
33   	END IF;
34   	p_message_name := null;
35   	RETURN TRUE;
36   EXCEPTION
37   	WHEN OTHERS THEN
38 	        Fnd_Message.Set_Name('IGS', 'IGS_GE_UNHANDLED_EXP');
39 		FND_MESSAGE.SET_TOKEN('NAME', 'IGS_EN_VAL_GCC.enrp_val_gcc_upd');
40 		IGS_GE_MSG_STACK.ADD;
41        	        App_Exception.Raise_Exception;
42 
43 
44   END;
45   END enrp_val_gcc_upd;
46 END IGS_EN_VAL_GCC;