1 Package BODY PER_HU_ASSIGN_EXTRA_INFO as
2 /* $Header: pehuaeip.pkb 120.1 2006/09/20 16:31:29 mgettins noship $ */
3
4 PROCEDURE chk_date(p_aei_information2 varchar2
5 ,p_aei_information3 varchar2
6 ) IS
7 BEGIN
8 IF p_aei_information2 IS NOT NULL AND p_aei_information3 IS NOT NULL THEN
9 IF fnd_date.canonical_to_date(p_aei_information2)> fnd_date.canonical_to_date(p_aei_information3) THEN
10 hr_utility.set_message(800,'HR_HU_INVALID_ASG_CATG_DATE');
11 hr_utility.raise_error;
12 END IF;
13 END IF;
14 END chk_date;
15
16
17 PROCEDURE CREATE_HU_ASSIGN_EXTRA_INFO
18 (p_assignment_id number
19 ,p_information_type varchar2
20 ,p_aei_information_category varchar2
21 ,p_aei_information2 varchar2
22 ,p_aei_information3 varchar2
23 ) IS
24 CURSOR get_assignment_type is
25 SELECT assignment_type
26 FROM per_all_assignments_f paaf,fnd_sessions fs
27 WHERE paaf.assignment_id=p_assignment_id
28 AND fs.session_id=userenv('sessionid')
29 AND fs.effective_date BETWEEN paaf.effective_start_date
30 and paaf.effective_end_date;
31
32 l_assignment_type per_all_assignments_f.assignment_type%TYPE;
33 BEGIN
34 --
35 -- Added for GSI Bug 5472781
36 --
37 IF hr_utility.chk_product_install('Oracle Human Resources', 'HU') THEN
38 --
39 IF p_information_type='HU_ASG_CATEGORY' THEN
40 OPEN get_assignment_type;
41 FETCH get_assignment_type INTO l_assignment_type;
42 IF l_assignment_type ='C' THEN
43 hr_utility.set_message(800,'HR_HU_INVALID_ASG_CATG');
44 hr_utility.raise_error;
45 END IF;
46 CLOSE get_assignment_type;
47
48 per_hu_assign_extra_info.chk_date(p_aei_information2 => p_aei_information2
49 ,p_aei_information3 => p_aei_information3);
50
51 END IF;
52 END IF;
53 END CREATE_HU_ASSIGN_EXTRA_INFO;
54
55 --
56 PROCEDURE UPDATE_HU_ASSIGN_EXTRA_INFO
57 (p_assignment_extra_info_id number
58 ,p_aei_information_category varchar2
59 ,p_aei_information2 varchar2
60 ,p_aei_information3 varchar2
61 ) IS
62 CURSOR get_assignment_type is
63 SELECT assignment_type
64 FROM per_all_assignments_f paaf, fnd_sessions fs
65 WHERE paaf.assignment_id=(select assignment_id from per_assignment_extra_info
66 where assignment_extra_info_id=p_assignment_extra_info_id)
67 AND fs.session_id = userenv('sessionid')
68 AND fs.effective_date BETWEEN paaf.effective_start_date
69 and paaf.effective_end_date;
70
71
72 l_assignment_type per_all_assignments_f.assignment_type%TYPE;
73 BEGIN
74 --
75 -- Added for GSI Bug 5472781
76 --
77 IF hr_utility.chk_product_install('Oracle Human Resources', 'HU') THEN
78 --
79 IF p_aei_information_category = 'HU_ASG_CATEGORY' THEN
80
81 OPEN get_assignment_type;
82 FETCH get_assignment_type INTO l_assignment_type;
83 IF l_assignment_type ='C' THEN
84 hr_utility.set_message(800,'HR_HU_INVALID_ASG_CATG');
85 hr_utility.raise_error;
86 END IF;
87 CLOSE get_assignment_type;
88
89 per_hu_assign_extra_info.chk_date(p_aei_information2 => p_aei_information2
90 ,p_aei_information3 => p_aei_information3);
91 END IF;
92 END IF;
93 END UPDATE_HU_ASSIGN_EXTRA_INFO;
94 --
95 END PER_HU_ASSIGN_EXTRA_INFO;