[Home] [Help]
PACKAGE BODY: APPS.BEN_EXT_CHG_EVT_API
Source
4 -- Package Variables
1 Package Body ben_EXT_CHG_EVT_api as
2 /* $Header: bexclapi.pkb 120.1 2005/06/23 15:04:38 tjesumic noship $ */
3 --
5 --
6 g_package varchar2(33) := ' ben_EXT_CHG_EVT_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_EXT_CHG_EVT >----------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_EXT_CHG_EVT
13 (p_validate in boolean default false
14 ,p_ext_chg_evt_log_id out nocopy number
15 ,p_chg_evt_cd in varchar2 default null
16 ,p_chg_eff_dt in date default null
17 ,p_chg_user_id in number default null
18 ,p_prmtr_01 in varchar2 default null
19 ,p_prmtr_02 in varchar2 default null
20 ,p_prmtr_03 in varchar2 default null
21 ,p_prmtr_04 in varchar2 default null
22 ,p_prmtr_05 in varchar2 default null
23 ,p_prmtr_06 in varchar2 default null
24 ,p_prmtr_07 in varchar2 default null
25 ,p_prmtr_08 in varchar2 default null
26 ,p_prmtr_09 in varchar2 default null
27 ,p_prmtr_10 in varchar2 default null
28 ,p_person_id in number default null
29 ,p_business_group_id in number default null
30 ,p_object_version_number out nocopy number
31 ,p_effective_date in date
32 ,p_new_val1 in varchar2 default null
33 ,p_new_val2 in varchar2 default null
34 ,p_new_val3 in varchar2 default null
35 ,p_new_val4 in varchar2 default null
36 ,p_new_val5 in varchar2 default null
37 ,p_new_val6 in varchar2 default null
38 ,p_old_val1 in varchar2 default null
39 ,p_old_val2 in varchar2 default null
40 ,p_old_val3 in varchar2 default null
41 ,p_old_val4 in varchar2 default null
42 ,p_old_val5 in varchar2 default null
43 ,p_old_val6 in varchar2 default null
44 ) is
45 --
46 -- Declare cursors and local variables
47 --
48 l_ext_chg_evt_log_id ben_ext_chg_evt_log.ext_chg_evt_log_id%TYPE;
49 l_proc varchar2(72) := g_package||'create_EXT_CHG_EVT';
50 l_object_version_number ben_ext_chg_evt_log.object_version_number%TYPE;
51 --
52 begin
53 --
54 hr_utility.set_location('Entering:'|| l_proc, 10);
55 --
56 -- Issue a savepoint if operating in validation only mode
57 --
58 -- savepoint create_EXT_CHG_EVT;
59 --
60 hr_utility.set_location(l_proc, 20);
61 --
62 -- Process Logic
63 --
64 begin
65 --
66 -- Start of API User Hook for the before hook of create_EXT_CHG_EVT
67 --
68 ben_EXT_CHG_EVT_bk1.create_EXT_CHG_EVT_b
69 (
70 p_chg_evt_cd => p_chg_evt_cd
71 ,p_chg_eff_dt => p_chg_eff_dt
72 ,p_chg_user_id => p_chg_user_id
73 ,p_prmtr_01 => p_prmtr_01
74 ,p_prmtr_02 => p_prmtr_02
75 ,p_prmtr_03 => p_prmtr_03
76 ,p_prmtr_04 => p_prmtr_04
77 ,p_prmtr_05 => p_prmtr_05
78 ,p_prmtr_06 => p_prmtr_06
79 ,p_prmtr_07 => p_prmtr_07
83 ,p_person_id => p_person_id
80 ,p_prmtr_08 => p_prmtr_08
81 ,p_prmtr_09 => p_prmtr_09
82 ,p_prmtr_10 => p_prmtr_10
84 ,p_business_group_id => p_business_group_id
85 ,p_effective_date => trunc(p_effective_date)
86 );
87 exception
88 when hr_api.cannot_find_prog_unit then
89 hr_api.cannot_find_prog_unit_error
90 (
91 p_module_name => 'CREATE_EXT_CHG_EVT'
92 ,p_hook_type => 'BP'
93 );
94 --
95 -- End of API User Hook for the before hook of create_EXT_CHG_EVT
96 --
97 end;
98 --
99 ben_xcl_ins.ins
100 (
101 p_ext_chg_evt_log_id => l_ext_chg_evt_log_id
102 ,p_chg_evt_cd => p_chg_evt_cd
103 ,p_chg_eff_dt => p_chg_eff_dt
104 ,p_chg_user_id => p_chg_user_id
105 ,p_prmtr_01 => p_prmtr_01
106 ,p_prmtr_02 => p_prmtr_02
107 ,p_prmtr_03 => p_prmtr_03
108 ,p_prmtr_04 => p_prmtr_04
109 ,p_prmtr_05 => p_prmtr_05
110 ,p_prmtr_06 => p_prmtr_06
111 ,p_prmtr_07 => p_prmtr_07
112 ,p_prmtr_08 => p_prmtr_08
113 ,p_prmtr_09 => p_prmtr_09
114 ,p_prmtr_10 => p_prmtr_10
115 ,p_person_id => p_person_id
116 ,p_business_group_id => p_business_group_id
117 ,p_object_version_number => l_object_version_number
118 ,p_effective_date => trunc(p_effective_date)
119 ,p_chg_actl_dt => sysdate
120 ,p_new_val1 => p_new_val1
121 ,p_new_val2 => p_new_val2
122 ,p_new_val3 => p_new_val3
123 ,p_new_val4 => p_new_val4
124 ,p_new_val5 => p_new_val5
125 ,p_new_val6 => p_new_val6
126 ,p_old_val1 => p_old_val1
127 ,p_old_val2 => p_old_val2
128 ,p_old_val3 => p_old_val3
129 ,p_old_val4 => p_old_val4
130 ,p_old_val5 => p_old_val5
131 ,p_old_val6 => p_old_val6
132 );
133 --
134 begin
135 --
136 -- Start of API User Hook for the after hook of create_EXT_CHG_EVT
137 --
138 ben_EXT_CHG_EVT_bk1.create_EXT_CHG_EVT_a
139 (
140 p_ext_chg_evt_log_id => l_ext_chg_evt_log_id
141 ,p_chg_evt_cd => p_chg_evt_cd
142 ,p_chg_eff_dt => p_chg_eff_dt
143 ,p_chg_user_id => p_chg_user_id
144 ,p_prmtr_01 => p_prmtr_01
145 ,p_prmtr_02 => p_prmtr_02
146 ,p_prmtr_03 => p_prmtr_03
147 ,p_prmtr_04 => p_prmtr_04
148 ,p_prmtr_05 => p_prmtr_05
149 ,p_prmtr_06 => p_prmtr_06
150 ,p_prmtr_07 => p_prmtr_07
151 ,p_prmtr_08 => p_prmtr_08
152 ,p_prmtr_09 => p_prmtr_09
153 ,p_prmtr_10 => p_prmtr_10
154 ,p_person_id => p_person_id
155 ,p_business_group_id => p_business_group_id
156 ,p_object_version_number => l_object_version_number
157 ,p_effective_date => trunc(p_effective_date)
158 );
159 exception
160 when hr_api.cannot_find_prog_unit then
161 hr_api.cannot_find_prog_unit_error
162 (p_module_name => 'CREATE_EXT_CHG_EVT'
163 ,p_hook_type => 'AP'
164 );
165 --
166 -- End of API User Hook for the after hook of create_EXT_CHG_EVT
167 --
168 end;
169 --
170 hr_utility.set_location(l_proc, 60);
171 --
172 -- When in validation only mode raise the Validate_Enabled exception
173 --
174 -- if p_validate then
175 -- raise hr_api.validate_enabled;
176 -- end if;
177 --
178 -- Set all output arguments
179 --
180 p_ext_chg_evt_log_id := l_ext_chg_evt_log_id;
181 p_object_version_number := l_object_version_number;
182 --
183 hr_utility.set_location(' Leaving:'||l_proc, 70);
184 --
185 exception
186 --
187 -- when hr_api.validate_enabled then
188 --
189 -- As the Validate_Enabled exception has been raised
190 -- we must rollback to the savepoint
191 --
192 -- ROLLBACK TO create_EXT_CHG_EVT;
193 --
194 -- Only set output warning arguments
195 -- (Any key or derived arguments must be set to null
196 -- when validation only mode is being used.)
197 --
198 -- p_ext_chg_evt_log_id := null;
199 -- p_object_version_number := null;
200 -- hr_utility.set_location(' Leaving:'||l_proc, 80);
201 --
202 when others then
203 --
204 -- A validation or unexpected error has occured
205 --
206 --ROLLBACK TO create_EXT_CHG_EVT;
207 /* Inserted for nocopy changes */
208 p_ext_chg_evt_log_id := null;
209 p_object_version_number := null;
210 raise;
211 --
212 end create_EXT_CHG_EVT;
213 -- ----------------------------------------------------------------------------
214 -- |------------------------< update_EXT_CHG_EVT >--- ------------------|
218 (p_validate in boolean default false
215 -- ----------------------------------------------------------------------------
216 --
217 procedure update_EXT_CHG_EVT
219 ,p_ext_chg_evt_log_id in number
220 ,p_chg_evt_cd in varchar2 default hr_api.g_varchar2
221 ,p_chg_eff_dt in date default hr_api.g_date
222 ,p_chg_user_id in number default hr_api.g_number
223 ,p_prmtr_01 in varchar2 default hr_api.g_varchar2
224 ,p_prmtr_02 in varchar2 default hr_api.g_varchar2
225 ,p_prmtr_03 in varchar2 default hr_api.g_varchar2
226 ,p_prmtr_04 in varchar2 default hr_api.g_varchar2
227 ,p_prmtr_05 in varchar2 default hr_api.g_varchar2
228 ,p_prmtr_06 in varchar2 default hr_api.g_varchar2
229 ,p_prmtr_07 in varchar2 default hr_api.g_varchar2
230 ,p_prmtr_08 in varchar2 default hr_api.g_varchar2
231 ,p_prmtr_09 in varchar2 default hr_api.g_varchar2
232 ,p_prmtr_10 in varchar2 default hr_api.g_varchar2
233 ,p_person_id in number default hr_api.g_number
234 ,p_business_group_id in number default hr_api.g_number
235 ,p_object_version_number in out nocopy number
236 ,p_effective_date in date
237 ) is
238 --
239 -- Declare cursors and local variables
240 --
241 l_proc varchar2(72) := g_package||'update_EXT_CHG_EVT';
242 l_object_version_number ben_ext_chg_evt_log.object_version_number%TYPE;
243 --
244 begin
245 --
246 hr_utility.set_location('Entering:'|| l_proc, 10);
247 --
248 -- Issue a savepoint if operating in validation only mode
249 --
250 savepoint update_EXT_CHG_EVT;
251 --
252 hr_utility.set_location(l_proc, 20);
253 --
254 -- Process Logic
255 --
256 l_object_version_number := p_object_version_number;
257 --
258 begin
259 --
260 -- Start of API User Hook for the before hook of update_EXT_CHG_EVT
261 --
262 ben_EXT_CHG_EVT_bk2.update_EXT_CHG_EVT_b
263 (
264 p_ext_chg_evt_log_id => p_ext_chg_evt_log_id
265 ,p_chg_evt_cd => p_chg_evt_cd
266 ,p_chg_eff_dt => p_chg_eff_dt
267 ,p_chg_user_id => p_chg_user_id
268 ,p_prmtr_01 => p_prmtr_01
269 ,p_prmtr_02 => p_prmtr_02
270 ,p_prmtr_03 => p_prmtr_03
271 ,p_prmtr_04 => p_prmtr_04
272 ,p_prmtr_05 => p_prmtr_05
273 ,p_prmtr_06 => p_prmtr_06
274 ,p_prmtr_07 => p_prmtr_07
275 ,p_prmtr_08 => p_prmtr_08
276 ,p_prmtr_09 => p_prmtr_09
277 ,p_prmtr_10 => p_prmtr_10
278 ,p_person_id => p_person_id
279 ,p_business_group_id => p_business_group_id
280 ,p_object_version_number => p_object_version_number
281 ,p_effective_date => trunc(p_effective_date)
282 );
283 exception
284 when hr_api.cannot_find_prog_unit then
285 hr_api.cannot_find_prog_unit_error
286 (p_module_name => 'UPDATE_EXT_CHG_EVT'
287 ,p_hook_type => 'BP'
288 );
289 --
290 -- End of API User Hook for the before hook of update_EXT_CHG_EVT
291 --
292 end;
293 --
294 ben_xcl_upd.upd
295 (
296 p_ext_chg_evt_log_id => p_ext_chg_evt_log_id
297 ,p_chg_evt_cd => p_chg_evt_cd
298 ,p_chg_eff_dt => p_chg_eff_dt
299 ,p_chg_user_id => p_chg_user_id
300 ,p_prmtr_01 => p_prmtr_01
301 ,p_prmtr_02 => p_prmtr_02
302 ,p_prmtr_03 => p_prmtr_03
303 ,p_prmtr_04 => p_prmtr_04
304 ,p_prmtr_05 => p_prmtr_05
305 ,p_prmtr_06 => p_prmtr_06
306 ,p_prmtr_07 => p_prmtr_07
307 ,p_prmtr_08 => p_prmtr_08
308 ,p_prmtr_09 => p_prmtr_09
309 ,p_prmtr_10 => p_prmtr_10
310 ,p_person_id => p_person_id
311 ,p_business_group_id => p_business_group_id
312 ,p_object_version_number => l_object_version_number
313 ,p_effective_date => trunc(p_effective_date)
314 );
315 --
316 begin
317 --
318 -- Start of API User Hook for the after hook of update_EXT_CHG_EVT
319 --
320 ben_EXT_CHG_EVT_bk2.update_EXT_CHG_EVT_a
321 (
322 p_ext_chg_evt_log_id => p_ext_chg_evt_log_id
323 ,p_chg_evt_cd => p_chg_evt_cd
324 ,p_chg_eff_dt => p_chg_eff_dt
325 ,p_chg_user_id => p_chg_user_id
326 ,p_prmtr_01 => p_prmtr_01
327 ,p_prmtr_02 => p_prmtr_02
328 ,p_prmtr_03 => p_prmtr_03
329 ,p_prmtr_04 => p_prmtr_04
330 ,p_prmtr_05 => p_prmtr_05
331 ,p_prmtr_06 => p_prmtr_06
332 ,p_prmtr_07 => p_prmtr_07
333 ,p_prmtr_08 => p_prmtr_08
334 ,p_prmtr_09 => p_prmtr_09
338 ,p_object_version_number => l_object_version_number
335 ,p_prmtr_10 => p_prmtr_10
336 ,p_person_id => p_person_id
337 ,p_business_group_id => p_business_group_id
339 ,p_effective_date => trunc(p_effective_date)
340 );
341 exception
342 when hr_api.cannot_find_prog_unit then
343 hr_api.cannot_find_prog_unit_error
344 (p_module_name => 'UPDATE_EXT_CHG_EVT'
345 ,p_hook_type => 'AP'
346 );
347 --
348 -- End of API User Hook for the after hook of update_EXT_CHG_EVT
349 --
350 end;
351 --
352 hr_utility.set_location(l_proc, 60);
353 --
354 -- When in validation only mode raise the Validate_Enabled exception
355 --
356 if p_validate then
357 raise hr_api.validate_enabled;
358 end if;
359 --
360 -- Set all output arguments
361 --
362 p_object_version_number := l_object_version_number;
363 --
364 hr_utility.set_location(' Leaving:'||l_proc, 70);
365 --
366 exception
367 --
368 when hr_api.validate_enabled then
369 --
370 -- As the Validate_Enabled exception has been raised
371 -- we must rollback to the savepoint
372 --
373 ROLLBACK TO update_EXT_CHG_EVT;
374 --
375 -- Only set output warning arguments
376 -- (Any key or derived arguments must be set to null
377 -- when validation only mode is being used.)
378 --
379 hr_utility.set_location(' Leaving:'||l_proc, 80);
380 --
381 when others then
382 --
383 -- A validation or unexpected error has occured
384 --
385 ROLLBACK TO update_EXT_CHG_EVT;
386 /* Inserted for nocopy changes */
387 p_object_version_number := l_object_version_number;
388 raise;
389 --
390 end update_EXT_CHG_EVT;
391 -- ----------------------------------------------------------------------------
392 -- |------------------------< delete_EXT_CHG_EVT >----------------------|
393 -- ----------------------------------------------------------------------------
394 --
395 procedure delete_EXT_CHG_EVT
396 (p_validate in boolean default false
397 ,p_ext_chg_evt_log_id in number
398 ,p_object_version_number in out nocopy number
399 ,p_effective_date in date
400 ) is
401 --
402 -- Declare cursors and local variables
403 --
404 l_proc varchar2(72) := g_package||'update_EXT_CHG_EVT';
405 l_object_version_number ben_ext_chg_evt_log.object_version_number%TYPE;
406 --
407 begin
408 --
409 hr_utility.set_location('Entering:'|| l_proc, 10);
410 --
411 -- Issue a savepoint if operating in validation only mode
412 --
413 savepoint delete_EXT_CHG_EVT;
414 --
415 hr_utility.set_location(l_proc, 20);
416 --
417 -- Process Logic
418 --
419 l_object_version_number := p_object_version_number;
420 --
421 --
422 begin
423 --
424 -- Start of API User Hook for the before hook of delete_EXT_CHG_EVT
425 --
426 ben_EXT_CHG_EVT_bk3.delete_EXT_CHG_EVT_b
427 (
428 p_ext_chg_evt_log_id => p_ext_chg_evt_log_id
429 ,p_object_version_number => p_object_version_number
430 ,p_effective_date => trunc(p_effective_date)
431 );
432 exception
433 when hr_api.cannot_find_prog_unit then
434 hr_api.cannot_find_prog_unit_error
435 (p_module_name => 'DELETE_EXT_CHG_EVT'
436 ,p_hook_type => 'BP'
437 );
438 --
439 -- End of API User Hook for the before hook of delete_EXT_CHG_EVT
440 --
441 end;
442 --
443 ben_xcl_del.del
444 (
445 p_ext_chg_evt_log_id => p_ext_chg_evt_log_id
446 ,p_object_version_number => l_object_version_number
447 ,p_effective_date => p_effective_date
448 );
449 --
450 begin
451 --
452 -- Start of API User Hook for the after hook of delete_EXT_CHG_EVT
453 --
454 ben_EXT_CHG_EVT_bk3.delete_EXT_CHG_EVT_a
455 (
456 p_ext_chg_evt_log_id => p_ext_chg_evt_log_id
457 ,p_object_version_number => l_object_version_number
458 ,p_effective_date => trunc(p_effective_date)
459 );
460 exception
461 when hr_api.cannot_find_prog_unit then
462 hr_api.cannot_find_prog_unit_error
463 (p_module_name => 'DELETE_EXT_CHG_EVT'
464 ,p_hook_type => 'AP'
465 );
466 --
467 -- End of API User Hook for the after hook of delete_EXT_CHG_EVT
468 --
469 end;
470 --
471 hr_utility.set_location(l_proc, 60);
472 --
473 -- When in validation only mode raise the Validate_Enabled exception
474 --
475 if p_validate then
476 raise hr_api.validate_enabled;
477 end if;
478 --
482 --
479 hr_utility.set_location(' Leaving:'||l_proc, 70);
480 --
481 exception
483 when hr_api.validate_enabled then
484 --
485 -- As the Validate_Enabled exception has been raised
486 -- we must rollback to the savepoint
487 --
488 ROLLBACK TO delete_EXT_CHG_EVT;
489 --
490 -- Only set output warning arguments
491 -- (Any key or derived arguments must be set to null
492 -- when validation only mode is being used.)
493 --
494 --
495 when others then
496 --
497 -- A validation or unexpected error has occured
498 --
499 ROLLBACK TO delete_EXT_CHG_EVT;
500 /* Inserted for nocopy changes */
501 p_object_version_number := l_object_version_number;
502 raise;
503 --
504 end delete_EXT_CHG_EVT;
505 --
506 -- ----------------------------------------------------------------------------
507 -- |-------------------------------< lck >------------------------------------|
508 -- ----------------------------------------------------------------------------
509 --
510 procedure lck
511 (
512 p_ext_chg_evt_log_id in number
513 ,p_object_version_number in number
514 ) is
515 --
516 --
517 -- Declare cursors and local variables
518 --
519 l_proc varchar2(72) := g_package||'lck';
520 --
521 begin
522 --
523 hr_utility.set_location('Entering:'|| l_proc, 10);
524 --
525 ben_xcl_shd.lck
526 (
527 p_ext_chg_evt_log_id => p_ext_chg_evt_log_id
528 ,p_object_version_number => p_object_version_number
529 );
530 --
531 hr_utility.set_location(' Leaving:'||l_proc, 70);
532 --
533 end lck;
534 --
535
536
537 Function pay_interpreter_ressult (p_assignment_id in number,
538 p_event_group_id in number,
539 p_actl_date in date ,
540 p_dated_table_id in number,
541 p_column_name in varchar2,
542 p_effective_date in date ,
543 p_eff_date in date ,
544 p_change_type in varchar2,
545 p_process_event_id in number )
546 return varchar2 is
547
548 l_pay_proration_dates pay_interpreter_pkg.t_proration_dates_table_type;
549 l_pay_proration_changes pay_interpreter_pkg.t_proration_type_table_type;
550 l_pay_detail_tab pay_interpreter_pkg.t_detailed_output_table_type;
551 l_pay_pro_type_tab pay_interpreter_pkg.t_proration_type_table_type;
552 l_dated_table_id pay_event_updates.dated_table_id%type ;
553 l_pdi_success varchar2(1) ;
554 l_proc varchar2(72) := g_package||'pay_interpreter_ressult';
555 begin
556 hr_utility.set_location('Entering:'|| l_proc, 10);
557 hr_utility.set_location ('p_assignment_id '||p_assignment_id,10) ;
558 hr_utility.set_location ('p_event_group_id '||p_event_group_id,10);
559 hr_utility.set_location ('p_actl_date '||p_actl_date,10);
560 hr_utility.set_location ('p_dated_table_id '||p_dated_table_id,10);
561 hr_utility.set_location ('p_column_name '||p_column_name,10);
562 hr_utility.set_location ('p_effective_date '||p_effective_date,10);
563 hr_utility.set_location ('p_eff_date '||p_eff_date ,10);
564 hr_utility.set_location ('p_change_type '||p_change_type ,10);
565 hr_utility.set_location ('p_process_event_id '||p_process_event_id ,10);
566
567 l_pdi_success := 'N' ;
568 pay_interpreter_pkg.entry_affected(
569 p_element_entry_id => NULL
570 ,p_assignment_action_id => NULL
571 ,p_assignment_id => p_Assignment_id
572 ,p_mode => NULL
573 ,p_process => NULL
574 ,p_event_group_id => p_event_group_id
575 ,p_process_mode => 'ENTRY_CREATION_DATE'
576 ,p_start_date => p_actl_date-1
577 ,p_end_date => p_actl_date+1
578 ,t_detailed_output => l_pay_detail_tab
579 ,t_proration_dates => l_pay_proration_dates
580 ,t_proration_change_type => l_pay_proration_changes
581 ,t_proration_type => l_pay_pro_type_tab
582 );
583 hr_utility.set_location ('count '||l_pay_detail_tab.count,10) ;
584 if l_pay_detail_tab.count > 0 then
585
586
587 for l_pay in 1 .. l_pay_detail_tab.count
588 Loop
589 hr_utility.set_location ('dated_table_id '||l_pay_detail_tab(l_pay).dated_table_id,10) ;
590 hr_utility.set_location ('column_name '||l_pay_detail_tab(l_pay).column_name,10) ;
591 hr_utility.set_location ('effective_date '||l_pay_detail_tab(l_pay).effective_date,10) ;
595 and l_pay_detail_tab(l_pay).column_name = p_column_name
592 hr_utility.set_location ('change_mode '||l_pay_detail_tab(l_pay).change_mode,10) ;
593
594 if l_pay_detail_tab(l_pay).dated_table_id= p_dated_table_id
596 and l_pay_detail_tab(l_pay).effective_date= p_eff_date
597 and l_pay_detail_tab(l_pay).change_mode = p_change_type then
598 l_pdi_success := 'Y' ;
599 exit ;
600 end if ;
601 End Loop ;
602 end if ;
603 hr_utility.set_location(' Leaving:'||l_proc, 15);
604 Return l_pdi_success ;
605
606 end ;
607
608 end ben_EXT_CHG_EVT_api;