[Home] [Help]
PACKAGE BODY: APPS.HR_APPRAISAL_PERIOD_API
Source
1 Package Body hr_appraisal_period_api as
2 /* $Header: pepmaapi.pkb 120.3 2006/03/27 23:54:26 vbala noship $ */
3 --
4 -- Package Variables
5 --
6 g_package varchar2(33) := ' hr_appraisal_period_api.';
7 g_debug boolean := hr_utility.debug_enabled;
8
9 --
10 -- ----------------------------------------------------------------------------
11 -- |--------------------------< set_plan_status >-----------------------------|
12 -- ----------------------------------------------------------------------------
13 --
14 procedure set_plan_status
15 (p_plan_id in number
16 ,p_effective_date in date
17 ) is
18 --
19 -- Declare cursors and local variables
20 --
21 l_proc varchar2(72) := g_package||'set_plan_status';
22 l_ovn number;
23 l_status_code per_perf_mgmt_plans.status_code%TYPE;
24 l_dummy boolean;
25
26 begin
27
28 IF g_debug THEN hr_utility.set_location('Entering:'|| l_proc, 10); END IF;
29
30 --
31 -- Only attempt to set the plan's status if the procedure has been
32 -- called correctly.
33 --
34 IF p_plan_id IS NOT NULL THEN
35
36 IF per_pmp_bus.return_status_code(p_plan_id) = 'PUBLISHED' THEN
37 --
38 -- Call the plan update row-handler.
39 --
40 IF g_debug THEN hr_utility.set_location(l_proc, 30); END IF;
41
42 l_ovn := per_pmp_bus.return_ovn(p_plan_id);
43 l_status_code := 'UPDATED';
44
45 per_pmp_upd.upd
46 (p_plan_id => p_plan_id
47 ,p_effective_date => p_effective_date
48 ,p_object_version_number => l_ovn
49 ,p_status_code => l_status_code
50 ,p_duplicate_name_warning => l_dummy
51 ,p_no_life_events_warning => l_dummy);
52 END IF;
53 END IF;
54
55 IF g_debug THEN hr_utility.set_location('Leaving:'|| l_proc, 980); END IF;
56
57 end set_plan_status;
58 --
59 -- ----------------------------------------------------------------------------
60 -- |--------------------------< create_appraisal_period >---------------------|
61 -- ----------------------------------------------------------------------------
62 --
63 procedure create_appraisal_period
64 (p_validate in boolean default false
65 ,p_effective_date in date
66 ,p_plan_id in number
67 ,p_appraisal_template_id in number
68 ,p_start_date in date
69 ,p_end_date in date
70 ,p_task_start_date in date
71 ,p_task_end_date in date
72 ,p_initiator_code in varchar2 default null
73 ,p_appraisal_system_type in varchar2 default null
74 ,p_appraisal_type in varchar2 default null
75 ,p_appraisal_assmt_status in varchar2 default null
76 ,p_auto_conc_process in varchar2 default null
77 ,p_days_before_task_st_dt in number default null
78 ,p_attribute_category in varchar2 default null
79 ,p_attribute1 in varchar2 default null
80 ,p_attribute2 in varchar2 default null
81 ,p_attribute3 in varchar2 default null
82 ,p_attribute4 in varchar2 default null
83 ,p_attribute5 in varchar2 default null
84 ,p_attribute6 in varchar2 default null
85 ,p_attribute7 in varchar2 default null
86 ,p_attribute8 in varchar2 default null
87 ,p_attribute9 in varchar2 default null
88 ,p_attribute10 in varchar2 default null
89 ,p_attribute11 in varchar2 default null
90 ,p_attribute12 in varchar2 default null
91 ,p_attribute13 in varchar2 default null
92 ,p_attribute14 in varchar2 default null
93 ,p_attribute15 in varchar2 default null
94 ,p_attribute16 in varchar2 default null
95 ,p_attribute17 in varchar2 default null
96 ,p_attribute18 in varchar2 default null
97 ,p_attribute19 in varchar2 default null
98 ,p_attribute20 in varchar2 default null
99 ,p_attribute21 in varchar2 default null
100 ,p_attribute22 in varchar2 default null
101 ,p_attribute23 in varchar2 default null
102 ,p_attribute24 in varchar2 default null
103 ,p_attribute25 in varchar2 default null
104 ,p_attribute26 in varchar2 default null
105 ,p_attribute27 in varchar2 default null
106 ,p_attribute28 in varchar2 default null
107 ,p_attribute29 in varchar2 default null
108 ,p_attribute30 in varchar2 default null
109 ,p_appraisal_period_id out nocopy number
110 ,p_object_version_number out nocopy number
111 ) is
112 --
113 -- Declare cursors and local variables
114 --
115 l_proc varchar2(72) := g_package||'create_appraisal_period';
116 l_effective_date date;
117 l_start_date date;
118 l_end_date date;
119 l_task_start_date date;
120 l_task_end_date date;
121 l_appraisal_period_id number;
122 l_object_version_number number;
123
124 begin
125
126 IF g_debug THEN
127
128 hr_utility.set_location('Entering:'|| l_proc, 10);
129
130 hr_utility.trace(' ');
131 hr_utility.trace(' --------------------------------'||
132 '---------------------------------');
133 hr_utility.trace(' IN / IN OUT PARAMETER '||
134 ' VALUE');
135 hr_utility.trace(' --------------------------------'||
136 '+--------------------------------');
137 hr_utility.trace(' p_plan_id '||
138 to_char(p_plan_id));
139 hr_utility.trace(' p_appraisal_template_id '||
140 to_char(p_appraisal_template_id));
141 hr_utility.trace(' p_start_date '||
142 to_char(p_start_date));
143 hr_utility.trace(' p_end_date '||
144 to_char(p_end_date));
145 hr_utility.trace(' p_task_start_date '||
146 to_char(p_task_start_date));
147 hr_utility.trace(' p_task_end_date '||
148 to_char(p_task_end_date));
149 hr_utility.trace(' p_initiator_code '||
150 p_initiator_code);
151 hr_utility.trace(' --------------------------------'||
152 '+--------------------------------');
153 hr_utility.trace(' p_effective_date '||
154 to_char(p_effective_date));
155 hr_utility.trace(' --------------------------------'||
156 '---------------------------------');
157 hr_utility.trace(' ');
158
159 END IF;
160
161 --
162 -- Issue a savepoint
163 --
164 savepoint create_appraisal_period;
165
166 --
167 -- Truncate the time portion from all IN date parameters
168 --
169 l_effective_date := trunc(p_effective_date);
170 l_start_date := trunc(p_start_date);
171 l_end_date := trunc(p_end_date);
172 l_task_start_date := trunc(p_task_start_date);
173 l_task_end_date := trunc(p_task_end_date);
174
175 --
176 -- Call Before Process User Hook
177 --
178 begin
179 hr_appraisal_period_bk1.create_appraisal_period_b
180 (p_effective_date => l_effective_date
181 ,p_plan_id => p_plan_id
182 ,p_appraisal_template_id => p_appraisal_template_id
183 ,p_start_date => l_start_date
184 ,p_end_date => l_end_date
185 ,p_task_start_date => l_task_start_date
186 ,p_task_end_date => l_task_end_date
187 ,p_initiator_code => p_initiator_code
188 ,p_appraisal_system_type => p_appraisal_system_type
189 ,p_appraisal_type => p_appraisal_type
190 ,p_appraisal_assmt_status => p_appraisal_assmt_status
191 ,p_auto_conc_process => p_auto_conc_process
192 ,p_days_before_task_st_dt => p_days_before_task_st_dt
193 ,p_attribute_category => p_attribute_category
194 ,p_attribute1 => p_attribute1
195 ,p_attribute2 => p_attribute2
196 ,p_attribute3 => p_attribute3
197 ,p_attribute4 => p_attribute4
198 ,p_attribute5 => p_attribute5
199 ,p_attribute6 => p_attribute6
200 ,p_attribute7 => p_attribute7
201 ,p_attribute8 => p_attribute8
202 ,p_attribute9 => p_attribute9
203 ,p_attribute10 => p_attribute10
204 ,p_attribute11 => p_attribute11
205 ,p_attribute12 => p_attribute12
206 ,p_attribute13 => p_attribute13
207 ,p_attribute14 => p_attribute14
208 ,p_attribute15 => p_attribute15
209 ,p_attribute16 => p_attribute16
210 ,p_attribute17 => p_attribute17
211 ,p_attribute18 => p_attribute18
212 ,p_attribute19 => p_attribute19
213 ,p_attribute20 => p_attribute20
214 ,p_attribute21 => p_attribute21
215 ,p_attribute22 => p_attribute22
216 ,p_attribute23 => p_attribute23
217 ,p_attribute24 => p_attribute24
218 ,p_attribute25 => p_attribute25
219 ,p_attribute26 => p_attribute26
220 ,p_attribute27 => p_attribute27
221 ,p_attribute28 => p_attribute28
222 ,p_attribute29 => p_attribute29
223 ,p_attribute30 => p_attribute30
224 );
225 exception
226 when hr_api.cannot_find_prog_unit then
227 hr_api.cannot_find_prog_unit_error
228 (p_module_name => 'CREATE_APPRAISAL_PERIOD'
229 ,p_hook_type => 'BP'
230 );
231 end;
232
233 --
234 -- Process Logic
235 --
236 IF g_debug THEN hr_utility.set_location(l_proc, 30); END IF;
237
238 per_pma_ins.ins
239 (p_effective_date => l_effective_date
240 ,p_plan_id => p_plan_id
241 ,p_appraisal_template_id => p_appraisal_template_id
242 ,p_start_date => l_start_date
243 ,p_end_date => l_end_date
244 ,p_task_start_date => l_task_start_date
245 ,p_task_end_date => l_task_end_date
246 ,p_initiator_code => p_initiator_code
247 ,p_appraisal_system_type => p_appraisal_system_type
248 ,p_appraisal_type => p_appraisal_type
249 ,p_appraisal_assmt_status => p_appraisal_assmt_status
250 ,p_auto_conc_process => p_auto_conc_process
251 ,p_days_before_task_st_dt => p_days_before_task_st_dt
252 ,p_attribute_category => p_attribute_category
253 ,p_attribute1 => p_attribute1
254 ,p_attribute2 => p_attribute2
255 ,p_attribute3 => p_attribute3
256 ,p_attribute4 => p_attribute4
257 ,p_attribute5 => p_attribute5
258 ,p_attribute6 => p_attribute6
259 ,p_attribute7 => p_attribute7
260 ,p_attribute8 => p_attribute8
261 ,p_attribute9 => p_attribute9
262 ,p_attribute10 => p_attribute10
263 ,p_attribute11 => p_attribute11
264 ,p_attribute12 => p_attribute12
265 ,p_attribute13 => p_attribute13
266 ,p_attribute14 => p_attribute14
267 ,p_attribute15 => p_attribute15
268 ,p_attribute16 => p_attribute16
269 ,p_attribute17 => p_attribute17
270 ,p_attribute18 => p_attribute18
271 ,p_attribute19 => p_attribute19
272 ,p_attribute20 => p_attribute20
273 ,p_attribute21 => p_attribute21
274 ,p_attribute22 => p_attribute22
275 ,p_attribute23 => p_attribute23
276 ,p_attribute24 => p_attribute24
277 ,p_attribute25 => p_attribute25
278 ,p_attribute26 => p_attribute26
279 ,p_attribute27 => p_attribute27
280 ,p_attribute28 => p_attribute28
281 ,p_attribute29 => p_attribute29
282 ,p_attribute30 => p_attribute30
283 ,p_appraisal_period_id => l_appraisal_period_id
284 ,p_object_version_number => l_object_version_number
285 );
286
287 --
288 -- Call After Process User Hook
289 --
290 begin
291 hr_appraisal_period_bk1.create_appraisal_period_a
292 (p_effective_date => l_effective_date
293 ,p_plan_id => p_plan_id
294 ,p_appraisal_template_id => p_appraisal_template_id
295 ,p_start_date => l_start_date
296 ,p_end_date => l_end_date
297 ,p_task_start_date => l_task_start_date
298 ,p_task_end_date => l_task_end_date
299 ,p_initiator_code => p_initiator_code
300 ,p_appraisal_system_type => p_appraisal_system_type
301 ,p_appraisal_type => p_appraisal_type
302 ,p_appraisal_assmt_status => p_appraisal_assmt_status
303 ,p_auto_conc_process => p_auto_conc_process
304 ,p_days_before_task_st_dt => p_days_before_task_st_dt
305 ,p_attribute_category => p_attribute_category
306 ,p_attribute1 => p_attribute1
307 ,p_attribute2 => p_attribute2
308 ,p_attribute3 => p_attribute3
309 ,p_attribute4 => p_attribute4
310 ,p_attribute5 => p_attribute5
311 ,p_attribute6 => p_attribute6
312 ,p_attribute7 => p_attribute7
313 ,p_attribute8 => p_attribute8
314 ,p_attribute9 => p_attribute9
315 ,p_attribute10 => p_attribute10
316 ,p_attribute11 => p_attribute11
317 ,p_attribute12 => p_attribute12
318 ,p_attribute13 => p_attribute13
319 ,p_attribute14 => p_attribute14
320 ,p_attribute15 => p_attribute15
321 ,p_attribute16 => p_attribute16
322 ,p_attribute17 => p_attribute17
323 ,p_attribute18 => p_attribute18
324 ,p_attribute19 => p_attribute19
325 ,p_attribute20 => p_attribute20
326 ,p_attribute21 => p_attribute21
327 ,p_attribute22 => p_attribute22
328 ,p_attribute23 => p_attribute23
329 ,p_attribute24 => p_attribute24
330 ,p_attribute25 => p_attribute25
331 ,p_attribute26 => p_attribute26
332 ,p_attribute27 => p_attribute27
333 ,p_attribute28 => p_attribute28
334 ,p_attribute29 => p_attribute29
335 ,p_attribute30 => p_attribute30
336 ,p_appraisal_period_id => l_appraisal_period_id
337 ,p_object_version_number => l_object_version_number
338 );
339 exception
340 when hr_api.cannot_find_prog_unit then
341 hr_api.cannot_find_prog_unit_error
342 (p_module_name => 'CREATE_APPRAISAL_PERIOD'
343 ,p_hook_type => 'AP'
344 );
345 end;
346
347 --
348 -- Update the plan's status to Updated if the plan is already
349 -- published.
350 --
351 set_plan_status(p_plan_id,p_start_date);
352
353
354 IF g_debug THEN hr_utility.set_location(l_proc, 40); END IF;
355 --
356 -- When in validation only mode raise the Validate_Enabled exception
357 --
358 if p_validate then
359 raise hr_api.validate_enabled;
360 end if;
361 --
362 -- Set all IN OUT and OUT parameters with out values
363 --
364 p_appraisal_period_id := l_appraisal_period_id;
365 p_object_version_number := l_object_version_number;
366
367 --
368 -- Pipe the main IN OUT / OUT parameters for ease of debugging.
369 --
370 IF g_debug THEN
371
372 hr_utility.trace(' ');
373 hr_utility.trace(' --------------------------------'||
374 '---------------------------------');
375 hr_utility.trace(' IN OUT / OUT PARAMETER '||
376 ' VALUE');
377 hr_utility.trace(' --------------------------------'||
378 '+--------------------------------');
379 hr_utility.trace(' p_appraisal_period_id '||
380 to_char(p_appraisal_period_id));
381 hr_utility.trace(' p_object_version_number '||
382 to_char(p_object_version_number));
383 hr_utility.trace(' --------------------------------'||
384 '---------------------------------');
385 hr_utility.trace(' ');
386 hr_utility.set_location(' Leaving:'||l_proc, 970);
387
388 END IF;
389
390 exception
391 when hr_api.validate_enabled then
392 --
393 -- As the Validate_Enabled exception has been raised
394 -- we must rollback to the savepoint
395 --
396 rollback to create_appraisal_period;
397 --
398 -- Reset IN OUT parameters and set OUT parameters
399 -- (Any key or derived arguments must be set to null
400 -- when validation only mode is being used.)
401 --
402 p_appraisal_period_id := null;
403 p_object_version_number := null;
404 hr_utility.set_location(' Leaving:'||l_proc, 980);
405 when others then
406 --
407 -- A validation or unexpected error has occured
408 --
409 rollback to create_appraisal_period;
410 --
411 -- Reset IN OUT parameters and set all
412 -- OUT parameters, including warnings, to null
413 --
414 p_appraisal_period_id := null;
415 p_object_version_number := null;
416 hr_utility.set_location(' Leaving:'||l_proc, 990);
417 raise;
418 end create_appraisal_period;
419 --
420 -- ----------------------------------------------------------------------------
421 -- |--------------------------< update_appraisal_period >---------------------|
422 -- ----------------------------------------------------------------------------
423 --
424 procedure update_appraisal_period
425 (p_validate in boolean default false
426 ,p_effective_date in date
427 ,p_appraisal_period_id in number
428 ,p_object_version_number in out nocopy number
429 ,p_start_date in date default hr_api.g_date
430 ,p_end_date in date default hr_api.g_date
431 ,p_task_start_date in date default hr_api.g_date
432 ,p_task_end_date in date default hr_api.g_date
433 ,p_initiator_code in varchar2 default hr_api.g_varchar2
434 ,p_appraisal_system_type in varchar2 default hr_api.g_varchar2
435 ,p_appraisal_type in varchar2 default hr_api.g_varchar2
436 ,p_appraisal_assmt_status in varchar2 default hr_api.g_varchar2
437 ,p_auto_conc_process in varchar2 default hr_api.g_varchar2
438 ,p_days_before_task_st_dt in number default hr_api.g_number
439 ,p_attribute_category in varchar2 default hr_api.g_varchar2
440 ,p_attribute1 in varchar2 default hr_api.g_varchar2
441 ,p_attribute2 in varchar2 default hr_api.g_varchar2
442 ,p_attribute3 in varchar2 default hr_api.g_varchar2
443 ,p_attribute4 in varchar2 default hr_api.g_varchar2
444 ,p_attribute5 in varchar2 default hr_api.g_varchar2
445 ,p_attribute6 in varchar2 default hr_api.g_varchar2
446 ,p_attribute7 in varchar2 default hr_api.g_varchar2
447 ,p_attribute8 in varchar2 default hr_api.g_varchar2
448 ,p_attribute9 in varchar2 default hr_api.g_varchar2
449 ,p_attribute10 in varchar2 default hr_api.g_varchar2
450 ,p_attribute11 in varchar2 default hr_api.g_varchar2
451 ,p_attribute12 in varchar2 default hr_api.g_varchar2
452 ,p_attribute13 in varchar2 default hr_api.g_varchar2
453 ,p_attribute14 in varchar2 default hr_api.g_varchar2
454 ,p_attribute15 in varchar2 default hr_api.g_varchar2
455 ,p_attribute16 in varchar2 default hr_api.g_varchar2
456 ,p_attribute17 in varchar2 default hr_api.g_varchar2
457 ,p_attribute18 in varchar2 default hr_api.g_varchar2
458 ,p_attribute19 in varchar2 default hr_api.g_varchar2
459 ,p_attribute20 in varchar2 default hr_api.g_varchar2
460 ,p_attribute21 in varchar2 default hr_api.g_varchar2
461 ,p_attribute22 in varchar2 default hr_api.g_varchar2
462 ,p_attribute23 in varchar2 default hr_api.g_varchar2
463 ,p_attribute24 in varchar2 default hr_api.g_varchar2
464 ,p_attribute25 in varchar2 default hr_api.g_varchar2
465 ,p_attribute26 in varchar2 default hr_api.g_varchar2
466 ,p_attribute27 in varchar2 default hr_api.g_varchar2
467 ,p_attribute28 in varchar2 default hr_api.g_varchar2
468 ,p_attribute29 in varchar2 default hr_api.g_varchar2
469 ,p_attribute30 in varchar2 default hr_api.g_varchar2
470 ) is
471 --
472 -- Declare cursors and local variables
473 --
474 l_effective_date date;
475 l_proc varchar2(72) := g_package||'update_appraisal_period';
476 l_start_date date;
477 l_end_date date;
478 l_task_start_date date;
479 l_task_end_date date;
480 l_object_version_number number := p_object_version_number;
481
482 begin
483
484 IF g_debug THEN
485
486 hr_utility.set_location('Entering:'|| l_proc, 10);
487
488 hr_utility.trace(' ');
489 hr_utility.trace(' --------------------------------'||
490 '---------------------------------');
491 hr_utility.trace(' IN / IN OUT PARAMETER '||
492 ' VALUE');
493 hr_utility.trace(' --------------------------------'||
494 '+--------------------------------');
495 hr_utility.trace(' p_appraisal_period_id '||
496 to_char(p_appraisal_period_id));
497 hr_utility.trace(' p_object_version_number '||
498 to_char(p_object_version_number));
499 hr_utility.trace(' p_start_date '||
500 to_char(p_start_date));
501 hr_utility.trace(' p_end_date '||
502 to_char(p_end_date));
503 hr_utility.trace(' p_task_start_date '||
504 to_char(p_task_start_date));
505 hr_utility.trace(' p_task_end_date '||
506 to_char(p_task_end_date));
507 hr_utility.trace(' p_initiator_code '||
508 p_initiator_code);
509 hr_utility.trace(' p_effective_date '||
510 to_char(p_effective_date));
511 hr_utility.trace(' --------------------------------'||
512 '---------------------------------');
513 hr_utility.trace(' ');
514
515 END IF;
516
517 --
518 -- Issue a savepoint
519 --
520 savepoint update_appraisal_period;
521
522 --
523 -- Truncate the time portion from all IN date parameters
524 --
525 l_effective_date := trunc(p_effective_date);
526 l_start_date := trunc(p_start_date);
527 l_end_date := trunc(p_end_date);
528 l_task_start_date := trunc(p_task_start_date);
529 l_task_end_date := trunc(p_task_end_date);
530
531 --
532 -- Call Before Process User Hook
533 --
534 begin
535 hr_appraisal_period_bk2.update_appraisal_period_b
536 (p_effective_date => l_effective_date
537 ,p_appraisal_period_id => p_appraisal_period_id
538 ,p_object_version_number => l_object_version_number
539 ,p_start_date => l_start_date
540 ,p_end_date => l_end_date
541 ,p_task_start_date => l_task_start_date
542 ,p_task_end_date => l_task_end_date
543 ,p_initiator_code => p_initiator_code
544 ,p_appraisal_system_type => p_appraisal_system_type
545 ,p_appraisal_type => p_appraisal_type
546 ,p_appraisal_assmt_status => p_appraisal_assmt_status
547 ,p_auto_conc_process => p_auto_conc_process
548 ,p_days_before_task_st_dt => p_days_before_task_st_dt
549 ,p_attribute_category => p_attribute_category
550 ,p_attribute1 => p_attribute1
551 ,p_attribute2 => p_attribute2
552 ,p_attribute3 => p_attribute3
553 ,p_attribute4 => p_attribute4
554 ,p_attribute5 => p_attribute5
555 ,p_attribute6 => p_attribute6
556 ,p_attribute7 => p_attribute7
557 ,p_attribute8 => p_attribute8
558 ,p_attribute9 => p_attribute9
559 ,p_attribute10 => p_attribute10
560 ,p_attribute11 => p_attribute11
561 ,p_attribute12 => p_attribute12
562 ,p_attribute13 => p_attribute13
563 ,p_attribute14 => p_attribute14
564 ,p_attribute15 => p_attribute15
565 ,p_attribute16 => p_attribute16
566 ,p_attribute17 => p_attribute17
567 ,p_attribute18 => p_attribute18
568 ,p_attribute19 => p_attribute19
569 ,p_attribute20 => p_attribute20
570 ,p_attribute21 => p_attribute21
571 ,p_attribute22 => p_attribute22
572 ,p_attribute23 => p_attribute23
573 ,p_attribute24 => p_attribute24
574 ,p_attribute25 => p_attribute25
575 ,p_attribute26 => p_attribute26
576 ,p_attribute27 => p_attribute27
577 ,p_attribute28 => p_attribute28
578 ,p_attribute29 => p_attribute29
579 ,p_attribute30 => p_attribute30
580 );
581 exception
582 when hr_api.cannot_find_prog_unit then
583 hr_api.cannot_find_prog_unit_error
584 (p_module_name => 'UPDATE_APPRAISAL_PERIOD'
585 ,p_hook_type => 'BP'
586 );
587 end;
588
589 --
590 -- Process Logic
591 --
592 IF g_debug THEN hr_utility.set_location(l_proc, 30); END IF;
593
594 per_pma_upd.upd
595 (p_effective_date => l_effective_date
596 ,p_appraisal_period_id => p_appraisal_period_id
597 ,p_object_version_number => l_object_version_number
598 ,p_start_date => l_start_date
599 ,p_end_date => l_end_date
600 ,p_task_start_date => l_task_start_date
601 ,p_task_end_date => l_task_end_date
602 ,p_initiator_code => p_initiator_code
603 ,p_appraisal_system_type => p_appraisal_system_type
604 ,p_appraisal_type => p_appraisal_type
605 ,p_appraisal_assmt_status => p_appraisal_assmt_status
606 ,p_auto_conc_process => p_auto_conc_process
607 ,p_days_before_task_st_dt => p_days_before_task_st_dt
608 ,p_attribute_category => p_attribute_category
609 ,p_attribute1 => p_attribute1
610 ,p_attribute2 => p_attribute2
611 ,p_attribute3 => p_attribute3
612 ,p_attribute4 => p_attribute4
613 ,p_attribute5 => p_attribute5
614 ,p_attribute6 => p_attribute6
615 ,p_attribute7 => p_attribute7
616 ,p_attribute8 => p_attribute8
617 ,p_attribute9 => p_attribute9
618 ,p_attribute10 => p_attribute10
619 ,p_attribute11 => p_attribute11
620 ,p_attribute12 => p_attribute12
621 ,p_attribute13 => p_attribute13
622 ,p_attribute14 => p_attribute14
623 ,p_attribute15 => p_attribute15
624 ,p_attribute16 => p_attribute16
625 ,p_attribute17 => p_attribute17
626 ,p_attribute18 => p_attribute18
627 ,p_attribute19 => p_attribute19
628 ,p_attribute20 => p_attribute20
629 ,p_attribute21 => p_attribute21
630 ,p_attribute22 => p_attribute22
631 ,p_attribute23 => p_attribute23
632 ,p_attribute24 => p_attribute24
633 ,p_attribute25 => p_attribute25
634 ,p_attribute26 => p_attribute26
635 ,p_attribute27 => p_attribute27
636 ,p_attribute28 => p_attribute28
637 ,p_attribute29 => p_attribute29
638 ,p_attribute30 => p_attribute30
639 );
640
641 --
642 -- Call After Process User Hook
643 --
644 begin
645 hr_appraisal_period_bk2.update_appraisal_period_a
646 (p_effective_date => l_effective_date
647 ,p_appraisal_period_id => p_appraisal_period_id
648 ,p_object_version_number => l_object_version_number
649 ,p_start_date => l_start_date
650 ,p_end_date => l_end_date
651 ,p_task_start_date => l_task_start_date
652 ,p_task_end_date => l_task_end_date
653 ,p_initiator_code => p_initiator_code
654 ,p_appraisal_system_type => p_appraisal_system_type
655 ,p_appraisal_type => p_appraisal_type
656 ,p_appraisal_assmt_status => p_appraisal_assmt_status
657 ,p_auto_conc_process => p_auto_conc_process
658 ,p_days_before_task_st_dt => p_days_before_task_st_dt
659 ,p_attribute_category => p_attribute_category
660 ,p_attribute1 => p_attribute1
661 ,p_attribute2 => p_attribute2
662 ,p_attribute3 => p_attribute3
663 ,p_attribute4 => p_attribute4
664 ,p_attribute5 => p_attribute5
665 ,p_attribute6 => p_attribute6
666 ,p_attribute7 => p_attribute7
667 ,p_attribute8 => p_attribute8
668 ,p_attribute9 => p_attribute9
669 ,p_attribute10 => p_attribute10
670 ,p_attribute11 => p_attribute11
671 ,p_attribute12 => p_attribute12
672 ,p_attribute13 => p_attribute13
673 ,p_attribute14 => p_attribute14
674 ,p_attribute15 => p_attribute15
675 ,p_attribute16 => p_attribute16
676 ,p_attribute17 => p_attribute17
677 ,p_attribute18 => p_attribute18
678 ,p_attribute19 => p_attribute19
679 ,p_attribute20 => p_attribute20
680 ,p_attribute21 => p_attribute21
681 ,p_attribute22 => p_attribute22
682 ,p_attribute23 => p_attribute23
683 ,p_attribute24 => p_attribute24
684 ,p_attribute25 => p_attribute25
685 ,p_attribute26 => p_attribute26
686 ,p_attribute27 => p_attribute27
687 ,p_attribute28 => p_attribute28
688 ,p_attribute29 => p_attribute29
689 ,p_attribute30 => p_attribute30
690 );
691 exception
692 when hr_api.cannot_find_prog_unit then
693 hr_api.cannot_find_prog_unit_error
694 (p_module_name => 'UPDATE_APPRAISAL_PERIOD'
695 ,p_hook_type => 'AP'
696 );
697 end;
698
699 --
700 -- Update the plan's status to Updated if the plan is already
701 -- published.
702 --
703 set_plan_status(per_pma_shd.g_old_rec.plan_id
704 ,per_pma_shd.g_old_rec.start_date);
705
706 IF g_debug THEN hr_utility.set_location(l_proc, 40); END IF;
707 --
708 -- When in validation only mode raise the Validate_Enabled exception
709 --
710 if p_validate then
711 raise hr_api.validate_enabled;
712 end if;
713 --
714 -- Set all IN OUT and OUT parameters with out values
715 --
716 p_object_version_number := l_object_version_number;
717
718 --
719 -- Pipe the main IN OUT / OUT parameters for ease of debugging.
720 --
721 IF g_debug THEN
722
723 hr_utility.trace(' ');
724 hr_utility.trace(' --------------------------------'||
725 '---------------------------------');
726 hr_utility.trace(' IN OUT / OUT PARAMETER '||
727 ' VALUE');
728 hr_utility.trace(' --------------------------------'||
729 '+--------------------------------');
730 hr_utility.trace(' p_object_version_number '||
731 to_char(p_object_version_number));
732 hr_utility.trace(' --------------------------------'||
733 '---------------------------------');
734 hr_utility.trace(' ');
735 hr_utility.set_location(' Leaving:'||l_proc, 970);
736
737 END IF;
738
739 exception
740 when hr_api.validate_enabled then
741 --
742 -- As the Validate_Enabled exception has been raised
743 -- we must rollback to the savepoint
744 --
745 rollback to update_appraisal_period;
746 --
747 -- Reset IN OUT parameters and set OUT parameters
748 -- (Any key or derived arguments must be set to null
749 -- when validation only mode is being used.)
750 --
751 p_object_version_number := null;
752 hr_utility.set_location(' Leaving:'||l_proc, 980);
753 when others then
754 --
755 -- A validation or unexpected error has occured
756 --
757 rollback to update_appraisal_period;
758 --
759 -- Reset IN OUT parameters and set all
760 -- OUT parameters, including warnings, to null
761 --
762 p_object_version_number := null;
763 hr_utility.set_location(' Leaving:'||l_proc, 990);
764 raise;
765 end update_appraisal_period;
766 --
767 -- ----------------------------------------------------------------------------
768 -- |--------------------------< delete_appraisal_period >---------------------|
769 -- ----------------------------------------------------------------------------
770 --
771 procedure delete_appraisal_period
772 (p_validate in boolean default false
773 ,p_appraisal_period_id in number
774 ,p_object_version_number in number
775 ) is
776 --
777 -- Declare cursors and local variables
778 --
779 l_proc varchar2(72) := g_package||'delete_appraisal_period';
780
781 begin
782
783 IF g_debug THEN
784
785 hr_utility.set_location('Entering:'|| l_proc, 10);
786
787 hr_utility.trace(' ');
788 hr_utility.trace(' --------------------------------'||
789 '---------------------------------');
790 hr_utility.trace(' IN / IN OUT PARAMETER '||
791 ' VALUE');
792 hr_utility.trace(' --------------------------------'||
793 '+--------------------------------');
794 hr_utility.trace(' p_appraisal_period_id '||
795 to_char(p_appraisal_period_id));
796 hr_utility.trace(' p_object_version_number '||
797 to_char(p_object_version_number));
798 hr_utility.trace(' --------------------------------'||
799 '---------------------------------');
800 hr_utility.trace(' ');
801
802 END IF;
803
804 --
805 -- Issue a savepoint
806 --
807 savepoint delete_appraisal_period;
808
809 --
810 -- Call Before Process User Hook
811 --
812 begin
813 hr_appraisal_period_bk3.delete_appraisal_period_b
814 (p_appraisal_period_id => p_appraisal_period_id
815 ,p_object_version_number => p_object_version_number
816 );
817 exception
818 when hr_api.cannot_find_prog_unit then
819 hr_api.cannot_find_prog_unit_error
820 (p_module_name => 'DELETE_APPRAISAL_PERIOD'
821 ,p_hook_type => 'BP'
822 );
823 end;
824
825 --
826 -- Process Logic
827 --
828 IF g_debug THEN hr_utility.set_location(l_proc, 30); END IF;
829
830 per_pma_del.del
831 (p_appraisal_period_id => p_appraisal_period_id
832 ,p_object_version_number => p_object_version_number
833 );
834
835 --
836 -- Call After Process User Hook
837 --
838 begin
839 hr_appraisal_period_bk3.delete_appraisal_period_a
840 (p_appraisal_period_id => p_appraisal_period_id
841 ,p_object_version_number => p_object_version_number
842 );
843 exception
844 when hr_api.cannot_find_prog_unit then
845 hr_api.cannot_find_prog_unit_error
846 (p_module_name => 'DELETE_APPRAISAL_PERIOD'
847 ,p_hook_type => 'AP'
848 );
849 end;
850
851 IF g_debug THEN hr_utility.set_location(l_proc, 40); END IF;
852 --
853 -- When in validation only mode raise the Validate_Enabled exception
854 --
855 if p_validate then
856 raise hr_api.validate_enabled;
857 end if;
858
859 --
860 -- Pipe the main IN OUT / OUT parameters for ease of debugging.
861 --
862 IF g_debug THEN
863
864 hr_utility.trace(' ');
865 hr_utility.trace(' --------------------------------'||
866 '---------------------------------');
867 hr_utility.trace(' IN OUT / OUT PARAMETER '||
868 ' VALUE');
869 hr_utility.trace(' --------------------------------'||
870 '+--------------------------------');
871 hr_utility.trace(' ');
872 hr_utility.set_location(' Leaving:'||l_proc, 970);
873
874 END IF;
875
876 exception
877 when hr_api.validate_enabled then
878 --
879 -- As the Validate_Enabled exception has been raised
880 -- we must rollback to the savepoint
881 --
882 rollback to delete_appraisal_period;
883 hr_utility.set_location(' Leaving:'||l_proc, 980);
884 when others then
885 --
886 -- A validation or unexpected error has occured
887 --
888 rollback to delete_appraisal_period;
889 hr_utility.set_location(' Leaving:'||l_proc, 990);
890 raise;
891 end delete_appraisal_period;
892 --
893 end hr_appraisal_period_api;