1 PACKAGE BODY PER_RU_CON_INFO AS
2 /* $Header: perucrlp.pkb 120.1 2006/09/20 13:52:47 mgettins noship $ */
3 PROCEDURE CREATE_RU_CON_REL(P_CONTACT_PERSON_ID NUMBER,
4 P_PERSON_ID NUMBER,
5 P_CONTACT_TYPE VARCHAR2,
6 P_CONT_INFORMATION1 VARCHAR2) IS
7 BEGIN
8 --
9 -- Added for GSI Bug 5472781
10 --
11 IF hr_utility.chk_product_install('Oracle Human Resources', 'RU') THEN
12 --
13 IF P_CONTACT_TYPE <> 'C' AND P_CONT_INFORMATION1 IS NOT NULL THEN
14 hr_utility.set_message(800,'HR_RU_INVALID_CONTACT_REL');
15 hr_utility.set_message_token('CONTACT_TYPE',hr_general.decode_lookup('CONTACT',P_CONTACT_TYPE));
16 hr_utility.raise_error;
17 END IF;
18 --
19 END IF;
20 --
21 END CREATE_RU_CON_REL;
22 ---------------------------------------------------------------------------------------------------
23
24 PROCEDURE UPDATE_RU_CON_REL(P_CONTACT_RELATIONSHIP_ID NUMBER,
25 P_CONTACT_TYPE VARCHAR2,
26 p_cont_information1 VARCHAR2) IS
27
28 CURSOR cur_crl IS
29 SELECT contact_type,cont_information1 FROM per_contact_relationships
30 WHERE contact_person_id IN
31 (SELECT contact_person_id FROM per_contact_relationships WHERE contact_relationship_id = p_contact_relationship_id)
32 AND person_id IN (SELECT person_id FROM per_contact_relationships WHERE contact_relationship_id = p_contact_relationship_id)
33 AND contact_relationship_id = p_contact_relationship_id;
34
35
36 l_contact_type per_contact_relationships.contact_type%TYPE;
37 l_info per_contact_relationships.cont_information1%TYPE;
38
39 BEGIN
40 --
41 -- Added for GSI Bug 5472781
42 --
43 IF hr_utility.chk_product_install('Oracle Human Resources', 'RU') THEN
44 --
45 IF P_CONTACT_TYPE = hr_api.g_varchar2 AND p_cont_information1 <> hr_api.g_varchar2 THEN
46 OPEN cur_crl;
47 FETCH cur_crl INTO l_contact_type,l_info;
48 CLOSE cur_crl;
49 IF l_contact_type <> 'C' AND p_cont_information1 IS NOT NULL THEN
50 hr_utility.set_message(800,'HR_RU_INVALID_CONTACT_REL');
51 hr_utility.set_message_token('CONTACT_TYPE',hr_general.decode_lookup('CONTACT',P_CONTACT_TYPE));
52 hr_utility.raise_error;
53 END IF;
54 END IF;
55
56 IF P_CONTACT_TYPE <> hr_api.g_varchar2 and p_cont_information1 = hr_api.g_varchar2 THEN
57 OPEN cur_crl;
58 FETCH cur_crl INTO l_contact_type,l_info;
59 CLOSE cur_crl;
60 IF P_CONTACT_TYPE <> 'C' AND l_info IS NOT NULL THEN
61 hr_utility.set_message(800,'HR_RU_INVALID_CONTACT_REL');
62 hr_utility.set_message_token('CONTACT_TYPE',hr_general.decode_lookup('CONTACT',P_CONTACT_TYPE));
63 hr_utility.raise_error;
64 END IF;
65 END IF;
66
67 IF P_CONTACT_TYPE <> hr_api.g_varchar2 AND p_cont_information1 <> hr_api.g_varchar2 THEN
68 if P_CONTACT_TYPE <> 'C' AND p_cont_information1 IS NOT NULL THEN
69 hr_utility.set_message(800,'HR_RU_INVALID_CONTACT_REL');
70 hr_utility.set_message_token('CONTACT_TYPE',hr_general.decode_lookup('CONTACT',P_CONTACT_TYPE));
71 hr_utility.raise_error;
72 END IF;
73 END IF;
74 END IF;
75 END UPDATE_RU_CON_REL;
76
77 END PER_RU_CON_INFO;