1 PACKAGE BODY IGS_EN_VAL_GHPO AS
2 /* $Header: IGSEN42B.pls 115.3 2002/11/28 23:59:25 nsidana ship $ */
3 --
4 -- Validate update of government hecs payment option
5 FUNCTION enrp_val_ghpo_upd(
6 p_govt_hecs_payment_option IN VARCHAR2 ,
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_hpo_rec IGS_FI_HECS_PAY_OPTN%ROWTYPE;
14 CURSOR c_hpo_rec IS
15 SELECT *
16 FROM IGS_FI_HECS_PAY_OPTN
17 WHERE govt_hecs_payment_option = p_govt_hecs_payment_option AND
18 closed_ind = 'N';
19 BEGIN
20 -- This module validates that there are no
21 -- IGS_FI_HECS_PAY_OPTN records open when
22 -- closing a IGS_FI_GOV_HEC_PA_OP record
23 IF (p_closed_ind = 'Y') THEN
24 OPEN c_hpo_rec;
25 FETCH c_hpo_rec INTO v_hpo_rec;
26 IF (c_hpo_rec%FOUND) THEN
27 -- if there are IGS_FI_HECS_PAY_OPTN records
28 -- that have been found and which aren't yet
29 -- closed (ie. closed_ind = 'N')
30 CLOSE c_hpo_rec;
31 p_message_name := 'IGS_EN_CANT_CLOS_GOVT_HECS';
32 RETURN FALSE;
33 END IF;
34 CLOSE c_hpo_rec;
35 END IF;
36 -- the p_closed_ind = 'N'
37 p_message_name := null;
38 RETURN TRUE;
39 EXCEPTION
40 WHEN OTHERS THEN
41 FND_MESSAGE.SET_NAME('IGS', 'IGS_GE_UNHANDLED_EXP');
42 FND_MESSAGE.SET_TOKEN('NAME', 'IGS_EN_VAL_GHPO.enrp_val_ghpo_upd');
43 IGS_GE_MSG_STACK.ADD;
44 App_Exception.Raise_Exception;
45
46
47 END;
48 END enrp_val_ghpo_upd;
49 END IGS_EN_VAL_GHPO;