[Home] [Help]
PACKAGE BODY: APPS.HR_STD_HOL_ABS_API
Source
1 Package Body hr_std_hol_abs_api as
2 /* $Header: peshaapi.pkb 115.7 2002/12/11 15:21:12 eumenyio ship $ */
3 --
4 -- Package Variables
5 --
6 g_package varchar2(33) := 'hr_std_hol_abs_api';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< create_std_hol_abs >---------------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_std_hol_abs
13 (p_date_not_taken in date,
14 p_person_id in number,
15 p_standard_holiday_id in number,
16 p_actual_date_taken in date default null,
17 p_reason in varchar2 default null,
18 p_expired in varchar2 default null,
19 p_attribute_category in varchar2 default null,
20 p_attribute1 in varchar2 default null,
21 p_attribute2 in varchar2 default null,
22 p_attribute3 in varchar2 default null,
23 p_attribute4 in varchar2 default null,
24 p_attribute5 in varchar2 default null,
25 p_attribute6 in varchar2 default null,
26 p_attribute7 in varchar2 default null,
27 p_attribute8 in varchar2 default null,
28 p_attribute9 in varchar2 default null,
29 p_attribute10 in varchar2 default null,
30 p_attribute11 in varchar2 default null,
31 p_attribute12 in varchar2 default null,
32 p_attribute13 in varchar2 default null,
33 p_attribute14 in varchar2 default null,
34 p_attribute15 in varchar2 default null,
35 p_attribute16 in varchar2 default null,
36 p_attribute17 in varchar2 default null,
37 p_attribute18 in varchar2 default null,
38 p_attribute19 in varchar2 default null,
39 p_attribute20 in varchar2 default null,
40 p_validate in boolean default false,
41 p_effective_date in date,
42 p_object_version_number out nocopy number,
43 p_std_holiday_absences_id out nocopy number)
44 is
45 --
46 l_proc varchar2(72) := g_package||'create_std_hol_abs';
47 l_object_version_number number;
48 l_std_holiday_absences_id number;
49 --
50 begin
51 hr_utility.set_location('Entering:'|| l_proc, 10);
52 --
53 -- Issue a savepoint
54 --
55 savepoint create_std_hol_abs;
56 --
57 hr_utility.set_location(l_proc, 20);
58 --
59 -- Process Logic
60 --
61 --
62 -- Start of API User Hook for the before hook
63 --
64 --
65 begin
66 hr_std_hol_abs_bk1.create_std_hol_abs_b
67 (p_date_not_taken => p_date_not_taken
68 ,p_person_id => p_person_id
69 ,p_standard_holiday_id => p_standard_holiday_id
70 ,p_actual_date_taken => p_actual_date_taken
71 ,p_reason => p_reason
72 ,p_expired => p_expired
73 ,p_attribute_category => p_attribute_category
74 ,p_attribute1 => p_attribute1
75 ,p_attribute2 => p_attribute2
76 ,p_attribute3 => p_attribute3
77 ,p_attribute4 => p_attribute4
78 ,p_attribute5 => p_attribute5
79 ,p_attribute6 => p_attribute6
80 ,p_attribute7 => p_attribute7
81 ,p_attribute8 => p_attribute8
82 ,p_attribute9 => p_attribute9
83 ,p_attribute10 => p_attribute10
84 ,p_attribute11 => p_attribute11
85 ,p_attribute12 => p_attribute12
86 ,p_attribute13 => p_attribute13
87 ,p_attribute14 => p_attribute14
88 ,p_attribute15 => p_attribute15
89 ,p_attribute16 => p_attribute16
90 ,p_attribute17 => p_attribute17
91 ,p_attribute18 => p_attribute18
92 ,p_attribute19 => p_attribute19
93 ,p_attribute20 => p_attribute20
94 ,p_effective_date => p_effective_date
95 );
96 exception
97 when hr_api.cannot_find_prog_unit then
98 hr_api.cannot_find_prog_unit_error
99 (p_module_name => 'CREATE_STD_HOL_ABS',
100 p_hook_type => 'BP'
101 );
102 end;
103 --
104 --
105 per_sha_ins.ins
106 (p_std_holiday_absences_id => l_std_holiday_absences_id
107 ,p_date_not_taken => p_date_not_taken
108 ,p_person_id => p_person_id
109 ,p_standard_holiday_id => p_standard_holiday_id
110 ,p_actual_date_taken => p_actual_date_taken
111 ,p_reason => p_reason
112 ,p_expired => p_expired
113 ,p_attribute_category => p_attribute_category
114 ,p_attribute1 => p_attribute1
115 ,p_attribute2 => p_attribute2
116 ,p_attribute3 => p_attribute3
117 ,p_attribute4 => p_attribute4
118 ,p_attribute5 => p_attribute5
119 ,p_attribute6 => p_attribute6
120 ,p_attribute7 => p_attribute7
121 ,p_attribute8 => p_attribute8
122 ,p_attribute9 => p_attribute9
123 ,p_attribute10 => p_attribute10
124 ,p_attribute11 => p_attribute11
125 ,p_attribute12 => p_attribute12
126 ,p_attribute13 => p_attribute13
127 ,p_attribute14 => p_attribute14
128 ,p_attribute15 => p_attribute15
129 ,p_attribute16 => p_attribute16
130 ,p_attribute17 => p_attribute17
131 ,p_attribute18 => p_attribute18
132 ,p_attribute19 => p_attribute19
133 ,p_attribute20 => p_attribute20
134 ,p_object_version_number => l_object_version_number );
135 --
136 hr_utility.set_location(l_proc, 8);
137 --
138 --
139 -- Start of API User Hook for the after hook
140 --
141 begin
142 hr_std_hol_abs_bk1.create_std_hol_abs_a
143 (p_date_not_taken => p_date_not_taken
144 ,p_person_id => p_person_id
145 ,p_standard_holiday_id => p_standard_holiday_id
146 ,p_actual_date_taken => p_actual_date_taken
147 ,p_reason => p_reason
148 ,p_expired => p_expired
149 ,p_attribute_category => p_attribute_category
150 ,p_attribute1 => p_attribute1
151 ,p_attribute2 => p_attribute2
152 ,p_attribute3 => p_attribute3
153 ,p_attribute4 => p_attribute4
154 ,p_attribute5 => p_attribute5
155 ,p_attribute6 => p_attribute6
156 ,p_attribute7 => p_attribute7
157 ,p_attribute8 => p_attribute8
158 ,p_attribute9 => p_attribute9
159 ,p_attribute10 => p_attribute10
160 ,p_attribute11 => p_attribute11
161 ,p_attribute12 => p_attribute12
162 ,p_attribute13 => p_attribute13
163 ,p_attribute14 => p_attribute14
164 ,p_attribute15 => p_attribute15
165 ,p_attribute16 => p_attribute16
166 ,p_attribute17 => p_attribute17
167 ,p_attribute18 => p_attribute18
168 ,p_attribute19 => p_attribute19
169 ,p_attribute20 => p_attribute20
170 ,p_effective_date => p_effective_date
171 ,p_object_version_number => l_object_version_number
172 ,p_std_holiday_absences_id => l_std_holiday_absences_id
173 );
174 exception
175 when hr_api.cannot_find_prog_unit then
176 hr_api.cannot_find_prog_unit_error
177 (p_module_name => 'CREATE_STD_HOL_ABS',
178 p_hook_type => 'AP'
179 );
180 end;
181 --
182 if p_validate then
183 raise hr_api.validate_enabled;
184 end if;
185 --
186 p_object_version_number := l_object_version_number;
187 p_std_holiday_absences_id := l_std_holiday_absences_id;
188 --
189 hr_utility.set_location(' Leaving:'||l_proc, 11);
190 exception
191 when hr_api.validate_enabled then
192 --
193 -- As the Validate_Enabled exception has been raised
194 -- we must rollback to the savepoint
195 --
196 ROLLBACK TO create_std_hol_abs;
197 --
198 -- Only set output warning arguments
199 -- (Any key or derived arguments must be set to null
200 -- when validation only mode is being used.)
201 --
202 p_std_holiday_absences_id := null;
203 p_object_version_number := null;
204 --
205 when others then
206 --
207 -- A validation or unexpected error has occurred
208 --
209 -- Added as part of the fix to bug 632479
210 --
211 p_std_holiday_absences_id := null;
212 p_object_version_number := null;
213 ROLLBACK TO create_std_hol_abs;
214 --
215 raise;
216 --
217 end create_std_hol_abs;
218 --
219 -- ----------------------------------------------------------------------------
220 -- |-------------------------< update_std_hol_abs >----------------------------|
221 -- ----------------------------------------------------------------------------
222 --
223 procedure update_std_hol_abs
224 (p_std_holiday_absences_id in number,
225 p_date_not_taken in date default hr_api.g_date,
226 p_standard_holiday_id in number default hr_api.g_number,
227 p_actual_date_taken in date default hr_api.g_date,
228 p_reason in varchar2 default hr_api.g_varchar2,
229 p_expired in varchar2 default hr_api.g_varchar2,
230 p_attribute_category in varchar2 default hr_api.g_varchar2,
231 p_attribute1 in varchar2 default hr_api.g_varchar2,
232 p_attribute2 in varchar2 default hr_api.g_varchar2,
233 p_attribute3 in varchar2 default hr_api.g_varchar2,
234 p_attribute4 in varchar2 default hr_api.g_varchar2,
235 p_attribute5 in varchar2 default hr_api.g_varchar2,
236 p_attribute6 in varchar2 default hr_api.g_varchar2,
237 p_attribute7 in varchar2 default hr_api.g_varchar2,
238 p_attribute8 in varchar2 default hr_api.g_varchar2,
239 p_attribute9 in varchar2 default hr_api.g_varchar2,
240 p_attribute10 in varchar2 default hr_api.g_varchar2,
241 p_attribute11 in varchar2 default hr_api.g_varchar2,
242 p_attribute12 in varchar2 default hr_api.g_varchar2,
243 p_attribute13 in varchar2 default hr_api.g_varchar2,
244 p_attribute14 in varchar2 default hr_api.g_varchar2,
245 p_attribute15 in varchar2 default hr_api.g_varchar2,
246 p_attribute16 in varchar2 default hr_api.g_varchar2,
247 p_attribute17 in varchar2 default hr_api.g_varchar2,
248 p_attribute18 in varchar2 default hr_api.g_varchar2,
249 p_attribute19 in varchar2 default hr_api.g_varchar2,
250 p_attribute20 in varchar2 default hr_api.g_varchar2,
251 p_object_version_number in out nocopy number,
252 p_validate in boolean default false,
253 p_effective_date in date
254 )
255
256 is
257 --
258 -- Declare cursors and local variables
259 --
260 l_object_version_number per_std_holiday_absences.object_version_number%TYPE;
261 l_object_version_number_temp
262 per_std_holiday_absences.object_version_number%TYPE;
263 l_proc varchar2(72) := g_package||'update_std_hol_abs';
264 --
265 begin
266 hr_utility.set_location('Entering:'|| l_proc, 5);
267 --
268 -- Issue a savepoint
269 --
270 savepoint update_std_hol_abs;
271 --
272 hr_utility.set_location(l_proc, 6);
273 --
274 l_object_version_number_temp := p_object_version_number;
275 l_object_version_number := p_object_version_number;
276 --
277 -- Start of API User Hook for the before hook
278 --
279 begin
280 hr_std_hol_abs_bk2.update_std_hol_abs_b
281 (p_std_holiday_absences_id => p_std_holiday_absences_id
282 ,p_date_not_taken => p_date_not_taken
283 ,p_standard_holiday_id => p_standard_holiday_id
284 ,p_actual_date_taken => p_actual_date_taken
285 ,p_reason => p_reason
286 ,p_expired => p_expired
287 ,p_attribute_category => p_attribute_category
288 ,p_attribute1 => p_attribute1
289 ,p_attribute2 => p_attribute2
290 ,p_attribute3 => p_attribute3
291 ,p_attribute4 => p_attribute4
292 ,p_attribute5 => p_attribute5
293 ,p_attribute6 => p_attribute6
294 ,p_attribute7 => p_attribute7
295 ,p_attribute8 => p_attribute8
296 ,p_attribute9 => p_attribute9
297 ,p_attribute10 => p_attribute10
298 ,p_attribute11 => p_attribute11
299 ,p_attribute12 => p_attribute12
300 ,p_attribute13 => p_attribute13
301 ,p_attribute14 => p_attribute14
302 ,p_attribute15 => p_attribute15
303 ,p_attribute16 => p_attribute16
304 ,p_attribute17 => p_attribute17
305 ,p_attribute18 => p_attribute18
306 ,p_attribute19 => p_attribute19
307 ,p_attribute20 => p_attribute20
308 ,p_object_version_number => p_object_version_number
309 ,p_effective_date => p_effective_date
310 );
311 exception
312 when hr_api.cannot_find_prog_unit then
313 hr_api.cannot_find_prog_unit_error
314 (p_module_name => 'UPDATE_STD_HOL_ABS',
315 p_hook_type => 'BP'
316 );
317 end;
318 --
319 --
320 -- Update Phone details.
321 --
322 per_sha_upd.upd
323 (p_std_holiday_absences_id => p_std_holiday_absences_id
324 ,p_date_not_taken => p_date_not_taken
325 ,p_standard_holiday_id => p_standard_holiday_id
326 ,p_actual_date_taken => p_actual_date_taken
327 ,p_reason => p_reason
328 ,p_expired => p_expired
329 ,p_attribute_category => p_attribute_category
330 ,p_attribute1 => p_attribute1
331 ,p_attribute2 => p_attribute2
332 ,p_attribute3 => p_attribute3
333 ,p_attribute4 => p_attribute4
334 ,p_attribute5 => p_attribute5
335 ,p_attribute6 => p_attribute6
336 ,p_attribute7 => p_attribute7
337 ,p_attribute8 => p_attribute8
338 ,p_attribute9 => p_attribute9
339 ,p_attribute10 => p_attribute10
340 ,p_attribute11 => p_attribute11
341 ,p_attribute12 => p_attribute12
342 ,p_attribute13 => p_attribute13
343 ,p_attribute14 => p_attribute14
344 ,p_attribute15 => p_attribute15
345 ,p_attribute16 => p_attribute16
346 ,p_attribute17 => p_attribute17
347 ,p_attribute18 => p_attribute18
348 ,p_attribute19 => p_attribute19
349 ,p_attribute20 => p_attribute20
350 ,p_object_version_number => l_object_version_number
351 );
352 --
353 hr_utility.set_location(l_proc, 8);
354 --
355 -- Start of API User Hook for the after
356 --
357 begin
358 hr_std_hol_abs_bk2.update_std_hol_abs_a
359 (p_std_holiday_absences_id => p_std_holiday_absences_id
360 ,p_date_not_taken => p_date_not_taken
361 ,p_standard_holiday_id => p_standard_holiday_id
362 ,p_actual_date_taken => p_actual_date_taken
363 ,p_reason => p_reason
364 ,p_expired => p_expired
365 ,p_attribute_category => p_attribute_category
366 ,p_attribute1 => p_attribute1
367 ,p_attribute2 => p_attribute2
368 ,p_attribute3 => p_attribute3
369 ,p_attribute4 => p_attribute4
370 ,p_attribute5 => p_attribute5
371 ,p_attribute6 => p_attribute6
372 ,p_attribute7 => p_attribute7
373 ,p_attribute8 => p_attribute8
374 ,p_attribute9 => p_attribute9
375 ,p_attribute10 => p_attribute10
376 ,p_attribute11 => p_attribute11
377 ,p_attribute12 => p_attribute12
378 ,p_attribute13 => p_attribute13
379 ,p_attribute14 => p_attribute14
380 ,p_attribute15 => p_attribute15
381 ,p_attribute16 => p_attribute16
382 ,p_attribute17 => p_attribute17
383 ,p_attribute18 => p_attribute18
384 ,p_attribute19 => p_attribute19
385 ,p_attribute20 => p_attribute20
386 ,p_object_version_number => l_object_version_number
387 ,p_effective_date => p_effective_date
388 );
389 exception
390 when hr_api.cannot_find_prog_unit then
391 hr_api.cannot_find_prog_unit_error
392 (p_module_name => 'UPDATE_STD_HOL_ABS',
393 p_hook_type => 'AP'
394 );
395 end;
396 --
397 -- End of API User Hook for the after hook of update_phone.
398 --
399 --
400 -- When in validation only mode raise the Validate_Enabled exception
401 --
402 if p_validate then
403 raise hr_api.validate_enabled;
404 end if;
405 --
406 p_object_version_number := l_object_version_number;
407 hr_utility.set_location(' Leaving:'||l_proc, 11);
408 exception
409 when hr_api.validate_enabled then
410 --
411 -- As the Validate_Enabled exception has been raised
412 -- we must rollback to the savepoint
413 --
414 ROLLBACK TO update_std_hol_abs;
415 --
416 -- Only set output warning arguments
417 -- (Any key or derived arguments must be set to null
418 -- when validation only mode is being used.)
419 --
420 p_object_version_number := l_object_version_number_temp;
421 --
422 when others then
423 --
424 -- A validation or unexpected error has occurred
425 --
426 -- Added as part of the fix to bug 632479
427 --
428 p_object_version_number := l_object_version_number_temp;
429 ROLLBACK TO update_std_hol_abs;
430 --
431 raise;
432 --
433 end update_std_hol_abs;
434 -- ----------------------------------------------------------------------------
435 -- |-------------------------< delete_std_hol_abs >---------------------------|
436 -- ----------------------------------------------------------------------------
437 --
438 procedure delete_std_hol_abs
439 (p_validate in boolean default false
440 ,p_std_holiday_absences_id in number
441 ,p_object_version_number in number
442 ) is
443 --
444 l_proc varchar2(72) := g_package||'delete_std_hol_abs';
445 --
446 begin
447 hr_utility.set_location('Entering:'|| l_proc, 5);
448 --
449 -- Issue a savepoint
450 --
451 savepoint delete_std_hol_abs;
452 --
453 hr_utility.set_location(l_proc, 7);
454 --
455 -- Process Logic
456 --
457 --
458 -- Start of API User Hook for the before hook.
459 --
460 begin
461 hr_std_hol_abs_bk3.delete_std_hol_abs_b
462 (p_std_holiday_absences_id => p_std_holiday_absences_id
463 ,p_object_version_number => p_object_version_number
464 );
465 exception
466 when hr_api.cannot_find_prog_unit then
467 hr_api.cannot_find_prog_unit_error
468 (p_module_name => 'DELETE_STD_HOL_ABS',
469 p_hook_type => 'BP'
470 );
471 end;
472
473 --
474 per_sha_del.del
475 (p_std_holiday_absences_id => p_std_holiday_absences_id
476 ,p_object_version_number => p_object_version_number);
477 --
478 hr_utility.set_location(l_proc, 8);
479 --
480 -- Start of API User Hook for the after hook of delete_phone
481 --
482 begin
483 hr_std_hol_abs_bk3.delete_std_hol_abs_a
484 (p_std_holiday_absences_id => p_std_holiday_absences_id
485 ,p_object_version_number => p_object_version_number
486 );
487 exception
488 when hr_api.cannot_find_prog_unit then
489 hr_api.cannot_find_prog_unit_error
490 (p_module_name => 'DELETE_STD_HOL_ABS',
491 p_hook_type => 'AP'
492 );
493 end;
494 --
495 -- End of API User Hook for the after hook of delete_phone.
496 --
497 --
498 -- When in validation only mode raise the Validate_Enabled exception
499 --
500 if p_validate then
501 raise hr_api.validate_enabled;
502 end if;
503 --
504 hr_utility.set_location(' Leaving:'||l_proc, 11);
505 exception
506 when hr_api.validate_enabled then
507 --
508 -- As the Validate_Enabled exception has been raised
509 -- we must rollback to the savepoint
510 --
511 ROLLBACK TO delete_std_hol_abs;
512 --
513 when others then
514 --
515 -- A validation or unexpected error has occurred
516 --
517 -- Added as part of the fix to bug 632479
518 --
519 ROLLBACK TO delete_std_hol_abs;
520 --
521 raise;
522 --
523 end delete_std_hol_abs;
524 --
525 end hr_std_hol_abs_api;