1 PACKAGE BODY IGS_EN_VAL_IV AS
2 /* $Header: IGSEN46B.pls 120.0 2005/06/01 16:21:58 appldev noship $ */
3 -------------------------------------------------------------------------------------------
4 --Change History:
5 --Who When What
6 --smadathi 28-AUG-2001 Bug No. 1956374 .The Function genp_val_staff_prsn removed
7 -------------------------------------------------------------------------------------------
8 --msrinivi 24-AUG-2001 Bug No. 1956374 .The function genp_val_prsn_id removed
9 --asbala 15-APR-04 3349171 - Wrong usage of fnd_lookup_values
10 --
11 --
12 -- bug id : 1956374
13 -- sjadhav , 28-aug-2001
14 -- removed FUNCTION enrp_val_cnc_closed
15 --
16 -- bug id : 1956374
17 -- sjadhav , 28-aug-2001
18 -- removed FUNCTION enrp_val_cnc_closed
19 --
20 --
21 -- Validate the international visa contact
22 FUNCTION enrp_val_iv_contact(
23 p_org_unit_cd IN VARCHAR2 ,
24 p_contact_name IN VARCHAR2 ,
25 p_message_name OUT NOCOPY VARCHAR2)
26 RETURN BOOLEAN AS
27 BEGIN
28 DECLARE
29
30 BEGIN
31 -- Validate the IGS_OR_UNIT and contact name from IGS_AD_INTL_VISA
32 IF (p_org_unit_cd IS NULL AND p_contact_name IS NOT NULL) THEN
33 p_message_name := 'IGS_EN_CANT_SPECIFY_CNTCT_NAM';
34 RETURN FALSE;
35 END IF;
36 p_message_name := null;
37 RETURN TRUE;
38 EXCEPTION
39 WHEN OTHERS THEN
40 Fnd_Message.Set_Name('IGS', 'IGS_GE_UNHANDLED_EXP');
41 FND_MESSAGE.SET_TOKEN('NAME', 'IGS_EN_VAL_IV.enrp_val_iv_contact');
42 IGS_GE_MSG_STACK.ADD;
43 App_Exception.Raise_Exception;
44
45
46 END;
47 END enrp_val_iv_contact;
48 --
49 -- Validate the international visa IGS_PE_PERSON id
50 FUNCTION enrp_val_iv_person(
51 p_org_unit_cd IN VARCHAR2 ,
52 p_person_id IN NUMBER ,
53 p_message_name OUT NOCOPY VARCHAR2)
54 RETURN BOOLEAN AS
55 BEGIN
56 DECLARE
57
58 BEGIN
59 -- Validate the IGS_OR_UNIT and contact name from IGS_AD_INTL_VISA
60 IF (p_org_unit_cd IS NULL AND p_person_id IS NOT NULL) THEN
61 p_message_name := 'IGS_EN_ENTER_ORG_UNIT';
62 RETURN FALSE;
63 END IF;
64 p_message_name := null;
65 RETURN TRUE;
66 EXCEPTION
67 WHEN OTHERS THEN
68 Fnd_Message.Set_Name('IGS', 'IGS_GE_UNHANDLED_EXP');
69 FND_MESSAGE.SET_TOKEN('NAME', 'IGS_EN_VAL_IV.enrp_val_iv_person');
70 IGS_GE_MSG_STACK.ADD;
71 App_Exception.Raise_Exception;
72
73
74 END;
75 END enrp_val_iv_person;
76 --
77 -- Validate the visa type closed indicator
78 FUNCTION enrp_val_vit_closed(
79 p_visa_type IN VARCHAR2 ,
80 p_message_name OUT NOCOPY VARCHAR2)
81 RETURN BOOLEAN AS
82 BEGIN
83 DECLARE
84
85 v_closed_ind VARCHAR2(1);
86 CURSOR c_visa_type IS
87 SELECT enabled_flag
88 FROM fnd_lookup_values
89 WHERE lookup_type = 'PER_US_VISA_TYPES'
90 AND view_application_id = 3
91 AND security_group_id = 0
92 AND language = USERENV('LANG')
93 AND lookup_code = p_visa_type;
94 BEGIN
95 -- Check if the IGS_AD_VISA_TYPE is closed
96 p_message_name := null;
97 OPEN c_visa_type;
98 FETCH c_visa_type INTO v_closed_ind;
99 IF (c_visa_type%NOTFOUND) THEN
100 CLOSE c_visa_type;
101 RETURN TRUE;
102 END IF;
103 CLOSE c_visa_type;
104 IF (v_closed_ind = 'N') THEN
105 p_message_name := 'IGS_EN_VISA_TYPE_CLOSED';
106 RETURN FALSE;
107 END IF;
108 -- IGS_AD_VISA_TYPE is not closed
109 RETURN TRUE;
110 EXCEPTION
111 WHEN OTHERS THEN
112 Fnd_Message.Set_Name('IGS', 'IGS_GE_UNHANDLED_EXP');
113 FND_MESSAGE.SET_TOKEN('NAME', 'IGS_EN_VAL_IV.enrp_val_vit_closed');
114 IGS_GE_MSG_STACK.ADD;
115 App_Exception.Raise_Exception;
116
117
118 END;
119 END enrp_val_vit_closed;
120 END IGS_EN_VAL_IV;