[Home] [Help]
PACKAGE BODY: APPS.HR_MX_PERSON_ABSENCE_API
Source
1 PACKAGE BODY HR_MX_PERSON_ABSENCE_API AS
2 /* $Header: hrmxwrpa.pkb 120.0 2005/05/31 01:32:16 appldev noship $ */
3 /*
4 ******************************************************************
5 * *
6 * Copyright (C) 1993 Oracle Corporation. *
7 * All rights reserved. *
8 * *
9 * This material has been provided pursuant to an agreement *
10 * containing restrictions on its use. The material is also *
11 * protected by copyright law. No part of this material may *
12 * be copied or distributed, transmitted or transcribed, in *
13 * any form or by any means, electronic, mechanical, magnetic, *
14 * manual, or otherwise, or disclosed to third parties without *
15 * the express written permission of Oracle Corporation, *
16 * 500 Oracle Parkway, Redwood City, CA, 94065. *
17 * *
18 ******************************************************************
19
20 Name : HR_MX_PERSON_ABSENCE_API
21
22 Description : This is Mexican wrapper package for hr_person_absence_api.
23
24 Change List
25 -----------
26 Date Name Vers Bug No Description
27 ----------- ---------- ------ ------- -------------------------------
28 29-JUN-2004 sdahiya 115.0 Created.
29 09-JUL-2004 sdahiya 115.1 Added business group check in
30 update_mx_person_absence.
31 *****************************************************************************/
32
33 g_proc_name varchar2 (50);
34 /*******************************************************************************
35 Name : create_mx_person_absence
36 Purpose : This procedure acts as wrapper for hr_person_absence_api.create_person_absence.
37 *******************************************************************************/
38
39 PROCEDURE CREATE_MX_PERSON_ABSENCE
40 (p_validate in boolean default false
41 ,p_effective_date in date
42 ,p_person_id in number
43 ,p_business_group_id in number
44 ,p_absence_attendance_type_id in number
45 ,p_abs_attendance_reason_id in number default null
46 ,p_comments in long default null
47 ,p_date_notification in date default null
48 ,p_date_projected_start in date default null
49 ,p_time_projected_start in varchar2 default null
50 ,p_date_projected_end in date default null
51 ,p_time_projected_end in varchar2 default null
52 ,p_date_start in date default null
53 ,p_time_start in varchar2 default null
54 ,p_date_end in date default null
55 ,p_time_end in varchar2 default null
56 ,p_absence_days in out nocopy number
57 ,p_absence_hours in out nocopy number
58 ,p_authorising_person_id in number default null
59 ,p_replacement_person_id in number default null
60 ,p_attribute_category in varchar2 default null
61 ,p_attribute1 in varchar2 default null
62 ,p_attribute2 in varchar2 default null
63 ,p_attribute3 in varchar2 default null
64 ,p_attribute4 in varchar2 default null
65 ,p_attribute5 in varchar2 default null
66 ,p_attribute6 in varchar2 default null
67 ,p_attribute7 in varchar2 default null
68 ,p_attribute8 in varchar2 default null
69 ,p_attribute9 in varchar2 default null
70 ,p_attribute10 in varchar2 default null
71 ,p_attribute11 in varchar2 default null
72 ,p_attribute12 in varchar2 default null
73 ,p_attribute13 in varchar2 default null
74 ,p_attribute14 in varchar2 default null
75 ,p_attribute15 in varchar2 default null
76 ,p_attribute16 in varchar2 default null
77 ,p_attribute17 in varchar2 default null
78 ,p_attribute18 in varchar2 default null
79 ,p_attribute19 in varchar2 default null
80 ,p_attribute20 in varchar2 default null
81 ,p_period_of_incapacity_id in number default null
82 ,p_ssp1_issued in varchar2 default 'N'
83 ,p_maternity_id in number default null
84 ,p_sickness_start_date in date default null
85 ,p_sickness_end_date in date default null
86 ,p_pregnancy_related_illness in varchar2 default 'N'
87 ,p_reason_for_notification_dela in varchar2 default null
88 ,p_accept_late_notification_fla in varchar2 default 'N'
89 ,p_linked_absence_id in number default null
90 ,p_batch_id in number default null
91 ,p_create_element_entry in boolean default true
92 ,p_type_of_disability in varchar2 default null
93 ,p_disability_id in varchar2 default null
94 ,p_absence_attendance_id out nocopy number
95 ,p_object_version_number out nocopy number
96 ,p_occurrence out nocopy number
97 ,p_dur_dys_less_warning out nocopy boolean
98 ,p_dur_hrs_less_warning out nocopy boolean
99 ,p_exceeds_pto_entit_warning out nocopy boolean
100 ,p_exceeds_run_total_warning out nocopy boolean
101 ,p_abs_overlap_warning out nocopy boolean
102 ,p_abs_day_after_warning out nocopy boolean
103 ,p_dur_overwritten_warning out nocopy boolean
104 ) AS
105
106 l_proc_name varchar2(100);
107
108 BEGIN
109 l_proc_name := g_proc_name||'CREATE_MX_PERSON_ABSENCE';
110 hr_utility.trace('Entering '||l_proc_name);
111 --
112 hr_mx_utility.check_bus_grp (p_business_group_id, 'MX');
113 --
114 fnd_profile.put('PER_PERSON_ID',p_person_id);
115 hr_person_absence_api.create_person_absence
116 (p_validate => p_validate
117 ,p_effective_date => p_effective_date
118 ,p_person_id => p_person_id
119 ,p_business_group_id => p_business_group_id
120 ,p_absence_attendance_type_id => p_absence_attendance_type_id
121 ,p_abs_attendance_reason_id => p_abs_attendance_reason_id
122 ,p_comments => p_comments
123 ,p_date_notification => p_date_notification
124 ,p_date_projected_start => p_date_projected_start
125 ,p_time_projected_start => p_time_projected_start
126 ,p_date_projected_end => p_date_projected_end
127 ,p_time_projected_end => p_time_projected_end
128 ,p_date_start => p_date_start
129 ,p_time_start => p_time_start
130 ,p_date_end => p_date_end
131 ,p_time_end => p_time_end
132 ,p_absence_days => p_absence_days
133 ,p_absence_hours => p_absence_hours
134 ,p_authorising_person_id => p_authorising_person_id
135 ,p_replacement_person_id => p_replacement_person_id
136 ,p_attribute_category => p_attribute_category
137 ,p_attribute1 => p_attribute1
138 ,p_attribute2 => p_attribute2
139 ,p_attribute3 => p_attribute3
140 ,p_attribute4 => p_attribute4
141 ,p_attribute5 => p_attribute5
142 ,p_attribute6 => p_attribute6
143 ,p_attribute7 => p_attribute7
144 ,p_attribute8 => p_attribute8
145 ,p_attribute9 => p_attribute9
146 ,p_attribute10 => p_attribute10
147 ,p_attribute11 => p_attribute11
148 ,p_attribute12 => p_attribute12
149 ,p_attribute13 => p_attribute13
150 ,p_attribute14 => p_attribute14
151 ,p_attribute15 => p_attribute15
152 ,p_attribute16 => p_attribute16
153 ,p_attribute17 => p_attribute17
154 ,p_attribute18 => p_attribute18
155 ,p_attribute19 => p_attribute19
156 ,p_attribute20 => p_attribute20
157 ,p_period_of_incapacity_id => p_period_of_incapacity_id
158 ,p_ssp1_issued => p_ssp1_issued
159 ,p_maternity_id => p_maternity_id
160 ,p_sickness_start_date => p_sickness_start_date
161 ,p_sickness_end_date => p_sickness_end_date
162 ,p_pregnancy_related_illness => p_pregnancy_related_illness
163 ,p_reason_for_notification_dela => p_reason_for_notification_dela
164 ,p_accept_late_notification_fla => p_accept_late_notification_fla
165 ,p_linked_absence_id => p_linked_absence_id
166 ,p_batch_id => p_batch_id
167 ,p_create_element_entry => p_create_element_entry
168 ,p_abs_information_category => 'MX'
169 ,p_abs_information1 => p_type_of_disability
170 ,p_abs_information2 => p_disability_id
171 ,p_absence_attendance_id => p_absence_attendance_id
172 ,p_object_version_number => p_object_version_number
173 ,p_occurrence => p_occurrence
174 ,p_dur_dys_less_warning => p_dur_dys_less_warning
175 ,p_dur_hrs_less_warning => p_dur_hrs_less_warning
176 ,p_exceeds_pto_entit_warning => p_exceeds_pto_entit_warning
177 ,p_exceeds_run_total_warning => p_exceeds_run_total_warning
178 ,p_abs_overlap_warning => p_abs_overlap_warning
179 ,p_abs_day_after_warning => p_abs_day_after_warning
180 ,p_dur_overwritten_warning => p_dur_overwritten_warning
181 );
182
183 hr_utility.trace('Leaving '||l_proc_name);
184 END CREATE_MX_PERSON_ABSENCE;
185
186
187 /*******************************************************************************
188 Name : update_mx_person_absence
189 Purpose : This procedure acts as wrapper for hr_person_absence_api.update_person_absence.
190 *******************************************************************************/
191
192 PROCEDURE UPDATE_MX_PERSON_ABSENCE
193 (p_validate in boolean default false
194 ,p_effective_date in date
195 ,p_absence_attendance_id in number
196 ,p_abs_attendance_reason_id in number default hr_api.g_number
197 ,p_comments in long default hr_api.g_varchar2
198 ,p_date_notification in date default hr_api.g_date
199 ,p_date_projected_start in date default hr_api.g_date
200 ,p_time_projected_start in varchar2 default hr_api.g_varchar2
201 ,p_date_projected_end in date default hr_api.g_date
202 ,p_time_projected_end in varchar2 default hr_api.g_varchar2
203 ,p_date_start in date default hr_api.g_date
204 ,p_time_start in varchar2 default hr_api.g_varchar2
205 ,p_date_end in date default hr_api.g_date
206 ,p_time_end in varchar2 default hr_api.g_varchar2
207 ,p_absence_days in out nocopy number
208 ,p_absence_hours in out nocopy number
209 ,p_authorising_person_id in number default hr_api.g_number
210 ,p_replacement_person_id in number default hr_api.g_number
211 ,p_attribute_category in varchar2 default hr_api.g_varchar2
212 ,p_attribute1 in varchar2 default hr_api.g_varchar2
213 ,p_attribute2 in varchar2 default hr_api.g_varchar2
214 ,p_attribute3 in varchar2 default hr_api.g_varchar2
215 ,p_attribute4 in varchar2 default hr_api.g_varchar2
216 ,p_attribute5 in varchar2 default hr_api.g_varchar2
217 ,p_attribute6 in varchar2 default hr_api.g_varchar2
218 ,p_attribute7 in varchar2 default hr_api.g_varchar2
219 ,p_attribute8 in varchar2 default hr_api.g_varchar2
220 ,p_attribute9 in varchar2 default hr_api.g_varchar2
221 ,p_attribute10 in varchar2 default hr_api.g_varchar2
222 ,p_attribute11 in varchar2 default hr_api.g_varchar2
223 ,p_attribute12 in varchar2 default hr_api.g_varchar2
227 ,p_attribute16 in varchar2 default hr_api.g_varchar2
224 ,p_attribute13 in varchar2 default hr_api.g_varchar2
225 ,p_attribute14 in varchar2 default hr_api.g_varchar2
226 ,p_attribute15 in varchar2 default hr_api.g_varchar2
228 ,p_attribute17 in varchar2 default hr_api.g_varchar2
229 ,p_attribute18 in varchar2 default hr_api.g_varchar2
230 ,p_attribute19 in varchar2 default hr_api.g_varchar2
231 ,p_attribute20 in varchar2 default hr_api.g_varchar2
232 ,p_period_of_incapacity_id in number default hr_api.g_number
233 ,p_ssp1_issued in varchar2 default hr_api.g_varchar2
234 ,p_maternity_id in number default hr_api.g_number
235 ,p_sickness_start_date in date default hr_api.g_date
236 ,p_sickness_end_date in date default hr_api.g_date
237 ,p_pregnancy_related_illness in varchar2 default hr_api.g_varchar2
238 ,p_reason_for_notification_dela in varchar2 default hr_api.g_varchar2
239 ,p_accept_late_notification_fla in varchar2 default hr_api.g_varchar2
240 ,p_linked_absence_id in number default hr_api.g_number
241 ,p_batch_id in number default hr_api.g_number
242 ,p_type_of_disability in varchar2 default hr_api.g_varchar2
243 ,p_disability_id in varchar2 default hr_api.g_varchar2
244 ,p_object_version_number in out nocopy number
245 ,p_dur_dys_less_warning out nocopy boolean
246 ,p_dur_hrs_less_warning out nocopy boolean
247 ,p_exceeds_pto_entit_warning out nocopy boolean
248 ,p_exceeds_run_total_warning out nocopy boolean
249 ,p_abs_overlap_warning out nocopy boolean
250 ,p_abs_day_after_warning out nocopy boolean
251 ,p_dur_overwritten_warning out nocopy boolean
252 ,p_del_element_entry_warning out nocopy boolean
253 ) AS
254
255 CURSOR get_person_id IS
256 SELECT person_id
257 FROM per_absence_attendances_v
258 WHERE absence_attendance_id = p_absence_attendance_id;
259
260 l_proc_name varchar2(100);
261 l_person_id per_absence_attendances_v.person_id%type;
262
263 BEGIN
264 l_proc_name := g_proc_name||'UPDATE_MX_PERSON_ABSENCE';
265 hr_utility.trace('Entering '||l_proc_name);
266
267 OPEN get_person_id;
268 FETCH get_person_id INTO l_person_id;
269 CLOSE get_person_id;
270
271 fnd_profile.put('PER_PERSON_ID',l_person_id);
272
273 hr_mx_utility.check_bus_grp(hr_mx_utility.get_bg_from_person(l_person_id),'MX');
274
275 hr_person_absence_api.update_person_absence
276 (p_validate => p_validate
277 ,p_effective_date => p_effective_date
278 ,p_absence_attendance_id => p_absence_attendance_id
279 ,p_abs_attendance_reason_id => p_abs_attendance_reason_id
280 ,p_comments => p_comments
281 ,p_date_notification => p_date_notification
282 ,p_date_projected_start => p_date_projected_start
283 ,p_time_projected_start => p_time_projected_start
284 ,p_date_projected_end => p_date_projected_end
285 ,p_time_projected_end => p_time_projected_end
286 ,p_date_start => p_date_start
287 ,p_time_start => p_time_start
288 ,p_date_end => p_date_end
289 ,p_time_end => p_time_end
290 ,p_absence_days => p_absence_days
291 ,p_absence_hours => p_absence_hours
292 ,p_authorising_person_id => p_authorising_person_id
293 ,p_replacement_person_id => p_replacement_person_id
294 ,p_attribute_category => p_attribute_category
295 ,p_attribute1 => p_attribute1
296 ,p_attribute2 => p_attribute2
297 ,p_attribute3 => p_attribute3
298 ,p_attribute4 => p_attribute4
299 ,p_attribute5 => p_attribute5
300 ,p_attribute6 => p_attribute6
301 ,p_attribute7 => p_attribute7
302 ,p_attribute8 => p_attribute8
303 ,p_attribute9 => p_attribute9
304 ,p_attribute10 => p_attribute10
305 ,p_attribute11 => p_attribute11
306 ,p_attribute12 => p_attribute12
307 ,p_attribute13 => p_attribute13
308 ,p_attribute14 => p_attribute14
309 ,p_attribute15 => p_attribute15
310 ,p_attribute16 => p_attribute16
311 ,p_attribute17 => p_attribute17
312 ,p_attribute18 => p_attribute18
313 ,p_attribute19 => p_attribute19
314 ,p_attribute20 => p_attribute20
315 ,p_period_of_incapacity_id => p_period_of_incapacity_id
316 ,p_ssp1_issued => p_ssp1_issued
317 ,p_maternity_id => p_maternity_id
318 ,p_sickness_start_date => p_sickness_start_date
319 ,p_sickness_end_date => p_sickness_end_date
320 ,p_pregnancy_related_illness => p_pregnancy_related_illness
321 ,p_reason_for_notification_dela => p_reason_for_notification_dela
322 ,p_accept_late_notification_fla => p_accept_late_notification_fla
323 ,p_linked_absence_id => p_linked_absence_id
324 ,p_batch_id => p_batch_id
328 ,p_object_version_number => p_object_version_number
325 ,p_abs_information_category => 'MX'
326 ,p_abs_information1 => p_type_of_disability
327 ,p_abs_information2 => p_disability_id
329 ,p_dur_dys_less_warning => p_dur_dys_less_warning
330 ,p_dur_hrs_less_warning => p_dur_hrs_less_warning
331 ,p_exceeds_pto_entit_warning => p_exceeds_pto_entit_warning
332 ,p_exceeds_run_total_warning => p_exceeds_run_total_warning
333 ,p_abs_overlap_warning => p_abs_overlap_warning
334 ,p_abs_day_after_warning => p_abs_day_after_warning
335 ,p_dur_overwritten_warning => p_dur_overwritten_warning
336 ,p_del_element_entry_warning => p_del_element_entry_warning);
337
338 hr_utility.trace('Leaving '||l_proc_name);
339 END UPDATE_MX_PERSON_ABSENCE;
340 BEGIN
341 g_proc_name := 'HR_MX_PERSON_ABSENCE_API.';
342 END HR_MX_PERSON_ABSENCE_API;