[Home] [Help]
PACKAGE BODY: APPS.PAY_MISC_DYT_INCIDENT_PKG
Source
1 PACKAGE BODY PAY_MISC_DYT_INCIDENT_PKG AS
2 /* $Header: paymiscdytincpkg.pkb 120.8 2006/12/08 14:54:12 susivasu noship $ */
3
4 /* Global definitions */
5 g_package varchar2(80) := 'PAY_MISC_DYT_INCIDENT_PKG';
6 --
7 ---------------------------------------------------------------------------------------
8 -- Here are the procedures that have been built for the core triggers
9 ---------------------------------------------------------------------------------------
10 --
11 --------------------------------------------
12 -- PER_PERFORMANCE_REVIEWS
13 --------------------------------------------
14 --
15
16 /* PER_PERFORMANCE_REVIEWS_ari */
17 /* name : PER_PERFORMANCE_REVIEWS_ari
18 purpose : This is procedure that records any insert
19 on performance review.
20 */
21 PROCEDURE per_performance_reviews_ari(
22 p_business_group_id in number,
23 p_legislation_code in varchar2,
24 p_person_id in number,
25 p_performance_review_id in number,
26 p_effective_start_date in date
27 )
28 IS
29 --
30 cursor asgcur (p_person_id number) is
31 select distinct assignment_id
32 from per_all_assignments_f
33 where person_id = p_person_id;
34 --
35 l_process_event_id number;
36 l_object_version_number number;
37 l_proc varchar2(240) := g_package||'.per_performance_reviews_ari';
38 --
39 BEGIN
40 --
41 hr_utility.set_location(l_proc, 10);
42 /* If the continuous calc is overriden then do nothing */
43 if (pay_continuous_calc.g_override_cc = TRUE) then
44 return;
45 end if;
46 --
47 pay_continuous_calc.event_update(p_business_group_id,
48 p_legislation_code,
49 'PER_PERFORMANCE_REVIEWS',
50 NULL,
51 NULL,
52 NULL,
53 p_effective_start_date,
54 p_effective_start_date,
55 'I'
56 );
57 /* Now call the API for the affected assignments */
58 DECLARE
59 cnt number;
60 l_process_event_id number;
61 l_object_version_number number;
62 BEGIN
63 IF (pay_continuous_calc.g_event_list.sz <> 0) THEN
64 --
65 FOR asgrec in asgcur (p_person_id) LOOP
66 --
67 FOR cnt in 1..pay_continuous_calc.g_event_list.sz LOOP
68 --
69 pay_ppe_api.create_process_event(
70 p_assignment_id => asgrec.assignment_id,
71 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
72 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
73 p_status => 'U',
74 p_description => pay_continuous_calc.g_event_list.description(cnt),
75 p_process_event_id => l_process_event_id,
76 p_object_version_number => l_object_version_number,
77 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
78 p_business_group_id => p_business_group_id,
79 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
80 p_surrogate_key => p_performance_review_id);
81 --
82 END LOOP;
83 --
84 END LOOP;
85 --
86 END IF;
87 --
88 pay_continuous_calc.g_event_list.sz := 0;
89 --
90 END;
91 --
92 hr_utility.set_location(l_proc, 900);
93 --
94 END per_performance_reviews_ari;
95
96 /* Used generator to build this procedure, but removed the references to
97 date columns as this is a non-datetrack table
98 We are assuming always correction
99 */
100 /* PER_PERFORMANCE_REVIEWS */
101 /* name : PER_PERFORMANCE_REVIEWS
102 purpose : This is procedure that records any changes for updates
103 on per_performance_reviews CORRECTION only.
104 */
105 procedure PER_PERFORMANCE_REVIEWS_aru(
106 p_business_group_id in number,
107 p_legislation_code in varchar2,
108 p_effective_date in date ,
109 p_old_ATTRIBUTE1 in VARCHAR2,
110 p_new_ATTRIBUTE1 in VARCHAR2 ,
111 p_old_ATTRIBUTE10 in VARCHAR2,
112 p_new_ATTRIBUTE10 in VARCHAR2 ,
113 p_old_ATTRIBUTE11 in VARCHAR2,
114 p_new_ATTRIBUTE11 in VARCHAR2 ,
115 p_old_ATTRIBUTE12 in VARCHAR2,
116 p_new_ATTRIBUTE12 in VARCHAR2 ,
117 p_old_ATTRIBUTE13 in VARCHAR2,
118 p_new_ATTRIBUTE13 in VARCHAR2 ,
119 p_old_ATTRIBUTE14 in VARCHAR2,
120 p_new_ATTRIBUTE14 in VARCHAR2 ,
121 p_old_ATTRIBUTE15 in VARCHAR2,
122 p_new_ATTRIBUTE15 in VARCHAR2 ,
123 p_old_ATTRIBUTE16 in VARCHAR2,
124 p_new_ATTRIBUTE16 in VARCHAR2 ,
125 p_old_ATTRIBUTE17 in VARCHAR2,
126 p_new_ATTRIBUTE17 in VARCHAR2 ,
127 p_old_ATTRIBUTE18 in VARCHAR2,
128 p_new_ATTRIBUTE18 in VARCHAR2 ,
129 p_old_ATTRIBUTE19 in VARCHAR2,
130 p_new_ATTRIBUTE19 in VARCHAR2 ,
131 p_old_ATTRIBUTE2 in VARCHAR2,
132 p_new_ATTRIBUTE2 in VARCHAR2 ,
133 p_old_ATTRIBUTE20 in VARCHAR2,
134 p_new_ATTRIBUTE20 in VARCHAR2 ,
135 p_old_ATTRIBUTE21 in VARCHAR2,
136 p_new_ATTRIBUTE21 in VARCHAR2 ,
137 p_old_ATTRIBUTE22 in VARCHAR2,
138 p_new_ATTRIBUTE22 in VARCHAR2 ,
139 p_old_ATTRIBUTE23 in VARCHAR2,
140 p_new_ATTRIBUTE23 in VARCHAR2 ,
141 p_old_ATTRIBUTE24 in VARCHAR2,
142 p_new_ATTRIBUTE24 in VARCHAR2,
143 p_old_ATTRIBUTE25 in VARCHAR2,
144 p_new_ATTRIBUTE25 in VARCHAR2 ,
145 p_old_ATTRIBUTE26 in VARCHAR2,
146 p_new_ATTRIBUTE26 in VARCHAR2 ,
147 p_old_ATTRIBUTE27 in VARCHAR2,
148 p_new_ATTRIBUTE27 in VARCHAR2 ,
149 p_old_ATTRIBUTE28 in VARCHAR2,
150 p_new_ATTRIBUTE28 in VARCHAR2 ,
151 p_old_ATTRIBUTE29 in VARCHAR2,
152 p_new_ATTRIBUTE29 in VARCHAR2 ,
153 p_old_ATTRIBUTE3 in VARCHAR2,
154 p_new_ATTRIBUTE3 in VARCHAR2 ,
155 p_old_ATTRIBUTE30 in VARCHAR2,
156 p_new_ATTRIBUTE30 in VARCHAR2 ,
157 p_old_ATTRIBUTE4 in VARCHAR2,
158 p_new_ATTRIBUTE4 in VARCHAR2 ,
159 p_old_ATTRIBUTE5 in VARCHAR2,
160 p_new_ATTRIBUTE5 in VARCHAR2 ,
161 p_old_ATTRIBUTE6 in VARCHAR2,
162 p_new_ATTRIBUTE6 in VARCHAR2 ,
163 p_old_ATTRIBUTE7 in VARCHAR2,
164 p_new_ATTRIBUTE7 in VARCHAR2 ,
165 p_old_ATTRIBUTE8 in VARCHAR2,
166 p_new_ATTRIBUTE8 in VARCHAR2 ,
167 p_old_ATTRIBUTE9 in VARCHAR2,
168 p_new_ATTRIBUTE9 in VARCHAR2 ,
169 p_old_ATTRIBUTE_CATEGORY in VARCHAR2,
170 p_new_ATTRIBUTE_CATEGORY in VARCHAR2 ,
171 p_old_EVENT_ID in NUMBER,
172 p_new_EVENT_ID in NUMBER ,
173 p_old_NEXT_PERF_REVIEW_DATE in DATE,
174 p_new_NEXT_PERF_REVIEW_DATE in DATE ,
175 p_old_PERFORMANCE_RATING in VARCHAR2,
176 p_new_PERFORMANCE_RATING in VARCHAR2 ,
177 p_old_PERFORMANCE_REVIEW_ID in NUMBER,
178 p_new_PERFORMANCE_REVIEW_ID in NUMBER ,
179 p_old_PERSON_ID in NUMBER,
180 p_new_PERSON_ID in NUMBER ,
181 p_old_REVIEW_DATE in DATE,
182 p_new_REVIEW_DATE in DATE
183 )
184 is
185 --
186 cursor asgcur (p_person_id number) is
187 select distinct assignment_id
188 from per_all_assignments_f
189 where person_id = p_person_id;
190
191 l_proc varchar2(240) := g_package||'.per_performance_reviews_aru';
192 begin
193 hr_utility.set_location(l_proc,10);
194
195 /* If the continuous calc is overriden then do nothing */
196 if (pay_continuous_calc.g_override_cc = TRUE) then
197 return;
198 end if;
199 --
200 /* If the dates havent changed it must be a correction */
201 -- We are assuming always a CORRECTION as non-datetracked table!
202 --if (p_old_ = p_new_
203 --and p_old_ = p_new_) then
204 --
205 pay_continuous_calc.event_update(p_business_group_id,
206 p_legislation_code,
207 'PER_PERFORMANCE_REVIEWS',
208 'ATTRIBUTE1',
209 p_old_ATTRIBUTE1,
210 p_new_ATTRIBUTE1,
211 p_effective_date
212 );
213 --
214 pay_continuous_calc.event_update(p_business_group_id,
215 p_legislation_code,
216 'PER_PERFORMANCE_REVIEWS',
217 'ATTRIBUTE10',
218 p_old_ATTRIBUTE10,
219 p_new_ATTRIBUTE10,
220 p_effective_date
221 );
222 --
223 pay_continuous_calc.event_update(p_business_group_id,
224 p_legislation_code,
225 'PER_PERFORMANCE_REVIEWS',
226 'ATTRIBUTE11',
227 p_old_ATTRIBUTE11,
228 p_new_ATTRIBUTE11,
229 p_effective_date
230 );
231 --
232 pay_continuous_calc.event_update(p_business_group_id,
233 p_legislation_code,
234 'PER_PERFORMANCE_REVIEWS',
235 'ATTRIBUTE12',
236 p_old_ATTRIBUTE12,
237 p_new_ATTRIBUTE12,
238 p_effective_date
239 );
240 --
241 pay_continuous_calc.event_update(p_business_group_id,
242 p_legislation_code,
243 'PER_PERFORMANCE_REVIEWS',
244 'ATTRIBUTE13',
245 p_old_ATTRIBUTE13,
246 p_new_ATTRIBUTE13,
247 p_effective_date
248 );
249 --
250 pay_continuous_calc.event_update(p_business_group_id,
251 p_legislation_code,
252 'PER_PERFORMANCE_REVIEWS',
253 'ATTRIBUTE14',
254 p_old_ATTRIBUTE14,
255 p_new_ATTRIBUTE14,
256 p_effective_date
257 );
258 --
259 pay_continuous_calc.event_update(p_business_group_id,
260 p_legislation_code,
261 'PER_PERFORMANCE_REVIEWS',
262 'ATTRIBUTE15',
263 p_old_ATTRIBUTE15,
264 p_new_ATTRIBUTE15,
265 p_effective_date
266 );
267 --
268 pay_continuous_calc.event_update(p_business_group_id,
269 p_legislation_code,
270 'PER_PERFORMANCE_REVIEWS',
271 'ATTRIBUTE16',
272 p_old_ATTRIBUTE16,
273 p_new_ATTRIBUTE16,
274 p_effective_date
275 );
276 --
277 pay_continuous_calc.event_update(p_business_group_id,
278 p_legislation_code,
279 'PER_PERFORMANCE_REVIEWS',
280 'ATTRIBUTE17',
281 p_old_ATTRIBUTE17,
282 p_new_ATTRIBUTE17,
283 p_effective_date
284 );
285 --
286 pay_continuous_calc.event_update(p_business_group_id,
287 p_legislation_code,
288 'PER_PERFORMANCE_REVIEWS',
289 'ATTRIBUTE18',
290 p_old_ATTRIBUTE18,
291 p_new_ATTRIBUTE18,
292 p_effective_date
293 );
294 --
295 pay_continuous_calc.event_update(p_business_group_id,
296 p_legislation_code,
297 'PER_PERFORMANCE_REVIEWS',
298 'ATTRIBUTE19',
299 p_old_ATTRIBUTE19,
300 p_new_ATTRIBUTE19,
301 p_effective_date
302 );
303 --
304 pay_continuous_calc.event_update(p_business_group_id,
305 p_legislation_code,
306 'PER_PERFORMANCE_REVIEWS',
307 'ATTRIBUTE2',
308 p_old_ATTRIBUTE2,
309 p_new_ATTRIBUTE2,
310 p_effective_date
311 );
312 --
313 pay_continuous_calc.event_update(p_business_group_id,
314 p_legislation_code,
315 'PER_PERFORMANCE_REVIEWS',
316 'ATTRIBUTE20',
317 p_old_ATTRIBUTE20,
318 p_new_ATTRIBUTE20,
319 p_effective_date
320 );
321 --
322 pay_continuous_calc.event_update(p_business_group_id,
323 p_legislation_code,
324 'PER_PERFORMANCE_REVIEWS',
325 'ATTRIBUTE21',
326 p_old_ATTRIBUTE21,
327 p_new_ATTRIBUTE21,
328 p_effective_date
329 );
330 --
331 pay_continuous_calc.event_update(p_business_group_id,
332 p_legislation_code,
333 'PER_PERFORMANCE_REVIEWS',
334 'ATTRIBUTE22',
335 p_old_ATTRIBUTE22,
336 p_new_ATTRIBUTE22,
337 p_effective_date
338 );
339 --
340 pay_continuous_calc.event_update(p_business_group_id,
341 p_legislation_code,
342 'PER_PERFORMANCE_REVIEWS',
343 'ATTRIBUTE23',
344 p_old_ATTRIBUTE23,
345 p_new_ATTRIBUTE23,
346 p_effective_date
347 );
348 --
349 pay_continuous_calc.event_update(p_business_group_id,
350 p_legislation_code,
351 'PER_PERFORMANCE_REVIEWS',
352 'ATTRIBUTE24',
353 p_old_ATTRIBUTE24,
354 p_new_ATTRIBUTE24,
355 p_effective_date
356 );
360 'PER_PERFORMANCE_REVIEWS',
357 --
358 pay_continuous_calc.event_update(p_business_group_id,
359 p_legislation_code,
361 'ATTRIBUTE25',
362 p_old_ATTRIBUTE25,
363 p_new_ATTRIBUTE25,
364 p_effective_date
365 );
366 --
367 pay_continuous_calc.event_update(p_business_group_id,
368 p_legislation_code,
369 'PER_PERFORMANCE_REVIEWS',
370 'ATTRIBUTE26',
371 p_old_ATTRIBUTE26,
372 p_new_ATTRIBUTE26,
373 p_effective_date
374 );
375 --
376 pay_continuous_calc.event_update(p_business_group_id,
377 p_legislation_code,
378 'PER_PERFORMANCE_REVIEWS',
379 'ATTRIBUTE27',
380 p_old_ATTRIBUTE27,
381 p_new_ATTRIBUTE27,
382 p_effective_date
383 );
384 --
385 pay_continuous_calc.event_update(p_business_group_id,
386 p_legislation_code,
387 'PER_PERFORMANCE_REVIEWS',
388 'ATTRIBUTE28',
389 p_old_ATTRIBUTE28,
390 p_new_ATTRIBUTE28,
391 p_effective_date
392 );
393
394 --
395 pay_continuous_calc.event_update(p_business_group_id,
396 p_legislation_code,
397 'PER_PERFORMANCE_REVIEWS',
398 'ATTRIBUTE29',
399 p_old_ATTRIBUTE29,
400 p_new_ATTRIBUTE29,
401 p_effective_date
402 );
403 --
404 pay_continuous_calc.event_update(p_business_group_id,
405 p_legislation_code,
406 'PER_PERFORMANCE_REVIEWS',
407 'ATTRIBUTE3',
408 p_old_ATTRIBUTE3,
409 p_new_ATTRIBUTE3,
410 p_effective_date
411 );
412 --
413 pay_continuous_calc.event_update(p_business_group_id,
414 p_legislation_code,
415 'PER_PERFORMANCE_REVIEWS',
416 'ATTRIBUTE30',
417 p_old_ATTRIBUTE30,
418 p_new_ATTRIBUTE30,
419 p_effective_date
420 );
421 --
422 pay_continuous_calc.event_update(p_business_group_id,
423 p_legislation_code,
424 'PER_PERFORMANCE_REVIEWS',
425 'ATTRIBUTE4',
426 p_old_ATTRIBUTE4,
427 p_new_ATTRIBUTE4,
428 p_effective_date
429 );
430 --
431 pay_continuous_calc.event_update(p_business_group_id,
432 p_legislation_code,
433 'PER_PERFORMANCE_REVIEWS',
434 'ATTRIBUTE5',
435 p_old_ATTRIBUTE5,
436 p_new_ATTRIBUTE5,
437 p_effective_date
438 );
439 --
440 pay_continuous_calc.event_update(p_business_group_id,
441 p_legislation_code,
442 'PER_PERFORMANCE_REVIEWS',
443 'ATTRIBUTE6',
444 p_old_ATTRIBUTE6,
445 p_new_ATTRIBUTE6,
446 p_effective_date
447 );
448 --
449 pay_continuous_calc.event_update(p_business_group_id,
450 p_legislation_code,
451 'PER_PERFORMANCE_REVIEWS',
452 'ATTRIBUTE7',
453 p_old_ATTRIBUTE7,
454 p_new_ATTRIBUTE7,
455 p_effective_date
456 );
457 --
458 pay_continuous_calc.event_update(p_business_group_id,
459 p_legislation_code,
460 'PER_PERFORMANCE_REVIEWS',
464 p_effective_date
461 'ATTRIBUTE8',
462 p_old_ATTRIBUTE8,
463 p_new_ATTRIBUTE8,
465 );
466 --
467 pay_continuous_calc.event_update(p_business_group_id,
468 p_legislation_code,
469 'PER_PERFORMANCE_REVIEWS',
470 'ATTRIBUTE9',
471 p_old_ATTRIBUTE9,
472 p_new_ATTRIBUTE9,
473 p_effective_date
474 );
475 --
476 pay_continuous_calc.event_update(p_business_group_id,
477 p_legislation_code,
478 'PER_PERFORMANCE_REVIEWS',
479 'ATTRIBUTE_CATEGORY',
480 p_old_ATTRIBUTE_CATEGORY,
481 p_new_ATTRIBUTE_CATEGORY,
482 p_effective_date
483 );
484 --
485 pay_continuous_calc.event_update(p_business_group_id,
486 p_legislation_code,
487 'PER_PERFORMANCE_REVIEWS',
488 'EVENT_ID',
489 p_old_EVENT_ID,
490 p_new_EVENT_ID,
491 p_effective_date
492 );
493 --
494 pay_continuous_calc.event_update(p_business_group_id,
495 p_legislation_code,
496 'PER_PERFORMANCE_REVIEWS',
497 'NEXT_PERF_REVIEW_DATE',
498 p_old_NEXT_PERF_REVIEW_DATE,
499 p_new_NEXT_PERF_REVIEW_DATE,
500 p_effective_date
501 );
502 --
503 pay_continuous_calc.event_update(p_business_group_id,
504 p_legislation_code,
505 'PER_PERFORMANCE_REVIEWS',
506 'PERFORMANCE_RATING',
507 p_old_PERFORMANCE_RATING,
508 p_new_PERFORMANCE_RATING,
509 p_effective_date
510 );
511 --
512 pay_continuous_calc.event_update(p_business_group_id,
513 p_legislation_code,
514 'PER_PERFORMANCE_REVIEWS',
515 'PERFORMANCE_REVIEW_ID',
516 p_old_PERFORMANCE_REVIEW_ID,
517 p_new_PERFORMANCE_REVIEW_ID,
518 p_effective_date
519 );
520 --
521 pay_continuous_calc.event_update(p_business_group_id,
522 p_legislation_code,
523 'PER_PERFORMANCE_REVIEWS',
524 'PERSON_ID',
525 p_old_PERSON_ID,
526 p_new_PERSON_ID,
527 p_effective_date
528 );
529 --
530 pay_continuous_calc.event_update(p_business_group_id,
531 p_legislation_code,
532 'PER_PERFORMANCE_REVIEWS',
533 'REVIEW_DATE',
534 p_old_REVIEW_DATE,
535 p_new_REVIEW_DATE,
536 p_effective_date
537 );
538
539 --end if;
540 --
541 /* Now call the API for the affected assignments */
542 declare
543 l_process_event_id number;
544 l_object_version_number number;
545 cnt number;
546 begin
547 if (pay_continuous_calc.g_event_list.sz <> 0) then
548 for asgrec in asgcur (p_old_person_id) loop
549 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
550 pay_ppe_api.create_process_event(
551 p_assignment_id => asgrec.assignment_id,
552 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
553 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
554 p_status => 'U',
555 p_description => pay_continuous_calc.g_event_list.description(cnt),
556 p_process_event_id => l_process_event_id,
557 p_object_version_number => l_object_version_number,
558 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
559 p_business_group_id => p_business_group_id,
560 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
561 p_surrogate_key => p_new_performance_review_id
562 );
563 --
564 END LOOP;
565 --
566 END LOOP;
567 --
568 END IF;
572 END;
569 --
570 pay_continuous_calc.g_event_list.sz := 0;
571 --
573 --
574 hr_utility.set_location(l_proc, 900);
575 --
576 end PER_PERFORMANCE_REVIEWS_aru;
577
578
579
580 /* name : per_performance_reviews_ard
581 purpose : This is procedure that records any deletes
582 on per_performance_reviews.
583 */
584 procedure per_performance_reviews_ard(
585 p_business_group_id in number,
586 p_legislation_code in varchar2,
587 p_person_id in number,
588 p_effective_start_date in date,
589 p_performance_review_id in number
590 )
591 is
592 --
593 cursor asgcur (p_person_id number) is
594 select distinct assignment_id
595 from per_all_assignments_f
596 where person_id = p_person_id;
597 --
598 l_process_event_id number;
599 l_object_version_number number;
600 l_proc varchar2(240) := g_package||'.per_performance_reviews_ard';
601 begin
602 hr_utility.set_location(l_proc, 10);
603 /* If the continuous calc is overriden then do nothing */
604 if (pay_continuous_calc.g_override_cc = TRUE) then
605 return;
606 end if;
607 --
608 -- Date column notional as this is a non-datetrack table
609 -- See pycodtrg.ldt to see which value is used as 'effective_start_date'
610 pay_continuous_calc.event_update(p_business_group_id,
611 p_legislation_code,
612 'PER_PERFORMANCE_REVIEWS',
613 NULL,
614 NULL,
615 NULL,
616 p_effective_start_date,
617 p_effective_start_date,
618 'D'
619 );
620 /* Now call the API for the affected assignments */
621 declare
622 cnt number;
623 l_process_event_id number;
624 l_object_version_number number;
625 begin
626 if (pay_continuous_calc.g_event_list.sz <> 0) then
627 for asgrec in asgcur (p_person_id) loop
628 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
629 pay_ppe_api.create_process_event(
630 p_assignment_id => asgrec.assignment_id,
631 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
632 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
633 p_status => 'U',
634 p_description => pay_continuous_calc.g_event_list.description(cnt),
635 p_process_event_id => l_process_event_id,
636 p_object_version_number => l_object_version_number,
637 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
638 p_surrogate_key => p_performance_review_id,
639 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
640 p_business_group_id => p_business_group_id
641 );
642 --
643 END LOOP;
644 --
645 END LOOP;
646 --
647 END IF;
648 --
649 pay_continuous_calc.g_event_list.sz := 0;
650 --
651 END;
652 --
653 hr_utility.set_location(l_proc, 900);
654 --
655 END per_performance_reviews_ard;
656 --
657 --------------------------------------------
658 -- PER_PERFORMANCE_REVIEWS
659 --------------------------------------------
660 --
661 /* per_appraisals_ari */
662 /* name : per_appraisals_ari
663 purpose : This is procedure that records any insert
664 on performance review.
665 */
666 procedure per_appraisals_ari(
667 p_business_group_id in number,
668 p_legislation_code in varchar2,
669 p_appraisee_person_id in number,
670 p_appraisal_id in number,
671 p_effective_start_date in date
672 )
673 is
674 --
675 cursor asgcur (p_person_id number) is
676 select distinct assignment_id
677 from per_all_assignments_f
678 where person_id = p_person_id;
679 --
680 l_process_event_id number;
681 l_object_version_number number;
682 l_proc varchar2(240) := g_package||'.per_appraisals_ari';
683
684 begin
685 hr_utility.set_location(l_proc, 10);
686 /* If the continuous calc is overriden then do nothing */
687 if (pay_continuous_calc.g_override_cc = TRUE) then
688 return;
689 end if;
690 --
691 pay_continuous_calc.event_update(p_business_group_id,
692 p_legislation_code,
693 'PER_APPRAISALS',
694 NULL,
695 NULL,
696 NULL,
697 p_effective_start_date,
701 /* Now call the API for the affected assignments */
698 p_effective_start_date,
699 'I'
700 );
702 declare
703 cnt number;
704 l_process_event_id number;
705 l_object_version_number number;
706 begin
707 if (pay_continuous_calc.g_event_list.sz <> 0) then
708 for asgrec in asgcur (p_appraisee_person_id) loop
709 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
710 pay_ppe_api.create_process_event(
711 p_assignment_id => asgrec.assignment_id,
712 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
713 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
714 p_status => 'U',
715 p_description => pay_continuous_calc.g_event_list.description(cnt),
716 p_process_event_id => l_process_event_id,
717 p_object_version_number => l_object_version_number,
718 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
719 p_business_group_id => p_business_group_id,
720 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
721 p_surrogate_key => p_appraisal_id);
722 --
723 END LOOP;
724 --
725 END LOOP;
726 --
727 END IF;
728 --
729 pay_continuous_calc.g_event_list.sz := 0;
730 --
731 END;
732 --
733 hr_utility.set_location(l_proc, 900);
734 --
735 END per_appraisals_ari;
736 --
737 procedure PER_APPRAISALS_aru(
738 p_business_group_id in number,
739 p_legislation_code in varchar2,
740 p_effective_date in date,
741 p_old_APPRAISAL_ID in NUMBER,
742 p_new_APPRAISAL_ID in NUMBER,
743 p_old_APPRAISAL_PERIOD_END_DAT in DATE,
744 p_new_APPRAISAL_PERIOD_END_DAT in DATE,
745 p_old_APPRAISAL_PERIOD_START_D in DATE,
746 p_new_APPRAISAL_PERIOD_START_D in DATE,
747 p_old_APPRAISAL_TEMPLATE_ID in NUMBER,
748 p_new_APPRAISAL_TEMPLATE_ID in NUMBER,
749 p_old_APPRAISEE_PERSON_ID in NUMBER,
750 p_new_APPRAISEE_PERSON_ID in NUMBER,
751 p_old_APPRAISER_PERSON_ID in NUMBER,
752 p_new_APPRAISER_PERSON_ID in NUMBER,
753 p_old_ATTRIBUTE1 in VARCHAR2,
754 p_new_ATTRIBUTE1 in VARCHAR2,
755 p_old_ATTRIBUTE2 in VARCHAR2,
756 p_new_ATTRIBUTE2 in VARCHAR2,
757 p_old_ATTRIBUTE3 in VARCHAR2,
758 p_new_ATTRIBUTE3 in VARCHAR2,
759 p_old_ATTRIBUTE4 in VARCHAR2,
760 p_new_ATTRIBUTE4 in VARCHAR2,
761 p_old_ATTRIBUTE5 in VARCHAR2,
762 p_new_ATTRIBUTE5 in VARCHAR2,
763 p_old_ATTRIBUTE6 in VARCHAR2,
764 p_new_ATTRIBUTE6 in VARCHAR2,
765 p_old_ATTRIBUTE7 in VARCHAR2,
766 p_new_ATTRIBUTE7 in VARCHAR2,
767 p_old_ATTRIBUTE8 in VARCHAR2,
768 p_new_ATTRIBUTE8 in VARCHAR2,
769 p_old_ATTRIBUTE9 in VARCHAR2,
770 p_new_ATTRIBUTE9 in VARCHAR2,
771 p_old_ATTRIBUTE10 in VARCHAR2,
772 p_new_ATTRIBUTE10 in VARCHAR2,
773 p_old_ATTRIBUTE11 in VARCHAR2,
774 p_new_ATTRIBUTE11 in VARCHAR2,
775 p_old_ATTRIBUTE12 in VARCHAR2,
776 p_new_ATTRIBUTE12 in VARCHAR2,
777 p_old_ATTRIBUTE13 in VARCHAR2,
778 p_new_ATTRIBUTE13 in VARCHAR2,
779 p_old_ATTRIBUTE14 in VARCHAR2,
780 p_new_ATTRIBUTE14 in VARCHAR2,
781 p_old_ATTRIBUTE15 in VARCHAR2,
782 p_new_ATTRIBUTE15 in VARCHAR2,
783 p_old_ATTRIBUTE16 in VARCHAR2,
784 p_new_ATTRIBUTE16 in VARCHAR2,
785 p_old_ATTRIBUTE17 in VARCHAR2,
786 p_new_ATTRIBUTE17 in VARCHAR2,
787 p_old_ATTRIBUTE18 in VARCHAR2,
788 p_new_ATTRIBUTE18 in VARCHAR2,
789 p_old_ATTRIBUTE19 in VARCHAR2,
790 p_new_ATTRIBUTE19 in VARCHAR2,
791 p_old_ATTRIBUTE20 in VARCHAR2,
792 p_new_ATTRIBUTE20 in VARCHAR2,
793 p_old_ATTRIBUTE_CATEGORY in VARCHAR2,
794 p_new_ATTRIBUTE_CATEGORY in VARCHAR2,
795 p_old_BUSINESS_GROUP_ID in NUMBER,
796 p_new_BUSINESS_GROUP_ID in NUMBER,
797 p_old_COMMENTS in VARCHAR2,
798 p_new_COMMENTS in VARCHAR2,
799 p_old_GROUP_DATE in DATE,
800 p_new_GROUP_DATE in DATE,
801 p_old_GROUP_INITIATOR_ID in NUMBER,
802 p_new_GROUP_INITIATOR_ID in NUMBER,
803 p_old_NEXT_APPRAISAL_DATE in DATE,
804 p_new_NEXT_APPRAISAL_DATE in DATE,
805 p_old_OPEN in VARCHAR2,
806 p_new_OPEN in VARCHAR2,
807 p_old_OVERALL_PERFORMANCE_LEVE in NUMBER,
808 p_new_OVERALL_PERFORMANCE_LEVE in NUMBER,
809 p_old_STATUS in VARCHAR2,
810 p_new_STATUS in VARCHAR2,
811 p_old_TYPE in VARCHAR2,
812 p_new_TYPE in VARCHAR2,
813 p_old_APPRAISAL_DATE in DATE,
814 p_new_APPRAISAL_DATE in DATE,
815 p_new_SYSTEM_TYPE in VARCHAR2,
816 p_old_SYSTEM_TYPE in VARCHAR2,
817 p_new_APPRAISAL_SYSTEM_STATUS in VARCHAR2,
818 p_old_APPRAISAL_SYSTEM_STATUS in VARCHAR2,
819 p_new_SYSTEM_PARAMS in VARCHAR2,
820 p_old_SYSTEM_PARAMS in VARCHAR2,
821 p_new_APPRAISEE_ACCESS in VARCHAR2,
822 p_old_APPRAISEE_ACCESS in VARCHAR2,
823 p_new_MAIN_APPRAISER_ID in NUMBER,
824 p_old_MAIN_APPRAISER_ID in NUMBER,
825 p_new_ASSIGNMENT_ID in NUMBER,
826 p_old_ASSIGNMENT_ID in NUMBER,
827 p_new_ASSIGNMENT_START_DATE in DATE,
831 p_new_ASG_ORGANIZATION_ID in NUMBER,
828 p_old_ASSIGNMENT_START_DATE in DATE,
829 p_new_ASG_BUSINESS_GROUP_ID in NUMBER,
830 p_old_ASG_BUSINESS_GROUP_ID in NUMBER,
832 p_old_ASG_ORGANIZATION_ID in NUMBER,
833 p_new_ASSIGNMENT_JOB_ID in NUMBER,
834 p_old_ASSIGNMENT_JOB_ID in NUMBER,
835 p_new_ASSIGNMENT_POSITION_ID in NUMBER,
836 p_old_ASSIGNMENT_POSITION_ID in NUMBER,
837 p_new_ASSIGNMENT_GRADE_ID in NUMBER,
838 p_old_ASSIGNMENT_GRADE_ID in NUMBER,
839 p_new_PTNTL_READINESS_LEVEL in VARCHAR2,
840 p_old_PTNTL_READINESS_LEVEL in VARCHAR2,
841 p_new_PTNTL_SHORT_TERM_WORKOPP in VARCHAR2,
842 p_old_PTNTL_SHORT_TERM_WORKOPP in VARCHAR2,
843 p_new_PTNTL_LONG_TERM_WORKOPP in VARCHAR2,
844 p_old_PTNTL_LONG_TERM_WORKOPP in VARCHAR2,
845 p_new_POTENTIAL_DETAILS in VARCHAR2,
846 p_old_POTENTIAL_DETAILS in VARCHAR2,
847 p_new_EVENT_ID in NUMBER,
848 p_old_EVENT_ID in NUMBER
849 )
850 is
851 --
852 cursor asgcur (p_person_id number) is
853 select distinct assignment_id
854 from per_all_assignments_f
855 where person_id = p_person_id;
856 --
857 l_proc varchar2(240) := g_package||'.per_appraisals_aru';
858 begin
859 /* If the continuous calc is overriden then do nothing */
860 if (pay_continuous_calc.g_override_cc = TRUE) then
861 return;
862 end if;
863 --
864 /* If the dates havent changed it must be a correction */
865 if (p_old_APPRAISAL_DATE = p_new_APPRAISAL_DATE
866 and p_old_APPRAISAL_DATE = p_new_APPRAISAL_DATE) then
867 --
868 pay_continuous_calc.event_update(p_business_group_id,
869 p_legislation_code,
870 'PER_APPRAISALS',
871 'APPRAISAL_ID',
872 p_old_APPRAISAL_ID,
873 p_new_APPRAISAL_ID,
874 p_effective_date
875 );
876 --
877 pay_continuous_calc.event_update(p_business_group_id,
878 p_legislation_code,
879 'PER_APPRAISALS',
880 'APPRAISAL_PERIOD_END_DATE',
881 p_old_APPRAISAL_PERIOD_END_DAT,
882 p_new_APPRAISAL_PERIOD_END_DAT,
883 p_effective_date
884 );
885 --
886 pay_continuous_calc.event_update(p_business_group_id,
887 p_legislation_code,
888 'PER_APPRAISALS',
889 'APPRAISAL_PERIOD_START_DATE',
890 p_old_APPRAISAL_PERIOD_START_D,
891 p_new_APPRAISAL_PERIOD_START_D,
892 p_effective_date
893 );
894 --
895 pay_continuous_calc.event_update(p_business_group_id,
896 p_legislation_code,
897 'PER_APPRAISALS',
898 'APPRAISAL_TEMPLATE_ID',
899 p_old_APPRAISAL_TEMPLATE_ID,
900 p_new_APPRAISAL_TEMPLATE_ID,
901 p_effective_date
902 );
903 --
904 pay_continuous_calc.event_update(p_business_group_id,
905 p_legislation_code,
906 'PER_APPRAISALS',
907 'APPRAISEE_PERSON_ID',
908 p_old_APPRAISEE_PERSON_ID,
909 p_new_APPRAISEE_PERSON_ID,
910 p_effective_date
911 );
912 --
913 pay_continuous_calc.event_update(p_business_group_id,
914 p_legislation_code,
915 'PER_APPRAISALS',
916 'APPRAISER_PERSON_ID',
917 p_old_APPRAISER_PERSON_ID,
918 p_new_APPRAISER_PERSON_ID,
919 p_effective_date
920 );
921 --
922 pay_continuous_calc.event_update(p_business_group_id,
923 p_legislation_code,
924 'PER_APPRAISALS',
925 'ATTRIBUTE1',
926 p_old_ATTRIBUTE1,
927 p_new_ATTRIBUTE1,
928 p_effective_date
929 );
930 --
931 pay_continuous_calc.event_update(p_business_group_id,
932 p_legislation_code,
933 'PER_APPRAISALS',
934 'ATTRIBUTE10',
935 p_old_ATTRIBUTE10,
936 p_new_ATTRIBUTE10,
937 p_effective_date
938 );
939 --
940 pay_continuous_calc.event_update(p_business_group_id,
941 p_legislation_code,
945 p_new_ATTRIBUTE11,
942 'PER_APPRAISALS',
943 'ATTRIBUTE11',
944 p_old_ATTRIBUTE11,
946 p_effective_date
947 );
948 --
949 pay_continuous_calc.event_update(p_business_group_id,
950 p_legislation_code,
951 'PER_APPRAISALS',
952 'ATTRIBUTE12',
953 p_old_ATTRIBUTE12,
954 p_new_ATTRIBUTE12,
955 p_effective_date
956 );
957 --
958 pay_continuous_calc.event_update(p_business_group_id,
959 p_legislation_code,
960 'PER_APPRAISALS',
961 'ATTRIBUTE13',
962 p_old_ATTRIBUTE13,
963 p_new_ATTRIBUTE13,
964 p_effective_date
965 );
966 --
967 pay_continuous_calc.event_update(p_business_group_id,
968 p_legislation_code,
969 'PER_APPRAISALS',
970 'ATTRIBUTE14',
971 p_old_ATTRIBUTE14,
972 p_new_ATTRIBUTE14,
973 p_effective_date
974 );
975 --
976 pay_continuous_calc.event_update(p_business_group_id,
977 p_legislation_code,
978 'PER_APPRAISALS',
979 'ATTRIBUTE15',
980 p_old_ATTRIBUTE15,
981 p_new_ATTRIBUTE15,
982 p_effective_date
983 );
984 --
985 pay_continuous_calc.event_update(p_business_group_id,
986 p_legislation_code,
987 'PER_APPRAISALS',
988 'ATTRIBUTE16',
989 p_old_ATTRIBUTE16,
990 p_new_ATTRIBUTE16,
991 p_effective_date
992 );
993 --
994 pay_continuous_calc.event_update(p_business_group_id,
995 p_legislation_code,
996 'PER_APPRAISALS',
997 'ATTRIBUTE17',
998 p_old_ATTRIBUTE17,
999 p_new_ATTRIBUTE17,
1000 p_effective_date
1001 );
1002 --
1003 pay_continuous_calc.event_update(p_business_group_id,
1004 p_legislation_code,
1005 'PER_APPRAISALS',
1006 'ATTRIBUTE18',
1007 p_old_ATTRIBUTE18,
1008 p_new_ATTRIBUTE18,
1009 p_effective_date
1010 );
1011 --
1012 pay_continuous_calc.event_update(p_business_group_id,
1013 p_legislation_code,
1014 'PER_APPRAISALS',
1015 'ATTRIBUTE19',
1016 p_old_ATTRIBUTE19,
1017 p_new_ATTRIBUTE19,
1018 p_effective_date
1019 );
1020 --
1021 pay_continuous_calc.event_update(p_business_group_id,
1022 p_legislation_code,
1023 'PER_APPRAISALS',
1024 'ATTRIBUTE2',
1025 p_old_ATTRIBUTE2,
1026 p_new_ATTRIBUTE2,
1027 p_effective_date
1028 );
1029 --
1030 pay_continuous_calc.event_update(p_business_group_id,
1031 p_legislation_code,
1032 'PER_APPRAISALS',
1033 'ATTRIBUTE20',
1034 p_old_ATTRIBUTE20,
1035 p_new_ATTRIBUTE20,
1036 p_effective_date
1037 );
1038 --
1039 pay_continuous_calc.event_update(p_business_group_id,
1040 p_legislation_code,
1041 'PER_APPRAISALS',
1042 'ATTRIBUTE3',
1043 p_old_ATTRIBUTE3,
1044 p_new_ATTRIBUTE3,
1045 p_effective_date
1046 );
1047 --
1048 pay_continuous_calc.event_update(p_business_group_id,
1049 p_legislation_code,
1050 'PER_APPRAISALS',
1054 p_effective_date
1051 'ATTRIBUTE4',
1052 p_old_ATTRIBUTE4,
1053 p_new_ATTRIBUTE4,
1055 );
1056 --
1057 pay_continuous_calc.event_update(p_business_group_id,
1058 p_legislation_code,
1059 'PER_APPRAISALS',
1060 'ATTRIBUTE5',
1061 p_old_ATTRIBUTE5,
1062 p_new_ATTRIBUTE5,
1063 p_effective_date
1064 );
1065 --
1066 pay_continuous_calc.event_update(p_business_group_id,
1067 p_legislation_code,
1068 'PER_APPRAISALS',
1069 'ATTRIBUTE6',
1070 p_old_ATTRIBUTE6,
1071 p_new_ATTRIBUTE6,
1072 p_effective_date
1073 );
1074 --
1075 pay_continuous_calc.event_update(p_business_group_id,
1076 p_legislation_code,
1077 'PER_APPRAISALS',
1078 'ATTRIBUTE7',
1079 p_old_ATTRIBUTE7,
1080 p_new_ATTRIBUTE7,
1081 p_effective_date
1082 );
1083 --
1084 pay_continuous_calc.event_update(p_business_group_id,
1085 p_legislation_code,
1086 'PER_APPRAISALS',
1087 'ATTRIBUTE8',
1088 p_old_ATTRIBUTE8,
1089 p_new_ATTRIBUTE8,
1090 p_effective_date
1091 );
1092 --
1093 pay_continuous_calc.event_update(p_business_group_id,
1094 p_legislation_code,
1095 'PER_APPRAISALS',
1096 'ATTRIBUTE9',
1097 p_old_ATTRIBUTE9,
1098 p_new_ATTRIBUTE9,
1099 p_effective_date
1100 );
1101 --
1102 pay_continuous_calc.event_update(p_business_group_id,
1103 p_legislation_code,
1104 'PER_APPRAISALS',
1105 'ATTRIBUTE_CATEGORY',
1106 p_old_ATTRIBUTE_CATEGORY,
1107 p_new_ATTRIBUTE_CATEGORY,
1108 p_effective_date
1109 );
1110 --
1111 pay_continuous_calc.event_update(p_business_group_id,
1112 p_legislation_code,
1113 'PER_APPRAISALS',
1114 'BUSINESS_GROUP_ID',
1115 p_old_BUSINESS_GROUP_ID,
1116 p_new_BUSINESS_GROUP_ID,
1117 p_effective_date
1118 );
1119 --
1120 pay_continuous_calc.event_update(p_business_group_id,
1121 p_legislation_code,
1122 'PER_APPRAISALS',
1123 'COMMENTS',
1124 p_old_COMMENTS,
1125 p_new_COMMENTS,
1126 p_effective_date
1127 );
1128 --
1129 pay_continuous_calc.event_update(p_business_group_id,
1130 p_legislation_code,
1131 'PER_APPRAISALS',
1132 'GROUP_DATE',
1133 p_old_GROUP_DATE,
1134 p_new_GROUP_DATE,
1135 p_effective_date
1136 );
1137 --
1138 pay_continuous_calc.event_update(p_business_group_id,
1139 p_legislation_code,
1140 'PER_APPRAISALS',
1141 'GROUP_INITIATOR_ID',
1142 p_old_GROUP_INITIATOR_ID,
1143 p_new_GROUP_INITIATOR_ID,
1144 p_effective_date
1145 );
1146 --
1147 pay_continuous_calc.event_update(p_business_group_id,
1148 p_legislation_code,
1149 'PER_APPRAISALS',
1150 'NEXT_APPRAISAL_DATE',
1151 p_old_NEXT_APPRAISAL_DATE,
1152 p_new_NEXT_APPRAISAL_DATE,
1153 p_effective_date
1154 );
1155 --
1156 pay_continuous_calc.event_update(p_business_group_id,
1157 p_legislation_code,
1158 'PER_APPRAISALS',
1162 p_effective_date
1159 'OPEN',
1160 p_old_OPEN,
1161 p_new_OPEN,
1163 );
1164 --
1165 pay_continuous_calc.event_update(p_business_group_id,
1166 p_legislation_code,
1167 'PER_APPRAISALS',
1168 'OVERALL_PERFORMANCE_LEVEL_ID',
1169 p_old_OVERALL_PERFORMANCE_LEVE,
1170 p_new_OVERALL_PERFORMANCE_LEVE,
1171 p_effective_date
1172 );
1173 --
1174 pay_continuous_calc.event_update(p_business_group_id,
1175 p_legislation_code,
1176 'PER_APPRAISALS',
1177 'STATUS',
1178 p_old_STATUS,
1179 p_new_STATUS,
1180 p_effective_date
1181 );
1182 --
1183 pay_continuous_calc.event_update(p_business_group_id,
1184 p_legislation_code,
1185 'PER_APPRAISALS',
1186 'TYPE',
1187 p_old_TYPE,
1188 p_new_TYPE,
1189 p_effective_date
1190 );
1191 --
1192 -- 4054711 Added support for additional columns
1193 --
1194 pay_continuous_calc.event_update(p_business_group_id,
1195 p_legislation_code,
1196 'PER_APPRAISALS',
1197 'SYSTEM_TYPE',
1198 p_new_system_type,
1199 p_old_system_type,
1200 p_effective_date
1201 );
1202 --
1203 pay_continuous_calc.event_update(p_business_group_id,
1204 p_legislation_code,
1205 'PER_APPRAISALS',
1206 'APPRAISAL_SYSTEM_STATUS',
1207 p_new_appraisal_system_status,
1208 p_old_appraisal_system_status,
1209 p_effective_date
1210 );
1211 --
1212 pay_continuous_calc.event_update(p_business_group_id,
1213 p_legislation_code,
1214 'PER_APPRAISALS',
1215 'SYSTEM_PARAMS',
1216 p_new_system_params,
1217 p_old_system_params,
1218 p_effective_date
1219 );
1220 --
1221 pay_continuous_calc.event_update(p_business_group_id,
1222 p_legislation_code,
1223 'PER_APPRAISALS',
1224 'APPRAISEE_ACCESS',
1225 p_new_appraisee_access,
1226 p_old_appraisee_access,
1227 p_effective_date
1228 );
1229 --
1230 pay_continuous_calc.event_update(p_business_group_id,
1231 p_legislation_code,
1232 'PER_APPRAISALS',
1233 'MAIN_APPRAISER_ID',
1234 p_new_main_appraiser_id,
1235 p_old_main_appraiser_id,
1236 p_effective_date
1237 );
1238 --
1239 pay_continuous_calc.event_update(p_business_group_id,
1240 p_legislation_code,
1241 'PER_APPRAISALS',
1242 'ASSIGNMENT_ID',
1243 p_new_assignment_id,
1244 p_old_assignment_id,
1245 p_effective_date
1246 );
1247 --
1248 pay_continuous_calc.event_update(p_business_group_id,
1249 p_legislation_code,
1250 'PER_APPRAISALS',
1251 'ASSIGNMENT_START_DATE',
1252 p_new_assignment_start_date,
1253 p_old_assignment_start_date,
1254 p_effective_date
1255 );
1256 --
1257 pay_continuous_calc.event_update(p_business_group_id,
1258 p_legislation_code,
1259 'PER_APPRAISALS',
1260 'ASSIGNMENT_BUSINESS_GROUP_ID',
1261 p_new_asg_business_group_id,
1262 p_old_asg_business_group_id,
1263 p_effective_date
1264 );
1268 'PER_APPRAISALS',
1265 --
1266 pay_continuous_calc.event_update(p_business_group_id,
1267 p_legislation_code,
1269 'ASSIGNMENT_ORGANIZATION_ID',
1270 p_new_asg_organization_id,
1271 p_old_asg_organization_id,
1272 p_effective_date
1273 );
1274 --
1275 pay_continuous_calc.event_update(p_business_group_id,
1276 p_legislation_code,
1277 'PER_APPRAISALS',
1278 'ASSIGNMENT_JOB_ID',
1279 p_new_assignment_job_id,
1280 p_old_assignment_job_id,
1281 p_effective_date
1282 );
1283 --
1284 pay_continuous_calc.event_update(p_business_group_id,
1285 p_legislation_code,
1286 'PER_APPRAISALS',
1287 'ASSIGNMENT_POSITION_ID',
1288 p_new_assignment_position_id,
1289 p_old_assignment_position_id,
1290 p_effective_date
1291 );
1292 --
1293 pay_continuous_calc.event_update(p_business_group_id,
1294 p_legislation_code,
1295 'PER_APPRAISALS',
1296 'ASSIGNMENT_GRADE_ID',
1297 p_new_assignment_grade_id,
1298 p_old_assignment_grade_id,
1299 p_effective_date
1300 );
1301 --
1302 pay_continuous_calc.event_update(p_business_group_id,
1303 p_legislation_code,
1304 'PER_APPRAISALS',
1305 'POTENTIAL_READINESS_LEVEL',
1306 p_new_ptntl_readiness_level,
1307 p_old_ptntl_readiness_level,
1308 p_effective_date
1309 );
1310 --
1311 pay_continuous_calc.event_update(p_business_group_id,
1312 p_legislation_code,
1313 'PER_APPRAISALS',
1314 'POTENTIAL_SHORT_TERM_WORKOPP',
1315 p_new_ptntl_short_term_workopp,
1316 p_old_ptntl_short_term_workopp,
1317 p_effective_date
1318 );
1319 --
1320 pay_continuous_calc.event_update(p_business_group_id,
1321 p_legislation_code,
1322 'PER_APPRAISALS',
1323 'POTENTIAL_LONG_TERM_WORKOPP',
1324 p_new_ptntl_long_term_workopp,
1325 p_old_ptntl_long_term_workopp,
1326 p_effective_date
1327 );
1328 --
1329 pay_continuous_calc.event_update(p_business_group_id,
1330 p_legislation_code,
1331 'PER_APPRAISALS',
1332 'POTENTIAL_DETAILS',
1333 p_new_potential_details,
1334 p_old_potential_details,
1335 p_effective_date
1336 );
1337 --
1338 pay_continuous_calc.event_update(p_business_group_id,
1339 p_legislation_code,
1340 'PER_APPRAISALS',
1341 'EVENT_ID',
1342 p_new_event_id,
1343 p_old_event_id,
1344 p_effective_date
1345 );
1346 -- 4054711
1347 else
1348 /* OK it must be a date track change */
1349 --
1350 pay_continuous_calc.event_update(p_business_group_id,
1351 p_legislation_code,
1352 'PER_APPRAISALS',
1353 'APPRAISAL_DATE',
1354 p_old_APPRAISAL_DATE,
1355 p_new_APPRAISAL_DATE,
1356 p_new_appraisal_date,
1357 least(p_old_appraisal_date,
1358 p_new_appraisal_date)
1359 );
1360
1361 end if;
1362 --
1363 /* Now call the API for the affected assignments */
1364 declare
1365 l_process_event_id number;
1366 l_object_version_number number;
1367 cnt number;
1368 begin
1369 if (pay_continuous_calc.g_event_list.sz <> 0) then
1370 for asgrec in asgcur (p_old_appraisee_person_id) loop
1371 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
1375 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
1372 pay_ppe_api.create_process_event(
1373 p_assignment_id => asgrec.assignment_id,
1374 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
1376 p_status => 'U',
1377 p_description => pay_continuous_calc.g_event_list.description(cnt),
1378 p_process_event_id => l_process_event_id,
1379 p_object_version_number => l_object_version_number,
1380 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
1381 p_business_group_id => p_business_group_id,
1382 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
1383 p_surrogate_key => p_new_appraisal_id
1384 );
1385 --
1386 END LOOP;
1387 --
1388 END LOOP;
1389 --
1390 END IF;
1391 --
1392 pay_continuous_calc.g_event_list.sz := 0;
1393 --
1394 END;
1395 --
1396 hr_utility.set_location(l_proc, 900);
1397 --
1398 end PER_APPRAISALS_aru;
1399 --
1400 /* name : per_appraisals_ard
1401 purpose : This is procedure that records any deletes
1402 on per_appraisals.
1403 */
1404 procedure per_appraisals_ard(
1405 p_business_group_id in number,
1406 p_legislation_code in varchar2,
1407 p_appraisee_person_id in number,
1408 p_effective_start_date in date,
1409 p_appraisal_id in number
1410 )
1411 is
1412 --
1413 cursor asgcur (p_person_id number) is
1414 select distinct assignment_id
1415 from per_all_assignments_f
1416 where person_id = p_person_id;
1417 --
1418 l_process_event_id number;
1419 l_object_version_number number;
1420 l_proc varchar2(240) := g_package||'.per_appraisals_ard';
1421 begin
1422 hr_utility.set_location(l_proc, 10);
1423 /* If the continuous calc is overriden then do nothing */
1424 if (pay_continuous_calc.g_override_cc = TRUE) then
1425 return;
1426 end if;
1427 --
1428 -- Date column notional as this is a non-datetrack table
1429 -- See pycodtrg.ldt to see which value is used as 'effective_start_date'
1430 pay_continuous_calc.event_update(p_business_group_id,
1431 p_legislation_code,
1432 'PER_APPRAISALS',
1433 NULL,
1434 NULL,
1435 NULL,
1436 p_effective_start_date,
1437 p_effective_start_date,
1438 'D'
1439 );
1440 /* Now call the API for the affected assignments */
1441 declare
1442 cnt number;
1443 l_process_event_id number;
1444 l_object_version_number number;
1445 begin
1446 if (pay_continuous_calc.g_event_list.sz <> 0) then
1447 for asgrec in asgcur (p_appraisee_person_id) loop
1448 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
1449 pay_ppe_api.create_process_event(
1450 p_assignment_id => asgrec.assignment_id,
1451 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
1452 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
1453 p_status => 'U',
1454 p_description => pay_continuous_calc.g_event_list.description(cnt),
1455 p_process_event_id => l_process_event_id,
1456 p_object_version_number => l_object_version_number,
1457 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
1458 p_surrogate_key => p_appraisal_id,
1459 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
1460 p_business_group_id => p_business_group_id
1461 );
1462 --
1463 END LOOP;
1464 --
1465 END LOOP;
1466 --
1467 END IF;
1468 --
1469 pay_continuous_calc.g_event_list.sz := 0;
1470 --
1471 END;
1472 --
1473 hr_utility.set_location(l_proc, 900);
1474 --
1475 END per_appraisals_ard;
1476 --
1477 --
1478 --------------------------------------------
1479 -- PER_PERSON_TYPE_USAGES_F
1480 --------------------------------------------
1481 --
1482
1483 /* PER_PERSON_TYPE_USAGES_F_ari */
1484 /* name : PER_PERSON_TYPE_USAGES_F_ari
1485 purpose : This is procedure that records any insert
1486 on performance review.
1487 */
1488 PROCEDURE per_person_type_usages_f_ari( p_business_group_id in number,
1489 p_legislation_code in varchar2,
1490 p_person_id in number,
1491 p_person_type_usage_id in number,
1492 p_effective_start_date in date
1493 )
1494 IS
1498 from per_all_assignments_f
1495 --
1496 cursor asgcur (p_person_id number) is
1497 select distinct assignment_id
1499 where person_id = p_person_id;
1500 --
1501 l_process_event_id number;
1502 l_object_version_number number;
1503 l_proc varchar2(240) := g_package||'.per_person_type_usages_f_ari';
1504 --
1505 BEGIN
1506 --
1507 hr_utility.set_location(l_proc, 10);
1508 /* If the continuous calc is overriden then do nothing */
1509 if (pay_continuous_calc.g_override_cc = TRUE) then
1510 return;
1511 end if;
1512 --
1513 pay_continuous_calc.event_update(p_business_group_id,
1514 p_legislation_code,
1515 'PER_PERSON_TYPE_USAGES_F',
1516 NULL,
1517 NULL,
1518 NULL,
1519 p_effective_start_date,
1520 p_effective_start_date,
1521 'I'
1522 );
1523 /* Now call the API for the affected assignments */
1524 DECLARE
1525 cnt number;
1526 l_process_event_id number;
1527 l_object_version_number number;
1528 BEGIN
1529 IF (pay_continuous_calc.g_event_list.sz <> 0) THEN
1530 --
1531 FOR asgrec in asgcur (p_person_id) LOOP
1532 --
1533 FOR cnt in 1..pay_continuous_calc.g_event_list.sz LOOP
1534 --
1535 pay_ppe_api.create_process_event(
1536 p_assignment_id => asgrec.assignment_id,
1537 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
1538 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
1539 p_status => 'U',
1540 p_description => pay_continuous_calc.g_event_list.description(cnt),
1541 p_process_event_id => l_process_event_id,
1542 p_object_version_number => l_object_version_number,
1543 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
1544 p_business_group_id => p_business_group_id,
1545 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
1546 p_surrogate_key => p_person_type_usage_id);
1547 --
1548 END LOOP;
1549 --
1550 END LOOP;
1551 --
1552 END IF;
1553 --
1554 pay_continuous_calc.g_event_list.sz := 0;
1555 --
1556 END;
1557 --
1558 hr_utility.set_location(l_proc, 900);
1559 --
1560 END per_person_type_usages_f_ari;
1561
1562 /* Used generator to build this procedure, */
1563 /* PER_PERSON_TYPE_USAGES_F */
1564 /* name : PER_PERSON_TYPE_USAGES_F
1565 purpose : This is procedure that records any changes for updates
1566 on PER_PERSON_TYPE_USAGES_F CORRECTION only.
1567 */
1568
1569 procedure PER_PERSON_TYPE_USAGES_F_aru(
1570 p_business_group_id in number,
1571 p_legislation_code in varchar2,
1572 p_effective_date in date,
1573 p_old_ATTRIBUTE1 in VARCHAR2,
1574 p_new_ATTRIBUTE1 in VARCHAR2,
1575 p_old_ATTRIBUTE2 in VARCHAR2,
1576 p_new_ATTRIBUTE2 in VARCHAR2,
1577 p_old_ATTRIBUTE3 in VARCHAR2,
1578 p_new_ATTRIBUTE3 in VARCHAR2,
1579 p_old_ATTRIBUTE4 in VARCHAR2,
1580 p_new_ATTRIBUTE4 in VARCHAR2,
1581 p_old_ATTRIBUTE5 in VARCHAR2,
1582 p_new_ATTRIBUTE5 in VARCHAR2,
1583 p_old_ATTRIBUTE6 in VARCHAR2,
1584 p_new_ATTRIBUTE6 in VARCHAR2,
1585 p_old_ATTRIBUTE7 in VARCHAR2,
1586 p_new_ATTRIBUTE7 in VARCHAR2,
1587 p_old_ATTRIBUTE8 in VARCHAR2,
1588 p_new_ATTRIBUTE8 in VARCHAR2,
1589 p_old_ATTRIBUTE9 in VARCHAR2,
1590 p_new_ATTRIBUTE9 in VARCHAR2,
1591 p_old_ATTRIBUTE10 in VARCHAR2,
1592 p_new_ATTRIBUTE10 in VARCHAR2,
1593 p_old_ATTRIBUTE11 in VARCHAR2,
1594 p_new_ATTRIBUTE11 in VARCHAR2,
1595 p_old_ATTRIBUTE12 in VARCHAR2,
1596 p_new_ATTRIBUTE12 in VARCHAR2,
1597 p_old_ATTRIBUTE13 in VARCHAR2,
1598 p_new_ATTRIBUTE13 in VARCHAR2,
1599 p_old_ATTRIBUTE14 in VARCHAR2,
1600 p_new_ATTRIBUTE14 in VARCHAR2,
1601 p_old_ATTRIBUTE15 in VARCHAR2,
1602 p_new_ATTRIBUTE15 in VARCHAR2,
1603 p_old_ATTRIBUTE16 in VARCHAR2,
1604 p_new_ATTRIBUTE16 in VARCHAR2,
1605 p_old_ATTRIBUTE17 in VARCHAR2,
1606 p_new_ATTRIBUTE17 in VARCHAR2,
1607 p_old_ATTRIBUTE18 in VARCHAR2,
1608 p_new_ATTRIBUTE18 in VARCHAR2,
1609 p_old_ATTRIBUTE19 in VARCHAR2,
1610 p_new_ATTRIBUTE19 in VARCHAR2,
1611 p_old_ATTRIBUTE20 in VARCHAR2,
1612 p_new_ATTRIBUTE20 in VARCHAR2,
1613 p_old_ATTRIBUTE_CATEGORY in VARCHAR2,
1614 p_new_ATTRIBUTE_CATEGORY in VARCHAR2,
1615 p_old_PERSON_ID in NUMBER,
1616 p_new_PERSON_ID in NUMBER,
1617 p_old_PERSON_TYPE_ID in NUMBER,
1618 p_new_PERSON_TYPE_ID in NUMBER,
1619 p_old_PERSON_TYPE_USAGE_ID in NUMBER,
1620 p_new_PERSON_TYPE_USAGE_ID in NUMBER,
1621 p_old_PROGRAM_APPLICATION_ID in NUMBER,
1622 p_new_PROGRAM_APPLICATION_ID in NUMBER,
1623 p_old_PROGRAM_ID in NUMBER,
1624 p_new_PROGRAM_ID in NUMBER,
1625 p_old_PROGRAM_UPDATE_DATE in DATE,
1626 p_new_PROGRAM_UPDATE_DATE in DATE,
1627 p_old_REQUEST_ID in NUMBER,
1628 p_new_REQUEST_ID in NUMBER,
1632 p_new_EFFECTIVE_START_DATE in DATE
1629 p_old_EFFECTIVE_END_DATE in DATE,
1630 p_new_EFFECTIVE_END_DATE in DATE,
1631 p_old_EFFECTIVE_START_DATE in DATE,
1633 )
1634 is
1635 --
1636 cursor asgcur (p_person_id number) is
1637 select distinct assignment_id
1638 from per_all_assignments_f
1639 where person_id = p_person_id;
1640 --
1641 l_proc varchar2(240) := g_package||'.per_person_type_usages_f_aru';
1642 --
1643 begin
1644 --
1645 hr_utility.set_location(l_proc,10);
1646 --
1647 /* If the continuous calc is overriden then do nothing */
1648 if (pay_continuous_calc.g_override_cc = TRUE) then
1649 return;
1650 end if;
1651 --
1652 /* If the dates havent changed it must be a correction */
1653 if (p_old_effective_end_date = p_new_effective_end_date
1654 and p_old_effective_start_date = p_new_effective_start_date) then
1655 --
1656 pay_continuous_calc.event_update(p_business_group_id,
1657 p_legislation_code,
1658 'PER_PERSON_TYPE_USAGES_F',
1659 'ATTRIBUTE1',
1660 p_old_ATTRIBUTE1,
1661 p_new_ATTRIBUTE1,
1662 p_effective_date
1663 );
1664 --
1665 pay_continuous_calc.event_update(p_business_group_id,
1666 p_legislation_code,
1667 'PER_PERSON_TYPE_USAGES_F',
1668 'ATTRIBUTE10',
1669 p_old_ATTRIBUTE10,
1670 p_new_ATTRIBUTE10,
1671 p_effective_date
1672 );
1673 --
1674 pay_continuous_calc.event_update(p_business_group_id,
1675 p_legislation_code,
1676 'PER_PERSON_TYPE_USAGES_F',
1677 'ATTRIBUTE11',
1678 p_old_ATTRIBUTE11,
1679 p_new_ATTRIBUTE11,
1680 p_effective_date
1681 );
1682 --
1683 pay_continuous_calc.event_update(p_business_group_id,
1684 p_legislation_code,
1685 'PER_PERSON_TYPE_USAGES_F',
1686 'ATTRIBUTE12',
1687 p_old_ATTRIBUTE12,
1688 p_new_ATTRIBUTE12,
1689 p_effective_date
1690 );
1691 --
1692 pay_continuous_calc.event_update(p_business_group_id,
1693 p_legislation_code,
1694 'PER_PERSON_TYPE_USAGES_F',
1695 'ATTRIBUTE13',
1696 p_old_ATTRIBUTE13,
1697 p_new_ATTRIBUTE13,
1698 p_effective_date
1699 );
1700 --
1701 pay_continuous_calc.event_update(p_business_group_id,
1702 p_legislation_code,
1703 'PER_PERSON_TYPE_USAGES_F',
1704 'ATTRIBUTE14',
1705 p_old_ATTRIBUTE14,
1706 p_new_ATTRIBUTE14,
1707 p_effective_date
1708 );
1709 --
1710 pay_continuous_calc.event_update(p_business_group_id,
1711 p_legislation_code,
1712 'PER_PERSON_TYPE_USAGES_F',
1713 'ATTRIBUTE15',
1714 p_old_ATTRIBUTE15,
1715 p_new_ATTRIBUTE15,
1716 p_effective_date
1717 );
1718 --
1719 pay_continuous_calc.event_update(p_business_group_id,
1720 p_legislation_code,
1721 'PER_PERSON_TYPE_USAGES_F',
1722 'ATTRIBUTE16',
1723 p_old_ATTRIBUTE16,
1724 p_new_ATTRIBUTE16,
1725 p_effective_date
1726 );
1727 --
1728 pay_continuous_calc.event_update(p_business_group_id,
1729 p_legislation_code,
1730 'PER_PERSON_TYPE_USAGES_F',
1731 'ATTRIBUTE17',
1732 p_old_ATTRIBUTE17,
1733 p_new_ATTRIBUTE17,
1734 p_effective_date
1735 );
1736 --
1737 pay_continuous_calc.event_update(p_business_group_id,
1738 p_legislation_code,
1739 'PER_PERSON_TYPE_USAGES_F',
1740 'ATTRIBUTE18',
1741 p_old_ATTRIBUTE18,
1742 p_new_ATTRIBUTE18,
1743 p_effective_date
1747 p_legislation_code,
1744 );
1745 --
1746 pay_continuous_calc.event_update(p_business_group_id,
1748 'PER_PERSON_TYPE_USAGES_F',
1749 'ATTRIBUTE19',
1750 p_old_ATTRIBUTE19,
1751 p_new_ATTRIBUTE19,
1752 p_effective_date
1753 );
1754 --
1755 pay_continuous_calc.event_update(p_business_group_id,
1756 p_legislation_code,
1757 'PER_PERSON_TYPE_USAGES_F',
1758 'ATTRIBUTE2',
1759 p_old_ATTRIBUTE2,
1760 p_new_ATTRIBUTE2,
1761 p_effective_date
1762 );
1763 --
1764 pay_continuous_calc.event_update(p_business_group_id,
1765 p_legislation_code,
1766 'PER_PERSON_TYPE_USAGES_F',
1767 'ATTRIBUTE20',
1768 p_old_ATTRIBUTE20,
1769 p_new_ATTRIBUTE20,
1770 p_effective_date
1771 );
1772 --
1773 pay_continuous_calc.event_update(p_business_group_id,
1774 p_legislation_code,
1775 'PER_PERSON_TYPE_USAGES_F',
1776 'ATTRIBUTE3',
1777 p_old_ATTRIBUTE3,
1778 p_new_ATTRIBUTE3,
1779 p_effective_date
1780 );
1781 --
1782 pay_continuous_calc.event_update(p_business_group_id,
1783 p_legislation_code,
1784 'PER_PERSON_TYPE_USAGES_F',
1785 'ATTRIBUTE4',
1786 p_old_ATTRIBUTE4,
1787 p_new_ATTRIBUTE4,
1788 p_effective_date
1789 );
1790 --
1791 pay_continuous_calc.event_update(p_business_group_id,
1792 p_legislation_code,
1793 'PER_PERSON_TYPE_USAGES_F',
1794 'ATTRIBUTE5',
1795 p_old_ATTRIBUTE5,
1796 p_new_ATTRIBUTE5,
1797 p_effective_date
1798 );
1799 --
1800 pay_continuous_calc.event_update(p_business_group_id,
1801 p_legislation_code,
1802 'PER_PERSON_TYPE_USAGES_F',
1803 'ATTRIBUTE6',
1804 p_old_ATTRIBUTE6,
1805 p_new_ATTRIBUTE6,
1806 p_effective_date
1807 );
1808 --
1809 pay_continuous_calc.event_update(p_business_group_id,
1810 p_legislation_code,
1811 'PER_PERSON_TYPE_USAGES_F',
1812 'ATTRIBUTE7',
1813 p_old_ATTRIBUTE7,
1814 p_new_ATTRIBUTE7,
1815 p_effective_date
1816 );
1817 --
1818 pay_continuous_calc.event_update(p_business_group_id,
1819 p_legislation_code,
1820 'PER_PERSON_TYPE_USAGES_F',
1821 'ATTRIBUTE8',
1822 p_old_ATTRIBUTE8,
1823 p_new_ATTRIBUTE8,
1824 p_effective_date
1825 );
1826 --
1827 pay_continuous_calc.event_update(p_business_group_id,
1828 p_legislation_code,
1829 'PER_PERSON_TYPE_USAGES_F',
1830 'ATTRIBUTE9',
1831 p_old_ATTRIBUTE9,
1832 p_new_ATTRIBUTE9,
1833 p_effective_date
1834 );
1835 --
1836 pay_continuous_calc.event_update(p_business_group_id,
1837 p_legislation_code,
1838 'PER_PERSON_TYPE_USAGES_F',
1839 'ATTRIBUTE_CATEGORY',
1840 p_old_ATTRIBUTE_CATEGORY,
1841 p_new_ATTRIBUTE_CATEGORY,
1842 p_effective_date
1843 );
1844 --
1845 pay_continuous_calc.event_update(p_business_group_id,
1846 p_legislation_code,
1847 'PER_PERSON_TYPE_USAGES_F',
1848 'PERSON_ID',
1849 p_old_PERSON_ID,
1850 p_new_PERSON_ID,
1854 pay_continuous_calc.event_update(p_business_group_id,
1851 p_effective_date
1852 );
1853 --
1855 p_legislation_code,
1856 'PER_PERSON_TYPE_USAGES_F',
1857 'PERSON_TYPE_ID',
1858 p_old_PERSON_TYPE_ID,
1859 p_new_PERSON_TYPE_ID,
1860 p_effective_date
1861 );
1862 --
1863 pay_continuous_calc.event_update(p_business_group_id,
1864 p_legislation_code,
1865 'PER_PERSON_TYPE_USAGES_F',
1866 'PERSON_TYPE_USAGE_ID',
1867 p_old_PERSON_TYPE_USAGE_ID,
1868 p_new_PERSON_TYPE_USAGE_ID,
1869 p_effective_date
1870 );
1871 --
1872 pay_continuous_calc.event_update(p_business_group_id,
1873 p_legislation_code,
1874 'PER_PERSON_TYPE_USAGES_F',
1875 'PROGRAM_APPLICATION_ID',
1876 p_old_PROGRAM_APPLICATION_ID,
1877 p_new_PROGRAM_APPLICATION_ID,
1878 p_effective_date
1879 );
1880 --
1881 pay_continuous_calc.event_update(p_business_group_id,
1882 p_legislation_code,
1883 'PER_PERSON_TYPE_USAGES_F',
1884 'PROGRAM_ID',
1885 p_old_PROGRAM_ID,
1886 p_new_PROGRAM_ID,
1887 p_effective_date
1888 );
1889 --
1890 pay_continuous_calc.event_update(p_business_group_id,
1891 p_legislation_code,
1892 'PER_PERSON_TYPE_USAGES_F',
1893 'PROGRAM_UPDATE_DATE',
1894 p_old_PROGRAM_UPDATE_DATE,
1895 p_new_PROGRAM_UPDATE_DATE,
1896 p_effective_date
1897 );
1898 --
1899 pay_continuous_calc.event_update(p_business_group_id,
1900 p_legislation_code,
1901 'PER_PERSON_TYPE_USAGES_F',
1902 'REQUEST_ID',
1903 p_old_REQUEST_ID,
1904 p_new_REQUEST_ID,
1905 p_effective_date
1906 );
1907 --
1908 pay_continuous_calc.event_update(p_business_group_id,
1909 p_legislation_code,
1910 'PER_PERSON_TYPE_USAGES_F',
1911 'REQUEST_ID',
1912 p_old_REQUEST_ID,
1913 p_new_REQUEST_ID,
1914 p_effective_date
1915 );
1916 else
1917 /* OK it must be a date track change */
1918 --
1919 pay_continuous_calc.event_update(p_business_group_id,
1920 p_legislation_code,
1921 'PER_PERSON_TYPE_USAGES_F',
1922 'EFFECTIVE_END_DATE',
1923 p_old_EFFECTIVE_END_DATE,
1924 p_new_EFFECTIVE_END_DATE,
1925 p_new_effective_end_date,
1926 least(p_old_effective_end_date,
1927 p_new_effective_end_date)
1928 );
1929 --
1930 pay_continuous_calc.event_update(p_business_group_id,
1931 p_legislation_code,
1932 'PER_PERSON_TYPE_USAGES_F',
1933 'EFFECTIVE_START_DATE',
1934 p_old_EFFECTIVE_START_DATE,
1935 p_new_EFFECTIVE_START_DATE,
1936 p_new_effective_start_date,
1937 least(p_old_effective_start_date,
1938 p_new_effective_start_date)
1939 );
1940
1941 end if;
1942 --
1943 /* Now call the API for the affected assignments */
1944 declare
1945 l_process_event_id number;
1946 l_object_version_number number;
1947 cnt number;
1948 begin
1949 if (pay_continuous_calc.g_event_list.sz <> 0) then
1950 for asgrec in asgcur (p_old_person_id) loop
1951 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
1952 pay_ppe_api.create_process_event(
1953 p_assignment_id => asgrec.assignment_id,
1954 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
1955 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
1956 p_status => 'U',
1960 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
1957 p_description => pay_continuous_calc.g_event_list.description(cnt),
1958 p_process_event_id => l_process_event_id,
1959 p_object_version_number => l_object_version_number,
1961 p_business_group_id => p_business_group_id,
1962 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
1963 p_surrogate_key => p_new_person_type_usage_id
1964 );
1965 end loop;
1966 end loop;
1967 end if;
1968 pay_continuous_calc.g_event_list.sz := 0;
1969 end;
1970 --
1971 hr_utility.set_location(l_proc, 900);
1972 --
1973 end per_person_type_usages_f_aru;
1974
1975 /* name : per_person_type_usages_f_ard
1976 purpose : This is procedure that records any deletes
1977 on per_person_type_usages_f.
1978 */
1979 procedure per_person_type_usages_f_ard(
1980 p_business_group_id in number,
1981 p_legislation_code in varchar2,
1982 p_person_id in number,
1983 p_effective_start_date in date,
1984 p_person_type_usage_id in number
1985 )
1986 is
1987 --
1988 cursor asgcur (p_person_id number) is
1989 select distinct assignment_id
1990 from per_all_assignments_f
1991 where person_id = p_person_id;
1992 --
1993 l_process_event_id number;
1994 l_object_version_number number;
1995 l_proc varchar2(240) := g_package||'.per_person_type_usages_f_ard';
1996 begin
1997 hr_utility.set_location(l_proc, 10);
1998 /* If the continuous calc is overriden then do nothing */
1999 if (pay_continuous_calc.g_override_cc = TRUE) then
2000 return;
2001 end if;
2002 --
2003 -- Date column notional as this is a non-datetrack table
2004 -- See pycodtrg.ldt to see which value is used as 'effective_start_date'
2005 pay_continuous_calc.event_update(p_business_group_id,
2006 p_legislation_code,
2007 'PER_PERSON_TYPE_USAGES_F',
2008 NULL,
2009 NULL,
2010 NULL,
2011 p_effective_start_date,
2012 p_effective_start_date,
2013 'D'
2014 );
2015 /* Now call the API for the affected assignments */
2016 declare
2017 cnt number;
2018 l_process_event_id number;
2019 l_object_version_number number;
2020 begin
2021 if (pay_continuous_calc.g_event_list.sz <> 0) then
2022 for asgrec in asgcur (p_person_id) loop
2023 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
2024 pay_ppe_api.create_process_event(
2025 p_assignment_id => asgrec.assignment_id,
2026 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
2027 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
2028 p_status => 'U',
2029 p_description => pay_continuous_calc.g_event_list.description(cnt),
2030 p_process_event_id => l_process_event_id,
2031 p_object_version_number => l_object_version_number,
2032 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
2033 p_surrogate_key => p_person_type_usage_id,
2034 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
2035 p_business_group_id => p_business_group_id
2036 );
2037 --
2038 END LOOP;
2039 --
2040 END LOOP;
2041 --
2042 END IF;
2043 --
2044 pay_continuous_calc.g_event_list.sz := 0;
2045 --
2046 END;
2047 --
2048 hr_utility.set_location(l_proc, 900);
2049 --
2050 END per_person_type_usages_f_ard;
2051 --
2052 --------------------------------------------
2053 -- PER_ASSIGNMENT_EXTRA_INFO
2054 --------------------------------------------
2055 /* Used generator to build this procedure, but removed the references to
2056 date columns as this is a non-datetrack table
2057 We are assuming always correction
2058 */
2059 /* PER_ASSIGNMENT_EXTRA_INFO */
2060 /* name : PER_ASSIGNMENT_EXTRA_INFO
2061 purpose : This is procedure that records any changes for updates
2062 on per_performance_reviews CORRECTION only.
2063 */
2064 procedure PER_ASSIGNMENT_EXTRA_INFO_aru(
2065 p_business_group_id in number,
2066 p_legislation_code in varchar2,
2067 p_effective_date in date ,
2068 p_old_AEI_ATTRIBUTE1 in VARCHAR2,
2069 p_new_AEI_ATTRIBUTE1 in VARCHAR2 ,
2070 p_old_AEI_ATTRIBUTE10 in VARCHAR2,
2071 p_new_AEI_ATTRIBUTE10 in VARCHAR2 ,
2072 p_old_AEI_ATTRIBUTE11 in VARCHAR2,
2073 p_new_AEI_ATTRIBUTE11 in VARCHAR2 ,
2074 p_old_AEI_ATTRIBUTE12 in VARCHAR2,
2075 p_new_AEI_ATTRIBUTE12 in VARCHAR2 ,
2076 p_old_AEI_ATTRIBUTE13 in VARCHAR2,
2077 p_new_AEI_ATTRIBUTE13 in VARCHAR2 ,
2078 p_old_AEI_ATTRIBUTE14 in VARCHAR2,
2082 p_old_AEI_ATTRIBUTE16 in VARCHAR2,
2079 p_new_AEI_ATTRIBUTE14 in VARCHAR2 ,
2080 p_old_AEI_ATTRIBUTE15 in VARCHAR2,
2081 p_new_AEI_ATTRIBUTE15 in VARCHAR2 ,
2083 p_new_AEI_ATTRIBUTE16 in VARCHAR2 ,
2084 p_old_AEI_ATTRIBUTE17 in VARCHAR2,
2085 p_new_AEI_ATTRIBUTE17 in VARCHAR2 ,
2086 p_old_AEI_ATTRIBUTE18 in VARCHAR2,
2087 p_new_AEI_ATTRIBUTE18 in VARCHAR2 ,
2088 p_old_AEI_ATTRIBUTE19 in VARCHAR2,
2089 p_new_AEI_ATTRIBUTE19 in VARCHAR2 ,
2090 p_old_AEI_ATTRIBUTE2 in VARCHAR2,
2091 p_new_AEI_ATTRIBUTE2 in VARCHAR2 ,
2092 p_old_AEI_ATTRIBUTE20 in VARCHAR2,
2093 p_new_AEI_ATTRIBUTE20 in VARCHAR2 ,
2094 p_old_AEI_ATTRIBUTE3 in VARCHAR2,
2095 p_new_AEI_ATTRIBUTE3 in VARCHAR2 ,
2096 p_old_AEI_ATTRIBUTE4 in VARCHAR2,
2097 p_new_AEI_ATTRIBUTE4 in VARCHAR2 ,
2098 p_old_AEI_ATTRIBUTE5 in VARCHAR2,
2099 p_new_AEI_ATTRIBUTE5 in VARCHAR2 ,
2100 p_old_AEI_ATTRIBUTE6 in VARCHAR2,
2101 p_new_AEI_ATTRIBUTE6 in VARCHAR2 ,
2102 p_old_AEI_ATTRIBUTE7 in VARCHAR2,
2103 p_new_AEI_ATTRIBUTE7 in VARCHAR2 ,
2104 p_old_AEI_ATTRIBUTE8 in VARCHAR2,
2105 p_new_AEI_ATTRIBUTE8 in VARCHAR2 ,
2106 p_old_AEI_ATTRIBUTE9 in VARCHAR2,
2107 p_new_AEI_ATTRIBUTE9 in VARCHAR2 ,
2108 p_old_AEI_ATTRIBUTE_CATEGORY in VARCHAR2,
2109 p_new_AEI_ATTRIBUTE_CATEGORY in VARCHAR2 ,
2110 p_old_AEI_INFORMATION1 in VARCHAR2,
2111 p_new_AEI_INFORMATION1 in VARCHAR2 ,
2112 p_old_AEI_INFORMATION10 in VARCHAR2,
2113 p_new_AEI_INFORMATION10 in VARCHAR2 ,
2114 p_old_AEI_INFORMATION11 in VARCHAR2,
2115 p_new_AEI_INFORMATION11 in VARCHAR2 ,
2116 p_old_AEI_INFORMATION12 in VARCHAR2,
2117 p_new_AEI_INFORMATION12 in VARCHAR2 ,
2118 p_old_AEI_INFORMATION13 in VARCHAR2,
2119 p_new_AEI_INFORMATION13 in VARCHAR2 ,
2120 p_old_AEI_INFORMATION14 in VARCHAR2,
2121 p_new_AEI_INFORMATION14 in VARCHAR2 ,
2122 p_old_AEI_INFORMATION15 in VARCHAR2,
2123 p_new_AEI_INFORMATION15 in VARCHAR2 ,
2124 p_old_AEI_INFORMATION16 in VARCHAR2,
2125 p_new_AEI_INFORMATION16 in VARCHAR2 ,
2126 p_old_AEI_INFORMATION17 in VARCHAR2,
2127 p_new_AEI_INFORMATION17 in VARCHAR2 ,
2128 p_old_AEI_INFORMATION18 in VARCHAR2,
2129 p_new_AEI_INFORMATION18 in VARCHAR2 ,
2130 p_old_AEI_INFORMATION19 in VARCHAR2,
2131 p_new_AEI_INFORMATION19 in VARCHAR2 ,
2132 p_old_AEI_INFORMATION2 in VARCHAR2,
2133 p_new_AEI_INFORMATION2 in VARCHAR2 ,
2134 p_old_AEI_INFORMATION20 in VARCHAR2,
2135 p_new_AEI_INFORMATION20 in VARCHAR2 ,
2136 p_old_AEI_INFORMATION21 in VARCHAR2,
2137 p_new_AEI_INFORMATION21 in VARCHAR2 ,
2138 p_old_AEI_INFORMATION22 in VARCHAR2,
2139 p_new_AEI_INFORMATION22 in VARCHAR2 ,
2140 p_old_AEI_INFORMATION23 in VARCHAR2,
2141 p_new_AEI_INFORMATION23 in VARCHAR2 ,
2142 p_old_AEI_INFORMATION24 in VARCHAR2,
2143 p_new_AEI_INFORMATION24 in VARCHAR2 ,
2144 p_old_AEI_INFORMATION25 in VARCHAR2,
2145 p_new_AEI_INFORMATION25 in VARCHAR2 ,
2146 p_old_AEI_INFORMATION26 in VARCHAR2,
2147 p_new_AEI_INFORMATION26 in VARCHAR2 ,
2148 p_old_AEI_INFORMATION27 in VARCHAR2,
2149 p_new_AEI_INFORMATION27 in VARCHAR2 ,
2150 p_old_AEI_INFORMATION28 in VARCHAR2,
2151 p_new_AEI_INFORMATION28 in VARCHAR2 ,
2152 p_old_AEI_INFORMATION29 in VARCHAR2,
2153 p_new_AEI_INFORMATION29 in VARCHAR2 ,
2154 p_old_AEI_INFORMATION3 in VARCHAR2,
2155 p_new_AEI_INFORMATION3 in VARCHAR2 ,
2156 p_old_AEI_INFORMATION30 in VARCHAR2,
2157 p_new_AEI_INFORMATION30 in VARCHAR2 ,
2158 p_old_AEI_INFORMATION4 in VARCHAR2,
2159 p_new_AEI_INFORMATION4 in VARCHAR2 ,
2160 p_old_AEI_INFORMATION5 in VARCHAR2,
2161 p_new_AEI_INFORMATION5 in VARCHAR2 ,
2162 p_old_AEI_INFORMATION6 in VARCHAR2,
2163 p_new_AEI_INFORMATION6 in VARCHAR2 ,
2164 p_old_AEI_INFORMATION7 in VARCHAR2,
2165 p_new_AEI_INFORMATION7 in VARCHAR2 ,
2166 p_old_AEI_INFORMATION8 in VARCHAR2,
2167 p_new_AEI_INFORMATION8 in VARCHAR2 ,
2168 p_old_AEI_INFORMATION9 in VARCHAR2,
2169 p_new_AEI_INFORMATION9 in VARCHAR2 ,
2170 p_old_AEI_INFORMATION_CATEGORY in VARCHAR2,
2171 p_new_AEI_INFORMATION_CATEGORY in VARCHAR2 ,
2172 p_old_ASSIGNMENT_EXTRA_INFO_ID in NUMBER,
2173 p_new_ASSIGNMENT_EXTRA_INFO_ID in NUMBER ,
2174 p_old_ASSIGNMENT_ID in NUMBER,
2175 p_new_ASSIGNMENT_ID in NUMBER ,
2176 p_old_INFORMATION_TYPE in VARCHAR2,
2177 p_new_INFORMATION_TYPE in VARCHAR2
2178 )
2179 is
2180 --
2181 begin
2182 /* If the continuous calc is overriden then do nothing */
2183 if (pay_continuous_calc.g_override_cc = TRUE) then
2184 return;
2185 end if;
2186 --
2187 /* If the dates havent changed it must be a correction */
2188 --
2189 pay_continuous_calc.event_update(p_business_group_id,
2190 p_legislation_code,
2191 'PER_ASSIGNMENT_EXTRA_INFO',
2192 'AEI_ATTRIBUTE1',
2193 p_old_AEI_ATTRIBUTE1,
2194 p_new_AEI_ATTRIBUTE1,
2195 p_effective_date
2196 );
2197 --
2198 pay_continuous_calc.event_update(p_business_group_id,
2199 p_legislation_code,
2200 'PER_ASSIGNMENT_EXTRA_INFO',
2204 p_effective_date
2201 'AEI_ATTRIBUTE10',
2202 p_old_AEI_ATTRIBUTE10,
2203 p_new_AEI_ATTRIBUTE10,
2205 );
2206 --
2207 pay_continuous_calc.event_update(p_business_group_id,
2208 p_legislation_code,
2209 'PER_ASSIGNMENT_EXTRA_INFO',
2210 'AEI_ATTRIBUTE11',
2211 p_old_AEI_ATTRIBUTE11,
2212 p_new_AEI_ATTRIBUTE11,
2213 p_effective_date
2214 );
2215 --
2216 pay_continuous_calc.event_update(p_business_group_id,
2217 p_legislation_code,
2218 'PER_ASSIGNMENT_EXTRA_INFO',
2219 'AEI_ATTRIBUTE12',
2220 p_old_AEI_ATTRIBUTE12,
2221 p_new_AEI_ATTRIBUTE12,
2222 p_effective_date
2223 );
2224 --
2225 pay_continuous_calc.event_update(p_business_group_id,
2226 p_legislation_code,
2227 'PER_ASSIGNMENT_EXTRA_INFO',
2228 'AEI_ATTRIBUTE13',
2229 p_old_AEI_ATTRIBUTE13,
2230 p_new_AEI_ATTRIBUTE13,
2231 p_effective_date
2232 );
2233 --
2234 pay_continuous_calc.event_update(p_business_group_id,
2235 p_legislation_code,
2236 'PER_ASSIGNMENT_EXTRA_INFO',
2237 'AEI_ATTRIBUTE14',
2238 p_old_AEI_ATTRIBUTE14,
2239 p_new_AEI_ATTRIBUTE14,
2240 p_effective_date
2241 );
2242 --
2243 pay_continuous_calc.event_update(p_business_group_id,
2244 p_legislation_code,
2245 'PER_ASSIGNMENT_EXTRA_INFO',
2246 'AEI_ATTRIBUTE15',
2247 p_old_AEI_ATTRIBUTE15,
2248 p_new_AEI_ATTRIBUTE15,
2249 p_effective_date
2250 );
2251 --
2252 pay_continuous_calc.event_update(p_business_group_id,
2253 p_legislation_code,
2254 'PER_ASSIGNMENT_EXTRA_INFO',
2255 'AEI_ATTRIBUTE16',
2256 p_old_AEI_ATTRIBUTE16,
2257 p_new_AEI_ATTRIBUTE16,
2258 p_effective_date
2259 );
2260 --
2261 pay_continuous_calc.event_update(p_business_group_id,
2262 p_legislation_code,
2263 'PER_ASSIGNMENT_EXTRA_INFO',
2264 'AEI_ATTRIBUTE17',
2265 p_old_AEI_ATTRIBUTE17,
2266 p_new_AEI_ATTRIBUTE17,
2267 p_effective_date
2268 );
2269 --
2270 pay_continuous_calc.event_update(p_business_group_id,
2271 p_legislation_code,
2272 'PER_ASSIGNMENT_EXTRA_INFO',
2273 'AEI_ATTRIBUTE18',
2274 p_old_AEI_ATTRIBUTE18,
2275 p_new_AEI_ATTRIBUTE18,
2276 p_effective_date
2277 );
2278 --
2279 pay_continuous_calc.event_update(p_business_group_id,
2280 p_legislation_code,
2281 'PER_ASSIGNMENT_EXTRA_INFO',
2282 'AEI_ATTRIBUTE19',
2283 p_old_AEI_ATTRIBUTE19,
2284 p_new_AEI_ATTRIBUTE19,
2285 p_effective_date
2286 );
2287 --
2288 pay_continuous_calc.event_update(p_business_group_id,
2289 p_legislation_code,
2290 'PER_ASSIGNMENT_EXTRA_INFO',
2291 'AEI_ATTRIBUTE2',
2292 p_old_AEI_ATTRIBUTE2,
2293 p_new_AEI_ATTRIBUTE2,
2294 p_effective_date
2295 );
2296 --
2297 pay_continuous_calc.event_update(p_business_group_id,
2298 p_legislation_code,
2299 'PER_ASSIGNMENT_EXTRA_INFO',
2300 'AEI_ATTRIBUTE20',
2301 p_old_AEI_ATTRIBUTE20,
2302 p_new_AEI_ATTRIBUTE20,
2303 p_effective_date
2304 );
2305 --
2309 'AEI_ATTRIBUTE3',
2306 pay_continuous_calc.event_update(p_business_group_id,
2307 p_legislation_code,
2308 'PER_ASSIGNMENT_EXTRA_INFO',
2310 p_old_AEI_ATTRIBUTE3,
2311 p_new_AEI_ATTRIBUTE3,
2312 p_effective_date
2313 );
2314 --
2315 pay_continuous_calc.event_update(p_business_group_id,
2316 p_legislation_code,
2317 'PER_ASSIGNMENT_EXTRA_INFO',
2318 'AEI_ATTRIBUTE4',
2319 p_old_AEI_ATTRIBUTE4,
2320 p_new_AEI_ATTRIBUTE4,
2321 p_effective_date
2322 );
2323 --
2324 pay_continuous_calc.event_update(p_business_group_id,
2325 p_legislation_code,
2326 'PER_ASSIGNMENT_EXTRA_INFO',
2327 'AEI_ATTRIBUTE5',
2328 p_old_AEI_ATTRIBUTE5,
2329 p_new_AEI_ATTRIBUTE5,
2330 p_effective_date
2331 );
2332 --
2333 pay_continuous_calc.event_update(p_business_group_id,
2334 p_legislation_code,
2335 'PER_ASSIGNMENT_EXTRA_INFO',
2336 'AEI_ATTRIBUTE6',
2337 p_old_AEI_ATTRIBUTE6,
2338 p_new_AEI_ATTRIBUTE6,
2339 p_effective_date
2340 );
2341 --
2342 pay_continuous_calc.event_update(p_business_group_id,
2343 p_legislation_code,
2344 'PER_ASSIGNMENT_EXTRA_INFO',
2345 'AEI_ATTRIBUTE7',
2346 p_old_AEI_ATTRIBUTE7,
2347 p_new_AEI_ATTRIBUTE7,
2348 p_effective_date
2349 );
2350 --
2351 pay_continuous_calc.event_update(p_business_group_id,
2352 p_legislation_code,
2353 'PER_ASSIGNMENT_EXTRA_INFO',
2354 'AEI_ATTRIBUTE8',
2355 p_old_AEI_ATTRIBUTE8,
2356 p_new_AEI_ATTRIBUTE8,
2357 p_effective_date
2358 );
2359 --
2360 pay_continuous_calc.event_update(p_business_group_id,
2361 p_legislation_code,
2362 'PER_ASSIGNMENT_EXTRA_INFO',
2363 'AEI_ATTRIBUTE9',
2364 p_old_AEI_ATTRIBUTE9,
2365 p_new_AEI_ATTRIBUTE9,
2366 p_effective_date
2367 );
2368 --
2369 pay_continuous_calc.event_update(p_business_group_id,
2370 p_legislation_code,
2371 'PER_ASSIGNMENT_EXTRA_INFO',
2372 'AEI_ATTRIBUTE_CATEGORY',
2373 p_old_AEI_ATTRIBUTE_CATEGORY,
2374 p_new_AEI_ATTRIBUTE_CATEGORY,
2375 p_effective_date
2376 );
2377 --
2378 pay_continuous_calc.event_update(p_business_group_id,
2379 p_legislation_code,
2380 'PER_ASSIGNMENT_EXTRA_INFO',
2381 'AEI_INFORMATION1',
2382 p_old_AEI_INFORMATION1,
2383 p_new_AEI_INFORMATION1,
2384 p_effective_date
2385 );
2386 --
2387 pay_continuous_calc.event_update(p_business_group_id,
2388 p_legislation_code,
2389 'PER_ASSIGNMENT_EXTRA_INFO',
2390 'AEI_INFORMATION10',
2391 p_old_AEI_INFORMATION10,
2392 p_new_AEI_INFORMATION10,
2393 p_effective_date
2394 );
2395 --
2396 pay_continuous_calc.event_update(p_business_group_id,
2397 p_legislation_code,
2398 'PER_ASSIGNMENT_EXTRA_INFO',
2399 'AEI_INFORMATION11',
2400 p_old_AEI_INFORMATION11,
2401 p_new_AEI_INFORMATION11,
2402 p_effective_date
2403 );
2404 --
2405 pay_continuous_calc.event_update(p_business_group_id,
2406 p_legislation_code,
2407 'PER_ASSIGNMENT_EXTRA_INFO',
2408 'AEI_INFORMATION12',
2409 p_old_AEI_INFORMATION12,
2413 --
2410 p_new_AEI_INFORMATION12,
2411 p_effective_date
2412 );
2414 pay_continuous_calc.event_update(p_business_group_id,
2415 p_legislation_code,
2416 'PER_ASSIGNMENT_EXTRA_INFO',
2417 'AEI_INFORMATION13',
2418 p_old_AEI_INFORMATION13,
2419 p_new_AEI_INFORMATION13,
2420 p_effective_date
2421 );
2422 --
2423 pay_continuous_calc.event_update(p_business_group_id,
2424 p_legislation_code,
2425 'PER_ASSIGNMENT_EXTRA_INFO',
2426 'AEI_INFORMATION14',
2427 p_old_AEI_INFORMATION14,
2428 p_new_AEI_INFORMATION14,
2429 p_effective_date
2430 );
2431 --
2432 pay_continuous_calc.event_update(p_business_group_id,
2433 p_legislation_code,
2434 'PER_ASSIGNMENT_EXTRA_INFO',
2435 'AEI_INFORMATION15',
2436 p_old_AEI_INFORMATION15,
2437 p_new_AEI_INFORMATION15,
2438 p_effective_date
2439 );
2440 --
2441 pay_continuous_calc.event_update(p_business_group_id,
2442 p_legislation_code,
2443 'PER_ASSIGNMENT_EXTRA_INFO',
2444 'AEI_INFORMATION16',
2445 p_old_AEI_INFORMATION16,
2446 p_new_AEI_INFORMATION16,
2447 p_effective_date
2448 );
2449 --
2450 pay_continuous_calc.event_update(p_business_group_id,
2451 p_legislation_code,
2452 'PER_ASSIGNMENT_EXTRA_INFO',
2453 'AEI_INFORMATION17',
2454 p_old_AEI_INFORMATION17,
2455 p_new_AEI_INFORMATION17,
2456 p_effective_date
2457 );
2458 --
2459 pay_continuous_calc.event_update(p_business_group_id,
2460 p_legislation_code,
2461 'PER_ASSIGNMENT_EXTRA_INFO',
2462 'AEI_INFORMATION18',
2463 p_old_AEI_INFORMATION18,
2464 p_new_AEI_INFORMATION18,
2465 p_effective_date
2466 );
2467 --
2468 pay_continuous_calc.event_update(p_business_group_id,
2469 p_legislation_code,
2470 'PER_ASSIGNMENT_EXTRA_INFO',
2471 'AEI_INFORMATION19',
2472 p_old_AEI_INFORMATION19,
2473 p_new_AEI_INFORMATION19,
2474 p_effective_date
2475 );
2476 --
2477 pay_continuous_calc.event_update(p_business_group_id,
2478 p_legislation_code,
2479 'PER_ASSIGNMENT_EXTRA_INFO',
2480 'AEI_INFORMATION2',
2481 p_old_AEI_INFORMATION2,
2482 p_new_AEI_INFORMATION2,
2483 p_effective_date
2484 );
2485 --
2486 pay_continuous_calc.event_update(p_business_group_id,
2487 p_legislation_code,
2488 'PER_ASSIGNMENT_EXTRA_INFO',
2489 'AEI_INFORMATION20',
2490 p_old_AEI_INFORMATION20,
2491 p_new_AEI_INFORMATION20,
2492 p_effective_date
2493 );
2494 --
2495 pay_continuous_calc.event_update(p_business_group_id,
2496 p_legislation_code,
2497 'PER_ASSIGNMENT_EXTRA_INFO',
2498 'AEI_INFORMATION21',
2499 p_old_AEI_INFORMATION21,
2500 p_new_AEI_INFORMATION21,
2501 p_effective_date
2502 );
2503 --
2504 pay_continuous_calc.event_update(p_business_group_id,
2505 p_legislation_code,
2506 'PER_ASSIGNMENT_EXTRA_INFO',
2507 'AEI_INFORMATION22',
2508 p_old_AEI_INFORMATION22,
2509 p_new_AEI_INFORMATION22,
2510 p_effective_date
2511 );
2512 --
2513 pay_continuous_calc.event_update(p_business_group_id,
2517 p_old_AEI_INFORMATION23,
2514 p_legislation_code,
2515 'PER_ASSIGNMENT_EXTRA_INFO',
2516 'AEI_INFORMATION23',
2518 p_new_AEI_INFORMATION23,
2519 p_effective_date
2520 );
2521 --
2522 pay_continuous_calc.event_update(p_business_group_id,
2523 p_legislation_code,
2524 'PER_ASSIGNMENT_EXTRA_INFO',
2525 'AEI_INFORMATION24',
2526 p_old_AEI_INFORMATION24,
2527 p_new_AEI_INFORMATION24,
2528 p_effective_date
2529 );
2530 --
2531 pay_continuous_calc.event_update(p_business_group_id,
2532 p_legislation_code,
2533 'PER_ASSIGNMENT_EXTRA_INFO',
2534 'AEI_INFORMATION25',
2535 p_old_AEI_INFORMATION25,
2536 p_new_AEI_INFORMATION25,
2537 p_effective_date
2538 );
2539 --
2540 pay_continuous_calc.event_update(p_business_group_id,
2541 p_legislation_code,
2542 'PER_ASSIGNMENT_EXTRA_INFO',
2543 'AEI_INFORMATION26',
2544 p_old_AEI_INFORMATION26,
2545 p_new_AEI_INFORMATION26,
2546 p_effective_date
2547 );
2548 --
2549 pay_continuous_calc.event_update(p_business_group_id,
2550 p_legislation_code,
2551 'PER_ASSIGNMENT_EXTRA_INFO',
2552 'AEI_INFORMATION27',
2553 p_old_AEI_INFORMATION27,
2554 p_new_AEI_INFORMATION27,
2555 p_effective_date
2556 );
2557 --
2558 pay_continuous_calc.event_update(p_business_group_id,
2559 p_legislation_code,
2560 'PER_ASSIGNMENT_EXTRA_INFO',
2561 'AEI_INFORMATION28',
2562 p_old_AEI_INFORMATION28,
2563 p_new_AEI_INFORMATION28,
2564 p_effective_date
2565 );
2566 --
2567 pay_continuous_calc.event_update(p_business_group_id,
2568 p_legislation_code,
2569 'PER_ASSIGNMENT_EXTRA_INFO',
2570 'AEI_INFORMATION29',
2571 p_old_AEI_INFORMATION29,
2572 p_new_AEI_INFORMATION29,
2573 p_effective_date
2574 );
2575 --
2576 pay_continuous_calc.event_update(p_business_group_id,
2577 p_legislation_code,
2578 'PER_ASSIGNMENT_EXTRA_INFO',
2579 'AEI_INFORMATION3',
2580 p_old_AEI_INFORMATION3,
2581 p_new_AEI_INFORMATION3,
2582 p_effective_date
2583 );
2584 --
2585 pay_continuous_calc.event_update(p_business_group_id,
2586 p_legislation_code,
2587 'PER_ASSIGNMENT_EXTRA_INFO',
2588 'AEI_INFORMATION30',
2589 p_old_AEI_INFORMATION30,
2590 p_new_AEI_INFORMATION30,
2591 p_effective_date
2592 );
2593 --
2594 pay_continuous_calc.event_update(p_business_group_id,
2595 p_legislation_code,
2596 'PER_ASSIGNMENT_EXTRA_INFO',
2597 'AEI_INFORMATION4',
2598 p_old_AEI_INFORMATION4,
2599 p_new_AEI_INFORMATION4,
2600 p_effective_date
2601 );
2602 --
2603 pay_continuous_calc.event_update(p_business_group_id,
2604 p_legislation_code,
2605 'PER_ASSIGNMENT_EXTRA_INFO',
2606 'AEI_INFORMATION5',
2607 p_old_AEI_INFORMATION5,
2608 p_new_AEI_INFORMATION5,
2609 p_effective_date
2610 );
2611 --
2612 pay_continuous_calc.event_update(p_business_group_id,
2613 p_legislation_code,
2614 'PER_ASSIGNMENT_EXTRA_INFO',
2615 'AEI_INFORMATION6',
2619 );
2616 p_old_AEI_INFORMATION6,
2617 p_new_AEI_INFORMATION6,
2618 p_effective_date
2620 --
2621 pay_continuous_calc.event_update(p_business_group_id,
2622 p_legislation_code,
2623 'PER_ASSIGNMENT_EXTRA_INFO',
2624 'AEI_INFORMATION7',
2625 p_old_AEI_INFORMATION7,
2626 p_new_AEI_INFORMATION7,
2627 p_effective_date
2628 );
2629 --
2630 pay_continuous_calc.event_update(p_business_group_id,
2631 p_legislation_code,
2632 'PER_ASSIGNMENT_EXTRA_INFO',
2633 'AEI_INFORMATION8',
2634 p_old_AEI_INFORMATION8,
2635 p_new_AEI_INFORMATION8,
2636 p_effective_date
2637 );
2638 --
2639 pay_continuous_calc.event_update(p_business_group_id,
2640 p_legislation_code,
2641 'PER_ASSIGNMENT_EXTRA_INFO',
2642 'AEI_INFORMATION9',
2643 p_old_AEI_INFORMATION9,
2644 p_new_AEI_INFORMATION9,
2645 p_effective_date
2646 );
2647 --
2648 pay_continuous_calc.event_update(p_business_group_id,
2649 p_legislation_code,
2650 'PER_ASSIGNMENT_EXTRA_INFO',
2651 'AEI_INFORMATION_CATEGORY',
2652 p_old_AEI_INFORMATION_CATEGORY,
2653 p_new_AEI_INFORMATION_CATEGORY,
2654 p_effective_date
2655 );
2656 --
2657 pay_continuous_calc.event_update(p_business_group_id,
2658 p_legislation_code,
2659 'PER_ASSIGNMENT_EXTRA_INFO',
2660 'ASSIGNMENT_EXTRA_INFO_ID',
2661 p_old_ASSIGNMENT_EXTRA_INFO_ID,
2662 p_new_ASSIGNMENT_EXTRA_INFO_ID,
2663 p_effective_date
2664 );
2665 --
2666 pay_continuous_calc.event_update(p_business_group_id,
2667 p_legislation_code,
2668 'PER_ASSIGNMENT_EXTRA_INFO',
2669 'ASSIGNMENT_ID',
2670 p_old_ASSIGNMENT_ID,
2671 p_new_ASSIGNMENT_ID,
2672 p_effective_date
2673 );
2674 --
2675 pay_continuous_calc.event_update(p_business_group_id,
2676 p_legislation_code,
2677 'PER_ASSIGNMENT_EXTRA_INFO',
2678 'INFORMATION_TYPE',
2679 p_old_INFORMATION_TYPE,
2680 p_new_INFORMATION_TYPE,
2681 p_effective_date
2682 );
2683 --
2684 /* Now call the API for the affected assignments */
2685 declare
2686 l_process_event_id number;
2687 l_object_version_number number;
2688 cnt number;
2689 begin
2690 if (pay_continuous_calc.g_event_list.sz <> 0) then
2691 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
2692 pay_ppe_api.create_process_event(
2693 p_assignment_id => p_new_assignment_id,
2694 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
2695 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
2696 p_status => 'U',
2697 p_description => pay_continuous_calc.g_event_list.description(cnt),
2698 p_process_event_id => l_process_event_id,
2699 p_object_version_number => l_object_version_number,
2700 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
2701 p_business_group_id => p_business_group_id,
2702 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
2703 p_surrogate_key => p_new_assignment_extra_info_id
2704 );
2705 end loop;
2706 end if;
2707 pay_continuous_calc.g_event_list.sz := 0;
2708 end;
2709 --
2710 end PER_ASSIGNMENT_EXTRA_INFO_aru;
2711 --
2712 /* PER_ASSIGNMENT_EXTRA_INFO_ari */
2713 /* name : PER_ASSIGNMENT_EXTRA_INFO_ari
2714 purpose : This is procedure that records any insert
2715 on assignment extra information.
2716 */
2717 PROCEDURE PER_ASSIGNMENT_EXTRA_INFO_ari( p_business_group_id in number,
2718 p_legislation_code in varchar2,
2719 p_assignment_id in number,
2723 IS
2720 p_assignment_extra_info_id in number,
2721 p_effective_start_date in date
2722 )
2724 --
2725 l_process_event_id number;
2726 l_object_version_number number;
2727 l_proc varchar2(240) := g_package||'.PER_ASSIGNMENT_EXTRA_INFO_ari';
2728 --
2729 BEGIN
2730 --
2731 hr_utility.set_location(l_proc, 10);
2732 /* If the continuous calc is overriden then do nothing */
2733 if (pay_continuous_calc.g_override_cc = TRUE) then
2734 return;
2735 end if;
2736 --
2737 pay_continuous_calc.event_update(p_business_group_id,
2738 p_legislation_code,
2739 'PER_ASSIGNMENT_EXTRA_INFO',
2740 NULL,
2741 NULL,
2742 NULL,
2743 p_effective_start_date,
2744 p_effective_start_date,
2745 'I'
2746 );
2747 /* Now call the API for the affected assignments */
2748 DECLARE
2749 cnt number;
2750 l_process_event_id number;
2751 l_object_version_number number;
2752 BEGIN
2753 IF (pay_continuous_calc.g_event_list.sz <> 0) THEN
2754 --
2755 FOR cnt in 1..pay_continuous_calc.g_event_list.sz LOOP
2756 --
2757 pay_ppe_api.create_process_event(
2758 p_assignment_id => p_assignment_id,
2759 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
2760 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
2761 p_status => 'U',
2762 p_description => pay_continuous_calc.g_event_list.description(cnt),
2763 p_process_event_id => l_process_event_id,
2764 p_object_version_number => l_object_version_number,
2765 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
2766 p_business_group_id => p_business_group_id,
2767 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
2768 p_surrogate_key => p_assignment_extra_info_id);
2769 --
2770 END LOOP;
2771 --
2772 END IF;
2773 --
2774 pay_continuous_calc.g_event_list.sz := 0;
2775 --
2776 END;
2777 --
2778 hr_utility.set_location(l_proc, 900);
2779 --
2780 END PER_ASSIGNMENT_EXTRA_INFO_ari;
2781 --
2782 /* name : PER_ASSIGNMENT_EXTRA_INFO_ard
2783 purpose : This is procedure that records any deletes
2784 on PER_ASSIGNMENT_EXTRA_INFO.
2785 */
2786 procedure PER_ASSIGNMENT_EXTRA_INFO_ard(
2787 p_business_group_id in number,
2788 p_legislation_code in varchar2,
2789 p_assignment_id in number,
2790 p_effective_start_date in date,
2791 p_assignment_extra_info_id in number
2792 )
2793 is
2794 --
2795 cursor asgcur (p_person_id number) is
2796 select distinct assignment_id
2797 from per_all_assignments_f
2798 where person_id = p_person_id;
2799 --
2800 l_process_event_id number;
2801 l_object_version_number number;
2802 l_proc varchar2(240) := g_package||'.PER_ASSIGNMENT_EXTRA_INFO_ard';
2803 begin
2804 hr_utility.set_location(l_proc, 10);
2805 /* If the continuous calc is overriden then do nothing */
2806 if (pay_continuous_calc.g_override_cc = TRUE) then
2807 return;
2808 end if;
2809 --
2810 -- Date column notional as this is a non-datetrack table
2811 -- See pycodtrg.ldt to see which value is used as 'effective_start_date'
2812 pay_continuous_calc.event_update(p_business_group_id,
2813 p_legislation_code,
2814 'PER_ASSIGNMENT_EXTRA_INFO',
2815 NULL,
2816 NULL,
2817 NULL,
2818 p_effective_start_date,
2819 p_effective_start_date,
2820 'D'
2821 );
2822 /* Now call the API for the affected assignments */
2823 declare
2824 cnt number;
2825 l_process_event_id number;
2826 l_object_version_number number;
2827 begin
2828 if (pay_continuous_calc.g_event_list.sz <> 0) then
2829 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
2830 pay_ppe_api.create_process_event(
2831 p_assignment_id => p_assignment_id,
2832 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
2833 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
2834 p_status => 'U',
2835 p_description => pay_continuous_calc.g_event_list.description(cnt),
2836 p_process_event_id => l_process_event_id,
2837 p_object_version_number => l_object_version_number,
2838 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
2842 );
2839 p_surrogate_key => p_assignment_extra_info_id,
2840 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
2841 p_business_group_id => p_business_group_id
2843 --
2844 END LOOP;
2845 --
2846 END IF;
2847 --
2848 pay_continuous_calc.g_event_list.sz := 0;
2849 --
2850 END;
2851 --
2852 hr_utility.set_location(l_proc, 900);
2853 --
2854 END PER_ASSIGNMENT_EXTRA_INFO_ard;
2855 --
2856 /* name : per_periods_of_placement_aru
2857 purpose : This is the procedure that records any updates
2858 on per_periods_of_placement.
2859 */
2860 procedure PER_PERIODS_OF_PLACEMENT_aru(
2861 p_business_group_id in number,
2862 p_legislation_code in varchar2,
2863 p_effective_date in date,
2864 p_old_ACTUAL_TERMINATION_DATE in DATE,
2865 p_new_ACTUAL_TERMINATION_DATE in DATE,
2866 p_old_ATTRIBUTE1 in VARCHAR2,
2867 p_new_ATTRIBUTE1 in VARCHAR2,
2868 p_old_ATTRIBUTE10 in VARCHAR2,
2869 p_new_ATTRIBUTE10 in VARCHAR2,
2870 p_old_ATTRIBUTE11 in VARCHAR2,
2871 p_new_ATTRIBUTE11 in VARCHAR2,
2872 p_old_ATTRIBUTE12 in VARCHAR2,
2873 p_new_ATTRIBUTE12 in VARCHAR2,
2874 p_old_ATTRIBUTE13 in VARCHAR2,
2875 p_new_ATTRIBUTE13 in VARCHAR2,
2876 p_old_ATTRIBUTE14 in VARCHAR2,
2877 p_new_ATTRIBUTE14 in VARCHAR2,
2878 p_old_ATTRIBUTE15 in VARCHAR2,
2879 p_new_ATTRIBUTE15 in VARCHAR2,
2880 p_old_ATTRIBUTE16 in VARCHAR2,
2881 p_new_ATTRIBUTE16 in VARCHAR2,
2882 p_old_ATTRIBUTE17 in VARCHAR2,
2883 p_new_ATTRIBUTE17 in VARCHAR2,
2884 p_old_ATTRIBUTE18 in VARCHAR2,
2885 p_new_ATTRIBUTE18 in VARCHAR2,
2886 p_old_ATTRIBUTE19 in VARCHAR2,
2887 p_new_ATTRIBUTE19 in VARCHAR2,
2888 p_old_ATTRIBUTE2 in VARCHAR2,
2889 p_new_ATTRIBUTE2 in VARCHAR2,
2890 p_old_ATTRIBUTE20 in VARCHAR2,
2891 p_new_ATTRIBUTE20 in VARCHAR2,
2892 p_old_ATTRIBUTE21 in VARCHAR2,
2893 p_new_ATTRIBUTE21 in VARCHAR2,
2894 p_old_ATTRIBUTE22 in VARCHAR2,
2895 p_new_ATTRIBUTE22 in VARCHAR2,
2896 p_old_ATTRIBUTE23 in VARCHAR2,
2897 p_new_ATTRIBUTE23 in VARCHAR2,
2898 p_old_ATTRIBUTE24 in VARCHAR2,
2899 p_new_ATTRIBUTE24 in VARCHAR2,
2900 p_old_ATTRIBUTE25 in VARCHAR2,
2901 p_new_ATTRIBUTE25 in VARCHAR2,
2902 p_old_ATTRIBUTE26 in VARCHAR2,
2903 p_new_ATTRIBUTE26 in VARCHAR2,
2904 p_old_ATTRIBUTE27 in VARCHAR2,
2905 p_new_ATTRIBUTE27 in VARCHAR2,
2906 p_old_ATTRIBUTE28 in VARCHAR2,
2907 p_new_ATTRIBUTE28 in VARCHAR2,
2908 p_old_ATTRIBUTE29 in VARCHAR2,
2909 p_new_ATTRIBUTE29 in VARCHAR2,
2910 p_old_ATTRIBUTE3 in VARCHAR2,
2911 p_new_ATTRIBUTE3 in VARCHAR2,
2912 p_old_ATTRIBUTE30 in VARCHAR2,
2913 p_new_ATTRIBUTE30 in VARCHAR2,
2914 p_old_ATTRIBUTE4 in VARCHAR2,
2915 p_new_ATTRIBUTE4 in VARCHAR2,
2916 p_old_ATTRIBUTE5 in VARCHAR2,
2917 p_new_ATTRIBUTE5 in VARCHAR2,
2918 p_old_ATTRIBUTE6 in VARCHAR2,
2919 p_new_ATTRIBUTE6 in VARCHAR2,
2920 p_old_ATTRIBUTE7 in VARCHAR2,
2921 p_new_ATTRIBUTE7 in VARCHAR2,
2922 p_old_ATTRIBUTE8 in VARCHAR2,
2923 p_new_ATTRIBUTE8 in VARCHAR2,
2924 p_old_ATTRIBUTE9 in VARCHAR2,
2925 p_new_ATTRIBUTE9 in VARCHAR2,
2926 p_old_ATTRIBUTE_CATEGORY in VARCHAR2,
2927 p_new_ATTRIBUTE_CATEGORY in VARCHAR2,
2928 p_old_BUSINESS_GROUP_ID in NUMBER,
2929 p_new_BUSINESS_GROUP_ID in NUMBER,
2930 p_old_FINAL_PROCESS_DATE in DATE,
2931 p_new_FINAL_PROCESS_DATE in DATE,
2932 p_old_INFORMATION1 in VARCHAR2,
2933 p_new_INFORMATION1 in VARCHAR2,
2934 p_old_INFORMATION10 in VARCHAR2,
2935 p_new_INFORMATION10 in VARCHAR2,
2936 p_old_INFORMATION11 in VARCHAR2,
2937 p_new_INFORMATION11 in VARCHAR2,
2938 p_old_INFORMATION12 in VARCHAR2,
2939 p_new_INFORMATION12 in VARCHAR2,
2940 p_old_INFORMATION13 in VARCHAR2,
2941 p_new_INFORMATION13 in VARCHAR2,
2942 p_old_INFORMATION14 in VARCHAR2,
2943 p_new_INFORMATION14 in VARCHAR2,
2944 p_old_INFORMATION15 in VARCHAR2,
2945 p_new_INFORMATION15 in VARCHAR2,
2946 p_old_INFORMATION16 in VARCHAR2,
2947 p_new_INFORMATION16 in VARCHAR2,
2948 p_old_INFORMATION17 in VARCHAR2,
2949 p_new_INFORMATION17 in VARCHAR2,
2950 p_old_INFORMATION18 in VARCHAR2,
2951 p_new_INFORMATION18 in VARCHAR2,
2952 p_old_INFORMATION19 in VARCHAR2,
2953 p_new_INFORMATION19 in VARCHAR2,
2954 p_old_INFORMATION2 in VARCHAR2,
2955 p_new_INFORMATION2 in VARCHAR2,
2956 p_old_INFORMATION20 in VARCHAR2,
2957 p_new_INFORMATION20 in VARCHAR2,
2958 p_old_INFORMATION21 in VARCHAR2,
2959 p_new_INFORMATION21 in VARCHAR2,
2960 p_old_INFORMATION22 in VARCHAR2,
2961 p_new_INFORMATION22 in VARCHAR2,
2962 p_old_INFORMATION23 in VARCHAR2,
2963 p_new_INFORMATION23 in VARCHAR2,
2964 p_old_INFORMATION24 in VARCHAR2,
2965 p_new_INFORMATION24 in VARCHAR2,
2966 p_old_INFORMATION25 in VARCHAR2,
2967 p_new_INFORMATION25 in VARCHAR2,
2968 p_old_INFORMATION26 in VARCHAR2,
2969 p_new_INFORMATION26 in VARCHAR2,
2970 p_old_INFORMATION27 in VARCHAR2,
2971 p_new_INFORMATION27 in VARCHAR2,
2972 p_old_INFORMATION28 in VARCHAR2,
2973 p_new_INFORMATION28 in VARCHAR2,
2974 p_old_INFORMATION29 in VARCHAR2,
2978 p_old_INFORMATION30 in VARCHAR2,
2975 p_new_INFORMATION29 in VARCHAR2,
2976 p_old_INFORMATION3 in VARCHAR2,
2977 p_new_INFORMATION3 in VARCHAR2,
2979 p_new_INFORMATION30 in VARCHAR2,
2980 p_old_INFORMATION4 in VARCHAR2,
2981 p_new_INFORMATION4 in VARCHAR2,
2982 p_old_INFORMATION5 in VARCHAR2,
2983 p_new_INFORMATION5 in VARCHAR2,
2984 p_old_INFORMATION6 in VARCHAR2,
2985 p_new_INFORMATION6 in VARCHAR2,
2986 p_old_INFORMATION7 in VARCHAR2,
2987 p_new_INFORMATION7 in VARCHAR2,
2988 p_old_INFORMATION8 in VARCHAR2,
2989 p_new_INFORMATION8 in VARCHAR2,
2990 p_old_INFORMATION9 in VARCHAR2,
2991 p_new_INFORMATION9 in VARCHAR2,
2992 p_old_INFORMATION_CATEGORY in VARCHAR2,
2993 p_new_INFORMATION_CATEGORY in VARCHAR2,
2994 p_old_LAST_STANDARD_PROCESS_DA in DATE,
2995 p_new_LAST_STANDARD_PROCESS_DA in DATE,
2996 p_old_PERIOD_OF_PLACEMENT_ID in NUMBER,
2997 p_new_PERIOD_OF_PLACEMENT_ID in NUMBER,
2998 p_old_PERSON_ID in NUMBER,
2999 p_new_PERSON_ID in NUMBER,
3000 p_old_PROJECTED_TERMINATION_DA in DATE,
3001 p_new_PROJECTED_TERMINATION_DA in DATE,
3002 p_old_TERMINATION_REASON in VARCHAR2,
3003 p_new_TERMINATION_REASON in VARCHAR2,
3004 p_old_DATE_START in DATE,
3005 p_new_DATE_START in DATE
3006 )
3007 is
3008 --
3009 cursor asgcur (p_person_id number) is
3010 select distinct assignment_id
3011 from per_all_assignments_f
3012 where person_id = p_person_id;
3013 l_proc varchar2(240);
3014
3015 begin
3016 /* If the continuous calc is overriden then do nothing */
3017 if (pay_continuous_calc.g_override_cc = TRUE) then
3018 return;
3019 end if;
3020 --
3021 l_proc := g_package||'.per_periods_of_service_aru';
3022 --
3023 /* If the dates havent changed it must be a correction */
3024 --
3025 -- We are assuming always a CORRECTION as non-datetracked table!
3026 --
3027 pay_continuous_calc.event_update(p_business_group_id,
3028 p_legislation_code,
3029 'PER_PERIODS_OF_PLACEMENT',
3030 'ACTUAL_TERMINATION_DATE',
3031 p_old_ACTUAL_TERMINATION_DATE,
3032 p_new_ACTUAL_TERMINATION_DATE,
3033 p_effective_date
3034 );
3035 --
3036 pay_continuous_calc.event_update(p_business_group_id,
3037 p_legislation_code,
3038 'PER_PERIODS_OF_PLACEMENT',
3039 'ATTRIBUTE1',
3040 p_old_ATTRIBUTE1,
3041 p_new_ATTRIBUTE1,
3042 p_effective_date
3043 );
3044 --
3045 pay_continuous_calc.event_update(p_business_group_id,
3046 p_legislation_code,
3047 'PER_PERIODS_OF_PLACEMENT',
3048 'ATTRIBUTE10',
3049 p_old_ATTRIBUTE10,
3050 p_new_ATTRIBUTE10,
3051 p_effective_date
3052 );
3053 --
3054 pay_continuous_calc.event_update(p_business_group_id,
3055 p_legislation_code,
3056 'PER_PERIODS_OF_PLACEMENT',
3057 'ATTRIBUTE11',
3058 p_old_ATTRIBUTE11,
3059 p_new_ATTRIBUTE11,
3060 p_effective_date
3061 );
3062 --
3063 pay_continuous_calc.event_update(p_business_group_id,
3064 p_legislation_code,
3065 'PER_PERIODS_OF_PLACEMENT',
3066 'ATTRIBUTE12',
3067 p_old_ATTRIBUTE12,
3068 p_new_ATTRIBUTE12,
3069 p_effective_date
3070 );
3071 --
3072 pay_continuous_calc.event_update(p_business_group_id,
3073 p_legislation_code,
3074 'PER_PERIODS_OF_PLACEMENT',
3075 'ATTRIBUTE13',
3076 p_old_ATTRIBUTE13,
3077 p_new_ATTRIBUTE13,
3078 p_effective_date
3079 );
3080 --
3081 pay_continuous_calc.event_update(p_business_group_id,
3082 p_legislation_code,
3083 'PER_PERIODS_OF_PLACEMENT',
3084 'ATTRIBUTE14',
3085 p_old_ATTRIBUTE14,
3086 p_new_ATTRIBUTE14,
3087 p_effective_date
3088 );
3089 --
3090 pay_continuous_calc.event_update(p_business_group_id,
3091 p_legislation_code,
3092 'PER_PERIODS_OF_PLACEMENT',
3093 'ATTRIBUTE15',
3097 );
3094 p_old_ATTRIBUTE15,
3095 p_new_ATTRIBUTE15,
3096 p_effective_date
3098 --
3099 pay_continuous_calc.event_update(p_business_group_id,
3100 p_legislation_code,
3101 'PER_PERIODS_OF_PLACEMENT',
3102 'ATTRIBUTE16',
3103 p_old_ATTRIBUTE16,
3104 p_new_ATTRIBUTE16,
3105 p_effective_date
3106 );
3107 --
3108 pay_continuous_calc.event_update(p_business_group_id,
3109 p_legislation_code,
3110 'PER_PERIODS_OF_PLACEMENT',
3111 'ATTRIBUTE17',
3112 p_old_ATTRIBUTE17,
3113 p_new_ATTRIBUTE17,
3114 p_effective_date
3115 );
3116 --
3117 pay_continuous_calc.event_update(p_business_group_id,
3118 p_legislation_code,
3119 'PER_PERIODS_OF_PLACEMENT',
3120 'ATTRIBUTE18',
3121 p_old_ATTRIBUTE18,
3122 p_new_ATTRIBUTE18,
3123 p_effective_date
3124 );
3125 --
3126 pay_continuous_calc.event_update(p_business_group_id,
3127 p_legislation_code,
3128 'PER_PERIODS_OF_PLACEMENT',
3129 'ATTRIBUTE19',
3130 p_old_ATTRIBUTE19,
3131 p_new_ATTRIBUTE19,
3132 p_effective_date
3133 );
3134 --
3135 pay_continuous_calc.event_update(p_business_group_id,
3136 p_legislation_code,
3137 'PER_PERIODS_OF_PLACEMENT',
3138 'ATTRIBUTE2',
3139 p_old_ATTRIBUTE2,
3140 p_new_ATTRIBUTE2,
3141 p_effective_date
3142 );
3143 --
3144 pay_continuous_calc.event_update(p_business_group_id,
3145 p_legislation_code,
3146 'PER_PERIODS_OF_PLACEMENT',
3147 'ATTRIBUTE20',
3148 p_old_ATTRIBUTE20,
3149 p_new_ATTRIBUTE20,
3150 p_effective_date
3151 );
3152 --
3153 pay_continuous_calc.event_update(p_business_group_id,
3154 p_legislation_code,
3155 'PER_PERIODS_OF_PLACEMENT',
3156 'ATTRIBUTE21',
3157 p_old_ATTRIBUTE21,
3158 p_new_ATTRIBUTE21,
3159 p_effective_date
3160 );
3161 --
3162 pay_continuous_calc.event_update(p_business_group_id,
3163 p_legislation_code,
3164 'PER_PERIODS_OF_PLACEMENT',
3165 'ATTRIBUTE22',
3166 p_old_ATTRIBUTE22,
3167 p_new_ATTRIBUTE22,
3168 p_effective_date
3169 );
3170 --
3171 pay_continuous_calc.event_update(p_business_group_id,
3172 p_legislation_code,
3173 'PER_PERIODS_OF_PLACEMENT',
3174 'ATTRIBUTE23',
3175 p_old_ATTRIBUTE23,
3176 p_new_ATTRIBUTE23,
3177 p_effective_date
3178 );
3179 --
3180 pay_continuous_calc.event_update(p_business_group_id,
3181 p_legislation_code,
3182 'PER_PERIODS_OF_PLACEMENT',
3183 'ATTRIBUTE24',
3184 p_old_ATTRIBUTE24,
3185 p_new_ATTRIBUTE24,
3186 p_effective_date
3187 );
3188 --
3189 pay_continuous_calc.event_update(p_business_group_id,
3190 p_legislation_code,
3191 'PER_PERIODS_OF_PLACEMENT',
3192 'ATTRIBUTE25',
3193 p_old_ATTRIBUTE25,
3194 p_new_ATTRIBUTE25,
3195 p_effective_date
3196 );
3197 --
3198 pay_continuous_calc.event_update(p_business_group_id,
3199 p_legislation_code,
3200 'PER_PERIODS_OF_PLACEMENT',
3204 p_effective_date
3201 'ATTRIBUTE26',
3202 p_old_ATTRIBUTE26,
3203 p_new_ATTRIBUTE26,
3205 );
3206 --
3207 pay_continuous_calc.event_update(p_business_group_id,
3208 p_legislation_code,
3209 'PER_PERIODS_OF_PLACEMENT',
3210 'ATTRIBUTE27',
3211 p_old_ATTRIBUTE27,
3212 p_new_ATTRIBUTE27,
3213 p_effective_date
3214 );
3215 --
3216 pay_continuous_calc.event_update(p_business_group_id,
3217 p_legislation_code,
3218 'PER_PERIODS_OF_PLACEMENT',
3219 'ATTRIBUTE28',
3220 p_old_ATTRIBUTE28,
3221 p_new_ATTRIBUTE28,
3222 p_effective_date
3223 );
3224 --
3225 pay_continuous_calc.event_update(p_business_group_id,
3226 p_legislation_code,
3227 'PER_PERIODS_OF_PLACEMENT',
3228 'ATTRIBUTE29',
3229 p_old_ATTRIBUTE29,
3230 p_new_ATTRIBUTE29,
3231 p_effective_date
3232 );
3233 --
3234 pay_continuous_calc.event_update(p_business_group_id,
3235 p_legislation_code,
3236 'PER_PERIODS_OF_PLACEMENT',
3237 'ATTRIBUTE3',
3238 p_old_ATTRIBUTE3,
3239 p_new_ATTRIBUTE3,
3240 p_effective_date
3241 );
3242 --
3243 pay_continuous_calc.event_update(p_business_group_id,
3244 p_legislation_code,
3245 'PER_PERIODS_OF_PLACEMENT',
3246 'ATTRIBUTE30',
3247 p_old_ATTRIBUTE30,
3248 p_new_ATTRIBUTE30,
3249 p_effective_date
3250 );
3251 --
3252 pay_continuous_calc.event_update(p_business_group_id,
3253 p_legislation_code,
3254 'PER_PERIODS_OF_PLACEMENT',
3255 'ATTRIBUTE4',
3256 p_old_ATTRIBUTE4,
3257 p_new_ATTRIBUTE4,
3258 p_effective_date
3259 );
3260 --
3261 pay_continuous_calc.event_update(p_business_group_id,
3262 p_legislation_code,
3263 'PER_PERIODS_OF_PLACEMENT',
3264 'ATTRIBUTE5',
3265 p_old_ATTRIBUTE5,
3266 p_new_ATTRIBUTE5,
3267 p_effective_date
3268 );
3269 --
3270 pay_continuous_calc.event_update(p_business_group_id,
3271 p_legislation_code,
3272 'PER_PERIODS_OF_PLACEMENT',
3273 'ATTRIBUTE6',
3274 p_old_ATTRIBUTE6,
3275 p_new_ATTRIBUTE6,
3276 p_effective_date
3277 );
3278 --
3279 pay_continuous_calc.event_update(p_business_group_id,
3280 p_legislation_code,
3281 'PER_PERIODS_OF_PLACEMENT',
3282 'ATTRIBUTE7',
3283 p_old_ATTRIBUTE7,
3284 p_new_ATTRIBUTE7,
3285 p_effective_date
3286 );
3287 --
3288 pay_continuous_calc.event_update(p_business_group_id,
3289 p_legislation_code,
3290 'PER_PERIODS_OF_PLACEMENT',
3291 'ATTRIBUTE8',
3292 p_old_ATTRIBUTE8,
3293 p_new_ATTRIBUTE8,
3294 p_effective_date
3295 );
3296 --
3297 pay_continuous_calc.event_update(p_business_group_id,
3298 p_legislation_code,
3299 'PER_PERIODS_OF_PLACEMENT',
3300 'ATTRIBUTE9',
3301 p_old_ATTRIBUTE9,
3302 p_new_ATTRIBUTE9,
3303 p_effective_date
3304 );
3305 --
3306 pay_continuous_calc.event_update(p_business_group_id,
3310 p_old_ATTRIBUTE_CATEGORY,
3307 p_legislation_code,
3308 'PER_PERIODS_OF_PLACEMENT',
3309 'ATTRIBUTE_CATEGORY',
3311 p_new_ATTRIBUTE_CATEGORY,
3312 p_effective_date
3313 );
3314 --
3315 pay_continuous_calc.event_update(p_business_group_id,
3316 p_legislation_code,
3317 'PER_PERIODS_OF_PLACEMENT',
3318 'BUSINESS_GROUP_ID',
3319 p_old_BUSINESS_GROUP_ID,
3320 p_new_BUSINESS_GROUP_ID,
3321 p_effective_date
3322 );
3323 --
3324 pay_continuous_calc.event_update(p_business_group_id,
3325 p_legislation_code,
3326 'PER_PERIODS_OF_PLACEMENT',
3327 'FINAL_PROCESS_DATE',
3328 p_old_FINAL_PROCESS_DATE,
3329 p_new_FINAL_PROCESS_DATE,
3330 p_effective_date
3331 );
3332 --
3333 pay_continuous_calc.event_update(p_business_group_id,
3334 p_legislation_code,
3335 'PER_PERIODS_OF_PLACEMENT',
3336 'INFORMATION1',
3337 p_old_INFORMATION1,
3338 p_new_INFORMATION1,
3339 p_effective_date
3340 );
3341 --
3342 pay_continuous_calc.event_update(p_business_group_id,
3343 p_legislation_code,
3344 'PER_PERIODS_OF_PLACEMENT',
3345 'INFORMATION10',
3346 p_old_INFORMATION10,
3347 p_new_INFORMATION10,
3348 p_effective_date
3349 );
3350 --
3351 pay_continuous_calc.event_update(p_business_group_id,
3352 p_legislation_code,
3353 'PER_PERIODS_OF_PLACEMENT',
3354 'INFORMATION11',
3355 p_old_INFORMATION11,
3356 p_new_INFORMATION11,
3357 p_effective_date
3358 );
3359 --
3360 pay_continuous_calc.event_update(p_business_group_id,
3361 p_legislation_code,
3362 'PER_PERIODS_OF_PLACEMENT',
3363 'INFORMATION12',
3364 p_old_INFORMATION12,
3365 p_new_INFORMATION12,
3366 p_effective_date
3367 );
3368 --
3369 pay_continuous_calc.event_update(p_business_group_id,
3370 p_legislation_code,
3371 'PER_PERIODS_OF_PLACEMENT',
3372 'INFORMATION13',
3373 p_old_INFORMATION13,
3374 p_new_INFORMATION13,
3375 p_effective_date
3376 );
3377 --
3378 pay_continuous_calc.event_update(p_business_group_id,
3379 p_legislation_code,
3380 'PER_PERIODS_OF_PLACEMENT',
3381 'INFORMATION14',
3382 p_old_INFORMATION14,
3383 p_new_INFORMATION14,
3384 p_effective_date
3385 );
3386 --
3387 pay_continuous_calc.event_update(p_business_group_id,
3388 p_legislation_code,
3389 'PER_PERIODS_OF_PLACEMENT',
3390 'INFORMATION15',
3391 p_old_INFORMATION15,
3392 p_new_INFORMATION15,
3393 p_effective_date
3394 );
3395 --
3396 pay_continuous_calc.event_update(p_business_group_id,
3397 p_legislation_code,
3398 'PER_PERIODS_OF_PLACEMENT',
3399 'INFORMATION16',
3400 p_old_INFORMATION16,
3401 p_new_INFORMATION16,
3402 p_effective_date
3403 );
3404 --
3405 pay_continuous_calc.event_update(p_business_group_id,
3406 p_legislation_code,
3407 'PER_PERIODS_OF_PLACEMENT',
3408 'INFORMATION17',
3409 p_old_INFORMATION17,
3413 --
3410 p_new_INFORMATION17,
3411 p_effective_date
3412 );
3414 pay_continuous_calc.event_update(p_business_group_id,
3415 p_legislation_code,
3416 'PER_PERIODS_OF_PLACEMENT',
3417 'INFORMATION18',
3418 p_old_INFORMATION18,
3419 p_new_INFORMATION18,
3420 p_effective_date
3421 );
3422 --
3423 pay_continuous_calc.event_update(p_business_group_id,
3424 p_legislation_code,
3425 'PER_PERIODS_OF_PLACEMENT',
3426 'INFORMATION19',
3427 p_old_INFORMATION19,
3428 p_new_INFORMATION19,
3429 p_effective_date
3430 );
3431 --
3432 pay_continuous_calc.event_update(p_business_group_id,
3433 p_legislation_code,
3434 'PER_PERIODS_OF_PLACEMENT',
3435 'INFORMATION2',
3436 p_old_INFORMATION2,
3437 p_new_INFORMATION2,
3438 p_effective_date
3439 );
3440 --
3441 pay_continuous_calc.event_update(p_business_group_id,
3442 p_legislation_code,
3443 'PER_PERIODS_OF_PLACEMENT',
3444 'INFORMATION20',
3445 p_old_INFORMATION20,
3446 p_new_INFORMATION20,
3447 p_effective_date
3448 );
3449 --
3450 pay_continuous_calc.event_update(p_business_group_id,
3451 p_legislation_code,
3452 'PER_PERIODS_OF_PLACEMENT',
3453 'INFORMATION21',
3454 p_old_INFORMATION21,
3455 p_new_INFORMATION21,
3456 p_effective_date
3457 );
3458 --
3459 pay_continuous_calc.event_update(p_business_group_id,
3460 p_legislation_code,
3461 'PER_PERIODS_OF_PLACEMENT',
3462 'INFORMATION22',
3463 p_old_INFORMATION22,
3464 p_new_INFORMATION22,
3465 p_effective_date
3466 );
3467 --
3468 pay_continuous_calc.event_update(p_business_group_id,
3469 p_legislation_code,
3470 'PER_PERIODS_OF_PLACEMENT',
3471 'INFORMATION23',
3472 p_old_INFORMATION23,
3473 p_new_INFORMATION23,
3474 p_effective_date
3475 );
3476 --
3477 pay_continuous_calc.event_update(p_business_group_id,
3478 p_legislation_code,
3479 'PER_PERIODS_OF_PLACEMENT',
3480 'INFORMATION24',
3481 p_old_INFORMATION24,
3482 p_new_INFORMATION24,
3483 p_effective_date
3484 );
3485 --
3486 pay_continuous_calc.event_update(p_business_group_id,
3487 p_legislation_code,
3488 'PER_PERIODS_OF_PLACEMENT',
3489 'INFORMATION25',
3490 p_old_INFORMATION25,
3491 p_new_INFORMATION25,
3492 p_effective_date
3493 );
3494 --
3495 pay_continuous_calc.event_update(p_business_group_id,
3496 p_legislation_code,
3497 'PER_PERIODS_OF_PLACEMENT',
3498 'INFORMATION26',
3499 p_old_INFORMATION26,
3500 p_new_INFORMATION26,
3501 p_effective_date
3502 );
3503 --
3504 pay_continuous_calc.event_update(p_business_group_id,
3505 p_legislation_code,
3506 'PER_PERIODS_OF_PLACEMENT',
3507 'INFORMATION27',
3508 p_old_INFORMATION27,
3509 p_new_INFORMATION27,
3510 p_effective_date
3511 );
3512 --
3513 pay_continuous_calc.event_update(p_business_group_id,
3514 p_legislation_code,
3518 p_new_INFORMATION28,
3515 'PER_PERIODS_OF_PLACEMENT',
3516 'INFORMATION28',
3517 p_old_INFORMATION28,
3519 p_effective_date
3520 );
3521 --
3522 pay_continuous_calc.event_update(p_business_group_id,
3523 p_legislation_code,
3524 'PER_PERIODS_OF_PLACEMENT',
3525 'INFORMATION29',
3526 p_old_INFORMATION29,
3527 p_new_INFORMATION29,
3528 p_effective_date
3529 );
3530 --
3531 pay_continuous_calc.event_update(p_business_group_id,
3532 p_legislation_code,
3533 'PER_PERIODS_OF_PLACEMENT',
3534 'INFORMATION3',
3535 p_old_INFORMATION3,
3536 p_new_INFORMATION3,
3537 p_effective_date
3538 );
3539 --
3540 pay_continuous_calc.event_update(p_business_group_id,
3541 p_legislation_code,
3542 'PER_PERIODS_OF_PLACEMENT',
3543 'INFORMATION30',
3544 p_old_INFORMATION30,
3545 p_new_INFORMATION30,
3546 p_effective_date
3547 );
3548 --
3549 pay_continuous_calc.event_update(p_business_group_id,
3550 p_legislation_code,
3551 'PER_PERIODS_OF_PLACEMENT',
3552 'INFORMATION4',
3553 p_old_INFORMATION4,
3554 p_new_INFORMATION4,
3555 p_effective_date
3556 );
3557 --
3558 pay_continuous_calc.event_update(p_business_group_id,
3559 p_legislation_code,
3560 'PER_PERIODS_OF_PLACEMENT',
3561 'INFORMATION5',
3562 p_old_INFORMATION5,
3563 p_new_INFORMATION5,
3564 p_effective_date
3565 );
3566 --
3567 pay_continuous_calc.event_update(p_business_group_id,
3568 p_legislation_code,
3569 'PER_PERIODS_OF_PLACEMENT',
3570 'INFORMATION6',
3571 p_old_INFORMATION6,
3572 p_new_INFORMATION6,
3573 p_effective_date
3574 );
3575 --
3576 pay_continuous_calc.event_update(p_business_group_id,
3577 p_legislation_code,
3578 'PER_PERIODS_OF_PLACEMENT',
3579 'INFORMATION7',
3580 p_old_INFORMATION7,
3581 p_new_INFORMATION7,
3582 p_effective_date
3583 );
3584 --
3585 pay_continuous_calc.event_update(p_business_group_id,
3586 p_legislation_code,
3587 'PER_PERIODS_OF_PLACEMENT',
3588 'INFORMATION8',
3589 p_old_INFORMATION8,
3590 p_new_INFORMATION8,
3591 p_effective_date
3592 );
3593 --
3594 pay_continuous_calc.event_update(p_business_group_id,
3595 p_legislation_code,
3596 'PER_PERIODS_OF_PLACEMENT',
3597 'INFORMATION9',
3598 p_old_INFORMATION9,
3599 p_new_INFORMATION9,
3600 p_effective_date
3601 );
3602 --
3603 pay_continuous_calc.event_update(p_business_group_id,
3604 p_legislation_code,
3605 'PER_PERIODS_OF_PLACEMENT',
3606 'INFORMATION_CATEGORY',
3607 p_old_INFORMATION_CATEGORY,
3608 p_new_INFORMATION_CATEGORY,
3609 p_effective_date
3610 );
3611 --
3612 pay_continuous_calc.event_update(p_business_group_id,
3613 p_legislation_code,
3614 'PER_PERIODS_OF_PLACEMENT',
3615 'LAST_STANDARD_PROCESS_DATE',
3616 p_old_LAST_STANDARD_PROCESS_DA,
3617 p_new_LAST_STANDARD_PROCESS_DA,
3618 p_effective_date
3619 );
3623 'PER_PERIODS_OF_PLACEMENT',
3620 --
3621 pay_continuous_calc.event_update(p_business_group_id,
3622 p_legislation_code,
3624 'PERIOD_OF_PLACEMENT_ID',
3625 p_old_PERIOD_OF_PLACEMENT_ID,
3626 p_new_PERIOD_OF_PLACEMENT_ID,
3627 p_effective_date
3628 );
3629 --
3630 pay_continuous_calc.event_update(p_business_group_id,
3631 p_legislation_code,
3632 'PER_PERIODS_OF_PLACEMENT',
3633 'PERSON_ID',
3634 p_old_PERSON_ID,
3635 p_new_PERSON_ID,
3636 p_effective_date
3637 );
3638 --
3639 pay_continuous_calc.event_update(p_business_group_id,
3640 p_legislation_code,
3641 'PER_PERIODS_OF_PLACEMENT',
3642 'PROJECTED_TERMINATION_DATE',
3643 p_old_PROJECTED_TERMINATION_DA,
3644 p_new_PROJECTED_TERMINATION_DA,
3645 p_effective_date
3646 );
3647 --
3648 pay_continuous_calc.event_update(p_business_group_id,
3649 p_legislation_code,
3650 'PER_PERIODS_OF_PLACEMENT',
3651 'TERMINATION_REASON',
3652 p_old_TERMINATION_REASON,
3653 p_new_TERMINATION_REASON,
3654 p_effective_date
3655 );
3656 --
3657 pay_continuous_calc.event_update(p_business_group_id,
3658 p_legislation_code,
3659 'PER_PERIODS_OF_PLACEMENT',
3660 'DATE_START',
3661 p_old_DATE_START,
3662 p_new_DATE_START,
3663 p_effective_date
3664 );
3665 --
3666 /* Now call the API for the affected assignments */
3667 declare
3668 l_process_event_id number;
3669 l_object_version_number number;
3670 cnt number;
3671 begin
3672 if (pay_continuous_calc.g_event_list.sz <> 0) then
3673 for asgrec in asgcur (p_old_PERSON_ID) loop
3674 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
3675 pay_ppe_api.create_process_event(
3676 p_assignment_id => asgrec.assignment_id,
3677 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
3678 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
3679 p_status => 'U',
3680 p_description => pay_continuous_calc.g_event_list.description(cnt),
3681 p_process_event_id => l_process_event_id,
3682 p_object_version_number => l_object_version_number,
3683 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
3684 p_business_group_id => p_business_group_id,
3685 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
3686 p_surrogate_key => p_new_period_of_placement_id
3687 );
3688 end loop;
3689 end loop;
3690 end if;
3691 pay_continuous_calc.g_event_list.sz := 0;
3692 end;
3693 --
3694 end PER_PERIODS_OF_PLACEMENT_aru;
3695 --
3696 procedure PER_ABSENCE_ATTENDANCES_aru(
3697 p_business_group_id in number,
3698 p_legislation_code in varchar2,
3699 p_effective_date in date,
3700 p_old_ABSENCE_ATTENDANCE_ID in NUMBER,
3701 p_new_ABSENCE_ATTENDANCE_ID in NUMBER,
3702 p_old_PERSON_ID in NUMBER,
3703 p_new_PERSON_ID in NUMBER,
3704 p_old_ABS_ATTENDANCE_REASON_ID in NUMBER,
3705 p_new_ABS_ATTENDANCE_REASON_ID in NUMBER,
3706 p_old_AUTHORISING_PERSON_ID in NUMBER,
3707 p_new_AUTHORISING_PERSON_ID in NUMBER,
3708 p_old_REPLACEMENT_PERSON_ID in NUMBER,
3709 p_new_REPLACEMENT_PERSON_ID in NUMBER,
3710 p_old_PERIOD_OF_INCAPACITY_ID in NUMBER,
3711 p_new_PERIOD_OF_INCAPACITY_ID in NUMBER,
3712 p_old_ABSENCE_DAYS in NUMBER,
3713 p_new_ABSENCE_DAYS in NUMBER,
3714 p_old_ABSENCE_HOURS in NUMBER,
3715 p_new_ABSENCE_HOURS in NUMBER,
3716 p_old_DATE_END in DATE,
3717 p_new_DATE_END in DATE,
3718 p_old_DATE_NOTIFICATION in DATE,
3719 p_new_DATE_NOTIFICATION in DATE,
3720 p_old_DATE_PROJECTED_END in DATE,
3721 p_new_DATE_PROJECTED_END in DATE,
3722 p_old_DATE_PROJECTED_START in DATE,
3723 p_new_DATE_PROJECTED_START in DATE,
3724 p_old_DATE_START in DATE,
3725 p_new_DATE_START in DATE,
3726 p_old_SSP1_ISSUED in VARCHAR2,
3727 p_new_SSP1_ISSUED in VARCHAR2,
3728 p_old_TIME_END in VARCHAR2,
3729 p_new_TIME_END in VARCHAR2,
3730 p_old_TIME_PROJECTED_END in VARCHAR2,
3731 p_new_TIME_PROJECTED_END in VARCHAR2,
3732 p_old_TIME_PROJECTED_START in VARCHAR2,
3733 p_new_TIME_PROJECTED_START in VARCHAR2,
3737 p_new_MATERNITY_ID in NUMBER,
3734 p_old_TIME_START in VARCHAR2,
3735 p_new_TIME_START in VARCHAR2,
3736 p_old_MATERNITY_ID in NUMBER,
3738 p_old_SICKNESS_START_DATE in DATE,
3739 p_new_SICKNESS_START_DATE in DATE,
3740 p_old_SICKNESS_END_DATE in DATE,
3741 p_new_SICKNESS_END_DATE in DATE,
3742 p_old_LINKED_ABSENCE_ID in NUMBER,
3743 p_new_LINKED_ABSENCE_ID in NUMBER,
3744 p_old_ATTRIBUTE1 in VARCHAR2,
3745 p_new_ATTRIBUTE1 in VARCHAR2,
3746 p_old_ATTRIBUTE2 in VARCHAR2,
3747 p_new_ATTRIBUTE2 in VARCHAR2,
3748 p_old_ATTRIBUTE3 in VARCHAR2,
3749 p_new_ATTRIBUTE3 in VARCHAR2,
3750 p_old_ATTRIBUTE4 in VARCHAR2,
3751 p_new_ATTRIBUTE4 in VARCHAR2,
3752 p_old_ATTRIBUTE5 in VARCHAR2,
3753 p_new_ATTRIBUTE5 in VARCHAR2,
3754 p_old_ATTRIBUTE6 in VARCHAR2,
3755 p_new_ATTRIBUTE6 in VARCHAR2,
3756 p_old_ATTRIBUTE7 in VARCHAR2,
3757 p_new_ATTRIBUTE7 in VARCHAR2,
3758 p_old_ATTRIBUTE8 in VARCHAR2,
3759 p_new_ATTRIBUTE8 in VARCHAR2,
3760 p_old_ATTRIBUTE9 in VARCHAR2,
3761 p_new_ATTRIBUTE9 in VARCHAR2,
3762 p_old_ATTRIBUTE10 in VARCHAR2,
3763 p_new_ATTRIBUTE10 in VARCHAR2,
3764 p_old_ATTRIBUTE11 in VARCHAR2,
3765 p_new_ATTRIBUTE11 in VARCHAR2,
3766 p_old_ATTRIBUTE12 in VARCHAR2,
3767 p_new_ATTRIBUTE12 in VARCHAR2,
3768 p_old_ATTRIBUTE13 in VARCHAR2,
3769 p_new_ATTRIBUTE13 in VARCHAR2,
3770 p_old_ATTRIBUTE14 in VARCHAR2,
3771 p_new_ATTRIBUTE14 in VARCHAR2,
3772 p_old_ATTRIBUTE15 in VARCHAR2,
3773 p_new_ATTRIBUTE15 in VARCHAR2,
3774 p_old_ATTRIBUTE16 in VARCHAR2,
3775 p_new_ATTRIBUTE16 in VARCHAR2,
3776 p_old_ATTRIBUTE17 in VARCHAR2,
3777 p_new_ATTRIBUTE17 in VARCHAR2,
3778 p_old_ATTRIBUTE18 in VARCHAR2,
3779 p_new_ATTRIBUTE18 in VARCHAR2,
3780 p_old_ATTRIBUTE19 in VARCHAR2,
3781 p_new_ATTRIBUTE19 in VARCHAR2,
3782 p_old_ATTRIBUTE20 in VARCHAR2,
3783 p_new_ATTRIBUTE20 in VARCHAR2,
3784 p_old_ATTRIBUTE_CATEGORY in VARCHAR2,
3785 p_new_ATTRIBUTE_CATEGORY in VARCHAR2
3786 ) IS
3787 --
3788 cursor asgcur (p_person_id number) is
3789 select distinct assignment_id
3790 from per_all_assignments_f
3791 where person_id = p_person_id
3792 and primary_flag = 'Y';
3793 --
3794 l_proc varchar2(240) := g_package||'.per_absence_attendances_aru';
3795 l_effective_date DATE;
3796 begin
3797 /* If the continuous calc is overriden then do nothing */
3798 if (pay_continuous_calc.g_override_cc = TRUE) then
3799 return;
3800 end if;
3801 --
3802 -- Default effective date
3803 --
3804 IF (p_effective_date IS NULL) THEN
3805 l_effective_date := trunc(sysdate);
3806 ELSE
3807 l_effective_date := p_effective_date;
3808 END IF;
3809 --
3810 -- Always assume update is correction
3811 --
3812 pay_continuous_calc.event_update
3813 (p_business_group_id,
3814 p_legislation_code,
3815 'PER_ABSENCE_ATTENDANCES',
3816 'ABSENCE_ATTENDANCE_ID',
3817 p_old_ABSENCE_ATTENDANCE_ID,
3818 p_new_ABSENCE_ATTENDANCE_ID,
3819 l_effective_date);
3820
3821 pay_continuous_calc.event_update
3822 (p_business_group_id,
3823 p_legislation_code,
3824 'PER_ABSENCE_ATTENDANCES',
3825 'ABS_ATTENDANCE_REASON_ID',
3826 p_old_ABS_ATTENDANCE_REASON_ID,
3827 p_new_ABS_ATTENDANCE_REASON_ID,
3828 l_effective_date);
3829
3830 pay_continuous_calc.event_update
3831 (p_business_group_id,
3832 p_legislation_code,
3833 'PER_ABSENCE_ATTENDANCES',
3834 'AUTHORISING_PERSON_ID',
3835 p_old_AUTHORISING_PERSON_ID,
3836 p_new_AUTHORISING_PERSON_ID,
3837 l_effective_date);
3838
3839 pay_continuous_calc.event_update
3840 (p_business_group_id,
3841 p_legislation_code,
3842 'PER_ABSENCE_ATTENDANCES',
3843 'REPLACEMENT_PERSON_ID',
3844 p_old_REPLACEMENT_PERSON_ID,
3845 p_new_REPLACEMENT_PERSON_ID,
3846 l_effective_date);
3847
3848 pay_continuous_calc.event_update
3849 (p_business_group_id,
3850 p_legislation_code,
3851 'PER_ABSENCE_ATTENDANCES',
3852 'PERIOD_OF_INCAPACITY_ID',
3853 p_old_PERIOD_OF_INCAPACITY_ID,
3854 p_new_PERIOD_OF_INCAPACITY_ID,
3855 l_effective_date);
3856
3857 pay_continuous_calc.event_update
3858 (p_business_group_id,
3859 p_legislation_code,
3860 'PER_ABSENCE_ATTENDANCES',
3861 'ABSENCE_DAYS',
3862 p_old_ABSENCE_DAYS,
3863 p_new_ABSENCE_DAYS,
3864 l_effective_date);
3865
3866 pay_continuous_calc.event_update
3867 (p_business_group_id,
3868 p_legislation_code,
3869 'PER_ABSENCE_ATTENDANCES',
3870 'ABSENCE_HOURS',
3871 p_old_ABSENCE_HOURS,
3872 p_new_ABSENCE_HOURS,
3873 l_effective_date);
3874
3875 pay_continuous_calc.event_update
3876 (p_business_group_id,
3877 p_legislation_code,
3878 'PER_ABSENCE_ATTENDANCES',
3879 'DATE_END',
3880 p_old_DATE_END,
3881 p_new_DATE_END,
3882 l_effective_date);
3883
3884 pay_continuous_calc.event_update
3885 (p_business_group_id,
3889 p_old_DATE_NOTIFICATION,
3886 p_legislation_code,
3887 'PER_ABSENCE_ATTENDANCES',
3888 'DATE_NOTIFICATION',
3890 p_new_DATE_NOTIFICATION,
3891 l_effective_date);
3892
3893 pay_continuous_calc.event_update
3894 (p_business_group_id,
3895 p_legislation_code,
3896 'PER_ABSENCE_ATTENDANCES',
3897 'DATE_PROJECTED_END',
3898 p_old_DATE_PROJECTED_END,
3899 p_new_DATE_PROJECTED_END,
3900 l_effective_date);
3901
3902 pay_continuous_calc.event_update
3903 (p_business_group_id,
3904 p_legislation_code,
3905 'PER_ABSENCE_ATTENDANCES',
3906 'DATE_PROJECTED_START',
3907 p_old_DATE_PROJECTED_START,
3908 p_new_DATE_PROJECTED_START,
3909 l_effective_date);
3910
3911 pay_continuous_calc.event_update
3912 (p_business_group_id,
3913 p_legislation_code,
3914 'PER_ABSENCE_ATTENDANCES',
3915 'DATE_START',
3916 p_old_DATE_START,
3917 p_new_DATE_START,
3918 l_effective_date);
3919
3920 pay_continuous_calc.event_update
3921 (p_business_group_id,
3922 p_legislation_code,
3923 'PER_ABSENCE_ATTENDANCES',
3924 'SSP1_ISSUED',
3925 p_old_SSP1_ISSUED,
3926 p_new_SSP1_ISSUED,
3927 l_effective_date);
3928
3929 pay_continuous_calc.event_update
3930 (p_business_group_id,
3931 p_legislation_code,
3932 'PER_ABSENCE_ATTENDANCES',
3933 'TIME_END',
3934 p_old_TIME_END,
3935 p_new_TIME_END,
3936 l_effective_date);
3937
3938 pay_continuous_calc.event_update
3939 (p_business_group_id,
3940 p_legislation_code,
3941 'PER_ABSENCE_ATTENDANCES',
3942 'TIME_PROJECTED_END',
3943 p_old_TIME_PROJECTED_END,
3944 p_new_TIME_PROJECTED_END,
3945 l_effective_date);
3946
3947 pay_continuous_calc.event_update
3948 (p_business_group_id,
3949 p_legislation_code,
3950 'PER_ABSENCE_ATTENDANCES',
3951 'TIME_PROJECTED_START',
3952 p_old_TIME_PROJECTED_START,
3953 p_new_TIME_PROJECTED_START,
3954 l_effective_date);
3955
3956 pay_continuous_calc.event_update
3957 (p_business_group_id,
3958 p_legislation_code,
3959 'PER_ABSENCE_ATTENDANCES',
3960 'TIME_START',
3961 p_old_TIME_START,
3962 p_new_TIME_START,
3963 l_effective_date);
3964
3965 pay_continuous_calc.event_update
3966 (p_business_group_id,
3967 p_legislation_code,
3968 'PER_ABSENCE_ATTENDANCES',
3969 'MATERNITY_ID',
3970 p_old_MATERNITY_ID,
3971 p_new_MATERNITY_ID,
3972 l_effective_date);
3973
3974 pay_continuous_calc.event_update
3975 (p_business_group_id,
3976 p_legislation_code,
3977 'PER_ABSENCE_ATTENDANCES',
3978 'SICKNESS_START_DATE',
3979 p_old_SICKNESS_START_DATE,
3980 p_new_SICKNESS_START_DATE,
3981 l_effective_date);
3982
3983 pay_continuous_calc.event_update
3984 (p_business_group_id,
3985 p_legislation_code,
3986 'PER_ABSENCE_ATTENDANCES',
3987 'SICKNESS_END_DATE',
3988 p_old_SICKNESS_END_DATE,
3989 p_new_SICKNESS_END_DATE,
3990 l_effective_date);
3991
3992 pay_continuous_calc.event_update
3993 (p_business_group_id,
3994 p_legislation_code,
3995 'PER_ABSENCE_ATTENDANCES',
3996 'LINKED_ABSENCE_ID',
3997 p_old_LINKED_ABSENCE_ID,
3998 p_new_LINKED_ABSENCE_ID,
3999 l_effective_date);
4000 --
4001 pay_continuous_calc.event_update(p_business_group_id,
4002 p_legislation_code,
4003 'PER_ABSENCE_ATTENDANCES',
4004 'ATTRIBUTE1',
4005 p_old_ATTRIBUTE1,
4006 p_new_ATTRIBUTE1,
4007 l_effective_date
4008 );
4009 --
4010 pay_continuous_calc.event_update(p_business_group_id,
4011 p_legislation_code,
4012 'PER_ABSENCE_ATTENDANCES',
4013 'ATTRIBUTE10',
4014 p_old_ATTRIBUTE10,
4015 p_new_ATTRIBUTE10,
4016 l_effective_date
4017 );
4018 --
4019 pay_continuous_calc.event_update(p_business_group_id,
4020 p_legislation_code,
4021 'PER_ABSENCE_ATTENDANCES',
4022 'ATTRIBUTE11',
4023 p_old_ATTRIBUTE11,
4024 p_new_ATTRIBUTE11,
4025 l_effective_date
4026 );
4027 --
4028 pay_continuous_calc.event_update(p_business_group_id,
4029 p_legislation_code,
4030 'PER_ABSENCE_ATTENDANCES',
4031 'ATTRIBUTE12',
4032 p_old_ATTRIBUTE12,
4033 p_new_ATTRIBUTE12,
4034 l_effective_date
4035 );
4036 --
4037 pay_continuous_calc.event_update(p_business_group_id,
4038 p_legislation_code,
4039 'PER_ABSENCE_ATTENDANCES',
4040 'ATTRIBUTE13',
4041 p_old_ATTRIBUTE13,
4042 p_new_ATTRIBUTE13,
4043 l_effective_date
4044 );
4045 --
4046 pay_continuous_calc.event_update(p_business_group_id,
4047 p_legislation_code,
4048 'PER_ABSENCE_ATTENDANCES',
4049 'ATTRIBUTE14',
4050 p_old_ATTRIBUTE14,
4051 p_new_ATTRIBUTE14,
4052 l_effective_date
4053 );
4054 --
4055 pay_continuous_calc.event_update(p_business_group_id,
4056 p_legislation_code,
4057 'PER_ABSENCE_ATTENDANCES',
4058 'ATTRIBUTE15',
4059 p_old_ATTRIBUTE15,
4060 p_new_ATTRIBUTE15,
4061 l_effective_date
4062 );
4063 --
4064 pay_continuous_calc.event_update(p_business_group_id,
4065 p_legislation_code,
4066 'PER_ABSENCE_ATTENDANCES',
4067 'ATTRIBUTE16',
4068 p_old_ATTRIBUTE16,
4069 p_new_ATTRIBUTE16,
4070 l_effective_date
4071 );
4072 --
4073 pay_continuous_calc.event_update(p_business_group_id,
4074 p_legislation_code,
4075 'PER_ABSENCE_ATTENDANCES',
4076 'ATTRIBUTE17',
4077 p_old_ATTRIBUTE17,
4078 p_new_ATTRIBUTE17,
4079 l_effective_date
4080 );
4081 --
4082 pay_continuous_calc.event_update(p_business_group_id,
4083 p_legislation_code,
4084 'PER_ABSENCE_ATTENDANCES',
4085 'ATTRIBUTE18',
4086 p_old_ATTRIBUTE18,
4087 p_new_ATTRIBUTE18,
4088 l_effective_date
4089 );
4090 --
4091 pay_continuous_calc.event_update(p_business_group_id,
4092 p_legislation_code,
4093 'PER_ABSENCE_ATTENDANCES',
4094 'ATTRIBUTE19',
4095 p_old_ATTRIBUTE19,
4096 p_new_ATTRIBUTE19,
4100 pay_continuous_calc.event_update(p_business_group_id,
4097 l_effective_date
4098 );
4099 --
4101 p_legislation_code,
4102 'PER_ABSENCE_ATTENDANCES',
4103 'ATTRIBUTE2',
4104 p_old_ATTRIBUTE2,
4105 p_new_ATTRIBUTE2,
4106 l_effective_date
4107 );
4108 --
4109 pay_continuous_calc.event_update(p_business_group_id,
4110 p_legislation_code,
4111 'PER_ABSENCE_ATTENDANCES',
4112 'ATTRIBUTE20',
4113 p_old_ATTRIBUTE20,
4114 p_new_ATTRIBUTE20,
4115 l_effective_date
4116 );
4117 --
4118 pay_continuous_calc.event_update(p_business_group_id,
4119 p_legislation_code,
4120 'PER_ABSENCE_ATTENDANCES',
4121 'ATTRIBUTE3',
4122 p_old_ATTRIBUTE3,
4123 p_new_ATTRIBUTE3,
4124 l_effective_date
4125 );
4126 --
4127 pay_continuous_calc.event_update(p_business_group_id,
4128 p_legislation_code,
4129 'PER_ABSENCE_ATTENDANCES',
4130 'ATTRIBUTE4',
4131 p_old_ATTRIBUTE4,
4132 p_new_ATTRIBUTE4,
4133 l_effective_date
4134 );
4135 --
4136 pay_continuous_calc.event_update(p_business_group_id,
4137 p_legislation_code,
4138 'PER_ABSENCE_ATTENDANCES',
4139 'ATTRIBUTE5',
4140 p_old_ATTRIBUTE5,
4141 p_new_ATTRIBUTE5,
4142 l_effective_date
4143 );
4144 --
4145 pay_continuous_calc.event_update(p_business_group_id,
4146 p_legislation_code,
4147 'PER_ABSENCE_ATTENDANCES',
4148 'ATTRIBUTE6',
4149 p_old_ATTRIBUTE6,
4150 p_new_ATTRIBUTE6,
4151 l_effective_date
4152 );
4153 --
4154 pay_continuous_calc.event_update(p_business_group_id,
4155 p_legislation_code,
4156 'PER_ABSENCE_ATTENDANCES',
4157 'ATTRIBUTE7',
4158 p_old_ATTRIBUTE7,
4159 p_new_ATTRIBUTE7,
4160 l_effective_date
4161 );
4162 --
4163 pay_continuous_calc.event_update(p_business_group_id,
4164 p_legislation_code,
4165 'PER_ABSENCE_ATTENDANCES',
4166 'ATTRIBUTE8',
4167 p_old_ATTRIBUTE8,
4168 p_new_ATTRIBUTE8,
4169 l_effective_date
4170 );
4171 --
4172 pay_continuous_calc.event_update(p_business_group_id,
4173 p_legislation_code,
4174 'PER_ABSENCE_ATTENDANCES',
4175 'ATTRIBUTE9',
4176 p_old_ATTRIBUTE9,
4177 p_new_ATTRIBUTE9,
4178 l_effective_date
4179 );
4180 --
4181 pay_continuous_calc.event_update(p_business_group_id,
4182 p_legislation_code,
4183 'PER_ABSENCE_ATTENDANCES',
4184 'ATTRIBUTE_CATEGORY',
4185 p_old_ATTRIBUTE_CATEGORY,
4186 p_new_ATTRIBUTE_CATEGORY,
4187 l_effective_date
4188 );
4189 --
4190 /* Now call the API for the affected assignments */
4191 declare
4192 l_process_event_id number;
4193 l_object_version_number number;
4194 cnt number;
4195 begin
4196 if (pay_continuous_calc.g_event_list.sz <> 0) then
4197 for asgrec in asgcur(p_new_person_id) loop
4198 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
4199 pay_ppe_api.create_process_event(
4200 p_assignment_id => asgrec.assignment_id,
4201 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
4202 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
4203 p_status => 'U',
4204 p_description => pay_continuous_calc.g_event_list.description(cnt),
4205 p_process_event_id => l_process_event_id,
4206 p_object_version_number => l_object_version_number,
4207 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
4208 p_business_group_id => p_business_group_id,
4209 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
4213 END LOOP;
4210 p_surrogate_key => p_new_absence_attendance_id
4211 );
4212 --
4214 --
4215 END LOOP;
4216 --
4217 END IF;
4218 --
4219 pay_continuous_calc.g_event_list.sz := 0;
4220 --
4221 END;
4222 --
4223 END PER_ABSENCE_ATTENDANCES_aru;
4224 --
4225 procedure PER_ABSENCE_ATTENDANCES_ari
4226 (p_business_group_id in number,
4227 p_legislation_code in varchar2,
4228 p_person_id in number,
4229 p_absence_attendance_id in number,
4230 p_effective_start_date in date)
4231 IS
4232 --
4233 cursor asgcur (p_person_id number) is
4234 select distinct assignment_id
4235 from per_all_assignments_f
4236 where person_id = p_person_id
4237 and primary_flag = 'Y';
4238 --
4239 l_process_event_id number;
4240 l_object_version_number number;
4241 l_proc varchar2(240) := g_package||'.per_absence_attendances_ari';
4242 --
4243 BEGIN
4244 --
4245 /* If the continuous calc is overriden then do nothing */
4246 if (pay_continuous_calc.g_override_cc = TRUE) then
4247 return;
4248 end if;
4249 --
4250 -- Date column notional as table is not date tracked
4251 --
4252 pay_continuous_calc.event_update(p_business_group_id,
4253 p_legislation_code,
4254 'PER_ABSENCE_ATTENDANCES',
4255 NULL,
4256 NULL,
4257 NULL,
4258 NVL(p_effective_start_date,TRUNC(SYSDATE)),
4259 NVL(p_effective_start_date,TRUNC(SYSDATE)),
4260 'I'
4261 );
4262 /* Now call the API for the affected assignments */
4263 DECLARE
4264 cnt number;
4265 l_process_event_id number;
4266 l_object_version_number number;
4267 BEGIN
4268 IF (pay_continuous_calc.g_event_list.sz <> 0) THEN
4269 --
4270 FOR asgrec in asgcur (p_person_id) LOOP
4271 --
4272 FOR cnt in 1..pay_continuous_calc.g_event_list.sz LOOP
4273 --
4274 pay_ppe_api.create_process_event(
4275 p_assignment_id => asgrec.assignment_id,
4276 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
4277 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
4278 p_status => 'U',
4279 p_description => pay_continuous_calc.g_event_list.description(cnt),
4280 p_process_event_id => l_process_event_id,
4281 p_object_version_number => l_object_version_number,
4282 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
4283 p_business_group_id => p_business_group_id,
4284 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
4285 p_surrogate_key => p_absence_attendance_id);
4286 --
4287 END LOOP;
4288 --
4289 END LOOP;
4290 --
4291 END IF;
4292 --
4293 pay_continuous_calc.g_event_list.sz := 0;
4294 --
4295 END;
4296 --
4297 END per_absence_attendances_ari;
4298 --
4299 procedure PER_ABSENCE_ATTENDANCES_ard
4300 (p_business_group_id in number,
4301 p_legislation_code in varchar2,
4302 p_person_id in number,
4303 p_effective_start_date in date,
4304 p_absence_attendance_id in number)
4305 IS
4306 --
4307 cursor asgcur (p_person_id number) is
4308 select distinct assignment_id
4309 from per_all_assignments_f
4310 where person_id = p_person_id
4311 and primary_flag = 'Y';
4312 --
4313 l_process_event_id number;
4314 l_object_version_number number;
4315 l_proc varchar2(240) := g_package||'.per_absence_attendances_ard';
4316 begin
4317
4318 /* If the continuous calc is overriden then do nothing */
4319 if (pay_continuous_calc.g_override_cc = TRUE) then
4320 return;
4321 end if;
4322 --
4323 -- Date column notional as this is a non-datetrack table
4324 -- See pycodtrg.ldt to see which value is used as 'effective_start_date'
4325 pay_continuous_calc.event_update(p_business_group_id,
4326 p_legislation_code,
4327 'PER_ABSENCE_ATTENDANCES',
4328 NULL,
4329 NULL,
4330 NULL,
4331 NVL(p_effective_start_date,TRUNC(SYSDATE)),
4332 NVL(p_effective_start_date,TRUNC(SYSDATE)),
4333 'D'
4334 );
4335 /* Now call the API for the affected assignments */
4336 declare
4337 cnt number;
4338 l_process_event_id number;
4339 l_object_version_number number;
4340 begin
4341 if (pay_continuous_calc.g_event_list.sz <> 0) then
4342 for asgrec in asgcur (p_person_id) loop
4343 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
4344 pay_ppe_api.create_process_event
4345 (p_assignment_id => asgrec.assignment_id,
4346 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
4347 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
4348 p_status => 'U',
4349 p_description => pay_continuous_calc.g_event_list.description(cnt),
4350 p_process_event_id => l_process_event_id,
4354 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
4351 p_object_version_number => l_object_version_number,
4352 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
4353 p_surrogate_key => p_absence_attendance_id,
4355 p_business_group_id => p_business_group_id);
4356 --
4357 END LOOP;
4358 --
4359 END LOOP;
4360 --
4361 END IF;
4362 --
4363 pay_continuous_calc.g_event_list.sz := 0;
4364 --
4365 END;
4366 --
4367 END per_absence_attendances_ard;
4368
4369
4370 procedure PQP_GAP_DURATION_SUMMARY_ari
4371 (p_business_group_id in number ,
4372 p_legislation_code in varchar2,
4373 p_assignment_id in number,
4374 p_gap_duration_summary_id in number,
4375 p_effective_start_date in date)
4376 IS
4377
4378
4379 l_process_event_id number;
4380 l_object_version_number number;
4381 l_proc varchar2(240) := g_package||'.PQP_GAP_DURATION_SUMMARY_ari';
4382 --
4383 BEGIN
4384 --
4385 /* If the continuous calc is overriden then do nothing */
4386
4387 if (pay_continuous_calc.g_override_cc = TRUE) then
4388 return;
4389 end if;
4390 --
4391 pay_continuous_calc.event_update(p_business_group_id,
4392 p_legislation_code,
4393 'PQP_GAP_DURATION_SUMMARY',
4394 NULL,
4395 NULL,
4396 NULL,
4397 p_effective_start_date,
4398 p_effective_start_date,
4399 'I'
4400 );
4401 /* Now call the API for the affected assignments */
4402 DECLARE
4403 cnt number;
4404 l_process_event_id number;
4405 l_object_version_number number;
4406
4407 BEGIN
4408
4409 IF (pay_continuous_calc.g_event_list.sz <> 0) THEN
4410 --
4411 FOR cnt in 1..pay_continuous_calc.g_event_list.sz LOOP
4412 --
4413 pay_ppe_api.create_process_event(
4414 p_assignment_id => p_assignment_id,
4415 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
4416 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
4417 p_status => 'U',
4418 p_description => pay_continuous_calc.g_event_list.description(cnt),
4419 p_process_event_id => l_process_event_id,
4420 p_object_version_number => l_object_version_number,
4421 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
4422 p_business_group_id => p_business_group_id,
4423 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
4424 p_surrogate_key => p_gap_duration_summary_id);
4425 --
4426 END LOOP;
4427
4428 --
4429 END IF;
4430 --
4431 pay_continuous_calc.g_event_list.sz := 0;
4432 --
4433 END;
4434 --
4435 END PQP_GAP_DURATION_SUMMARY_ari;
4436 --
4437
4438 procedure PQP_GAP_DURATION_SUMMARY_aru(
4439 p_business_group_id in number,
4440 p_legislation_code in varchar2,
4441 P_GAP_DURATION_SUMMARY_ID in NUMBER,
4442 P_ASSIGNMENT_ID NUMBER,
4443 p_new_DURATION_IN_DAYS in NUMBER,
4444 p_old_DURATION_IN_DAYS in NUMBER,
4445 p_new_DURATION_IN_HOURS in NUMBER,
4446 p_old_DURATION_IN_HOURS in NUMBER,
4447 p_new_DATE_END in DATE,
4448 p_old_DATE_END in DATE,
4449 p_new_DATE_START in DATE,
4450 p_old_DATE_START in DATE,
4451 p_effective_date in DATE
4452 -- need to add date start as well
4453 ) IS
4454 --
4455
4456 --
4457 l_proc varchar2(240) := g_package||'.PQP_GAP_DURATION_SUMMARY_aru';
4458 begin
4459 /* If the continuous calc is overriden then do nothing */
4460 if (pay_continuous_calc.g_override_cc = TRUE) then
4461 return;
4462 end if;
4463 --
4464 -- Always assume update is correction
4465 --
4466 pay_continuous_calc.event_update
4467 (p_business_group_id,
4468 p_legislation_code,
4469 'PQP_GAP_DURATION_SUMMARY',
4470 'DURATION_IN_DAYS',
4471 p_old_DURATION_IN_DAYS,
4472 p_new_DURATION_IN_DAYS,
4473 p_effective_date);
4474
4475 pay_continuous_calc.event_update
4476 (p_business_group_id,
4477 p_legislation_code,
4478 'PQP_GAP_DURATION_SUMMARY',
4479 'DURATION_IN_HOURS',
4480 p_old_DURATION_IN_HOURS,
4481 p_new_DURATION_IN_HOURS,
4482 p_effective_date);
4483
4484 pay_continuous_calc.event_update
4485 (p_business_group_id,
4486 p_legislation_code,
4487 'PQP_GAP_DURATION_SUMMARY',
4488 'DATE_END',
4489 p_old_DATE_END,
4490 p_new_DATE_END,
4491 p_effective_date);
4492
4493 pay_continuous_calc.event_update
4494 (p_business_group_id,
4495 p_legislation_code,
4496 'PQP_GAP_DURATION_SUMMARY',
4497 'DATE_START',
4498 p_old_DATE_START,
4499 p_new_DATE_START,
4500 p_effective_date);
4501
4502
4503 --
4504 /* Now call the API for the affected assignments */
4505 declare
4506 l_process_event_id number;
4507 l_object_version_number number;
4508 cnt number;
4509 begin
4510 if (pay_continuous_calc.g_event_list.sz <> 0) then
4514 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
4511 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
4512 pay_ppe_api.create_process_event(
4513 p_assignment_id => P_ASSIGNMENT_ID,
4515 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
4516 p_status => 'U',
4517 p_description => pay_continuous_calc.g_event_list.description(cnt),
4518 p_process_event_id => l_process_event_id,
4519 p_object_version_number => l_object_version_number,
4520 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
4521 p_business_group_id => p_business_group_id,
4522 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
4523 p_surrogate_key => P_GAP_DURATION_SUMMARY_ID
4524 );
4525 --
4526 END LOOP;
4527 --
4528 --
4529 END IF;
4530 --
4531 pay_continuous_calc.g_event_list.sz := 0;
4532 --
4533 END;
4534 --
4535 END PQP_GAP_DURATION_SUMMARY_aru;
4536
4537 --
4538
4539 procedure PQP_GAP_DURATION_SUMMARY_ard
4540 (p_business_group_id in number,
4541 p_legislation_code in varchar2,
4542 P_GAP_DURATION_SUMMARY_ID in NUMBER,
4543 P_ASSIGNMENT_ID NUMBER,
4544 p_effective_start_date in date
4545 )
4546 IS
4547 --
4548 --
4549 l_process_event_id number;
4550 l_object_version_number number;
4551 l_proc varchar2(240) := g_package||'.PQP_GAP_DURATION_SUMMARY_ard';
4552 begin
4553
4554 /* If the continuous calc is overriden then do nothing */
4555 if (pay_continuous_calc.g_override_cc = TRUE) then
4556 return;
4557 end if;
4558 --
4559 -- Date column notional as this is a non-datetrack table
4560 -- See pycodtrg.ldt to see which value is used as 'effective_start_date'
4561 pay_continuous_calc.event_update(p_business_group_id,
4562 p_legislation_code,
4563 'PQP_GAP_DURATION_SUMMARY',
4564 NULL,
4565 NULL,
4566 NULL,
4567 p_effective_start_date,
4568 p_effective_start_date,
4569 'D'
4570 );
4571 /* Now call the API for the affected assignments */
4572 declare
4573 cnt number;
4574 l_process_event_id number;
4575 l_object_version_number number;
4576 begin
4577 if (pay_continuous_calc.g_event_list.sz <> 0) then
4578
4579 for cnt in 1..pay_continuous_calc.g_event_list.sz loop
4580 pay_ppe_api.create_process_event
4581 (p_assignment_id => P_ASSIGNMENT_ID,
4582 p_effective_date => pay_continuous_calc.g_event_list.effective_date(cnt),
4583 p_change_type => pay_continuous_calc.g_event_list.change_type(cnt),
4584 p_status => 'U',
4585 p_description => pay_continuous_calc.g_event_list.description(cnt),
4586 p_process_event_id => l_process_event_id,
4587 p_object_version_number => l_object_version_number,
4588 p_event_update_id => pay_continuous_calc.g_event_list.event_update_id(cnt),
4589 p_surrogate_key => P_GAP_DURATION_SUMMARY_ID,
4590 p_calculation_date => pay_continuous_calc.g_event_list.calc_date(cnt),
4591 p_business_group_id => p_business_group_id);
4592 --
4593 END LOOP;
4594 --
4595 --
4596 END IF;
4597 --
4598 pay_continuous_calc.g_event_list.sz := 0;
4599 --
4600 END;
4601 --
4602 END PQP_GAP_DURATION_SUMMARY_ard;
4603
4604
4605
4606
4607
4608
4609 --
4610 begin
4611 pay_continuous_calc.g_event_list.sz := 0;
4612 pay_continuous_calc.g_override_cc := FALSE;
4613 END PAY_MISC_DYT_INCIDENT_PKG;