[Home] [Help]
PACKAGE BODY: APPS.PAY_RUN_TYPE_API
Source
1 Package Body pay_run_type_api as
2 /* $Header: pyprtapi.pkb 115.6 2003/02/01 13:41:18 prsundar noship $ */
3 --
4 -- Package Variables
5 --
6 g_package varchar2(33) := ' pay_run_type_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< create_run_type >-----------------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_run_type
13 (p_validate in boolean default false
14 ,p_effective_date in date
15 ,p_language_code in varchar2 default hr_api.userenv_lang
16 ,p_run_type_name in varchar2
17 ,p_run_method in varchar2
18 ,p_business_group_id in number default null
19 ,p_legislation_code in varchar2 default null
20 ,p_shortname in varchar2 default null
21 ,p_srs_flag in varchar2 default 'Y'
22 ,p_run_information_category in varchar2 default null
23 ,p_run_information1 in varchar2 default null
24 ,p_run_information2 in varchar2 default null
25 ,p_run_information3 in varchar2 default null
26 ,p_run_information4 in varchar2 default null
27 ,p_run_information5 in varchar2 default null
28 ,p_run_information6 in varchar2 default null
29 ,p_run_information7 in varchar2 default null
30 ,p_run_information8 in varchar2 default null
31 ,p_run_information9 in varchar2 default null
32 ,p_run_information10 in varchar2 default null
33 ,p_run_information11 in varchar2 default null
34 ,p_run_information12 in varchar2 default null
35 ,p_run_information13 in varchar2 default null
36 ,p_run_information14 in varchar2 default null
37 ,p_run_information15 in varchar2 default null
38 ,p_run_information16 in varchar2 default null
39 ,p_run_information17 in varchar2 default null
40 ,p_run_information18 in varchar2 default null
41 ,p_run_information19 in varchar2 default null
42 ,p_run_information20 in varchar2 default null
43 ,p_run_information21 in varchar2 default null
44 ,p_run_information22 in varchar2 default null
45 ,p_run_information23 in varchar2 default null
46 ,p_run_information24 in varchar2 default null
47 ,p_run_information25 in varchar2 default null
48 ,p_run_information26 in varchar2 default null
49 ,p_run_information27 in varchar2 default null
50 ,p_run_information28 in varchar2 default null
51 ,p_run_information29 in varchar2 default null
52 ,p_run_information30 in varchar2 default null
53 ,p_run_type_id out nocopy number
54 ,p_effective_start_date out nocopy date
55 ,p_effective_end_date out nocopy date
56 ,p_object_version_number out nocopy number
57 ) is
58 --
59 -- Declare cursors and local variables
60 --
61 l_proc varchar2(72) := g_package||'create_run_type';
62 l_effective_date date;
63 l_language_code varchar2(4);
64 --
65 -- Declare OUT variables
66 --
67 l_run_type_id pay_run_types_f.run_type_id%TYPE;
68 l_object_version_number pay_run_types_f.object_version_number%TYPE;
69 l_effective_start_date pay_run_types_f.effective_start_date%TYPE;
70 l_effective_end_date pay_run_types_f.effective_end_date%TYPE;
71 --
72 begin
73 hr_utility.set_location('Entering:'|| l_proc, 10);
74 --
75 -- Issue a savepoint
76 --
77 savepoint create_run_type;
78 --
79 -- Validate the language provided
80 --
81 l_language_code := p_language_code;
82 hr_api.validate_language_code(p_language_code => l_language_code);
83 --
84 -- Truncate the time portion from all IN date parameters
85 --
86 l_effective_date := trunc(p_effective_date);
87 hr_utility.set_location(l_proc, 20);
88 --
89 -- Call Before Process User Hook
90 --
91 begin
92 pay_run_type_bk1.create_run_type_b
93 (p_effective_date => l_effective_date
94 ,p_language_code => l_language_code
95 ,p_run_type_name => p_run_type_name
96 ,p_run_method => p_run_method
97 ,p_business_group_id => p_business_group_id
98 ,p_legislation_code => p_legislation_code
99 ,p_shortname => p_shortname
100 ,p_srs_flag => p_srs_flag
101 ,p_run_information_category => p_run_information_category
102 ,p_run_information1 => p_run_information1
103 ,p_run_information2 => p_run_information2
104 ,p_run_information3 => p_run_information3
105 ,p_run_information4 => p_run_information4
106 ,p_run_information5 => p_run_information5
107 ,p_run_information6 => p_run_information6
108 ,p_run_information7 => p_run_information7
109 ,p_run_information8 => p_run_information8
110 ,p_run_information9 => p_run_information9
111 ,p_run_information10 => p_run_information10
112 ,p_run_information11 => p_run_information11
113 ,p_run_information12 => p_run_information12
114 ,p_run_information13 => p_run_information13
115 ,p_run_information14 => p_run_information14
116 ,p_run_information15 => p_run_information15
117 ,p_run_information16 => p_run_information16
118 ,p_run_information17 => p_run_information17
119 ,p_run_information18 => p_run_information18
120 ,p_run_information19 => p_run_information19
121 ,p_run_information20 => p_run_information20
122 ,p_run_information21 => p_run_information21
123 ,p_run_information22 => p_run_information22
124 ,p_run_information23 => p_run_information23
125 ,p_run_information24 => p_run_information24
126 ,p_run_information25 => p_run_information25
127 ,p_run_information26 => p_run_information26
128 ,p_run_information27 => p_run_information27
129 ,p_run_information28 => p_run_information28
130 ,p_run_information29 => p_run_information29
131 ,p_run_information30 => p_run_information30
132 );
133 exception
134 when hr_api.cannot_find_prog_unit then
135 hr_api.cannot_find_prog_unit_error
136 (p_module_name => 'create_run_type'
137 ,p_hook_type => 'BP'
138 );
139 end;
140 hr_utility.set_location(l_proc, 30);
141 --
142 -- Validation in addition to Row Handlers
143 --
144 hr_utility.set_location(l_proc, 40);
145 --
146 -- Process Logic
147 --
148 -- Call the row handler
149 --
150 pay_prt_ins.ins
151 (p_effective_date => l_effective_date
152 ,p_run_type_name => p_run_type_name
153 ,p_run_method => p_run_method
154 ,p_business_group_id => p_business_group_id
155 ,p_legislation_code => p_legislation_code
156 ,p_shortname => p_shortname
157 ,p_srs_flag => p_srs_flag
158 ,p_run_information_category => p_run_information_category
159 ,p_run_information1 => p_run_information1
160 ,p_run_information2 => p_run_information2
161 ,p_run_information3 => p_run_information3
162 ,p_run_information4 => p_run_information4
163 ,p_run_information5 => p_run_information5
164 ,p_run_information6 => p_run_information6
165 ,p_run_information7 => p_run_information7
166 ,p_run_information8 => p_run_information8
167 ,p_run_information9 => p_run_information9
168 ,p_run_information10 => p_run_information10
169 ,p_run_information11 => p_run_information11
170 ,p_run_information12 => p_run_information12
171 ,p_run_information13 => p_run_information13
172 ,p_run_information14 => p_run_information14
173 ,p_run_information15 => p_run_information15
174 ,p_run_information16 => p_run_information16
175 ,p_run_information17 => p_run_information17
176 ,p_run_information18 => p_run_information18
177 ,p_run_information19 => p_run_information19
178 ,p_run_information20 => p_run_information20
179 ,p_run_information21 => p_run_information21
180 ,p_run_information22 => p_run_information22
181 ,p_run_information23 => p_run_information23
182 ,p_run_information24 => p_run_information24
183 ,p_run_information25 => p_run_information25
184 ,p_run_information26 => p_run_information26
185 ,p_run_information27 => p_run_information27
186 ,p_run_information28 => p_run_information28
187 ,p_run_information29 => p_run_information29
188 ,p_run_information30 => p_run_information30
189 ,p_run_type_id => l_run_type_id
190 ,p_object_version_number => l_object_version_number
191 ,p_effective_start_date => l_effective_start_date
192 ,p_effective_end_date => l_effective_end_date
193 );
194 --
195 hr_utility.set_location(l_proc, 50);
196 --
197 -- Create the translation rows
198 --
199 pay_rtt_ins.ins_tl(p_language_code => l_language_code
200 ,p_run_type_id => l_run_type_id
201 ,p_run_type_name => p_run_type_name
202 ,p_shortname => p_shortname
203 );
204 --
205 -- Call After Process User Hook
206 --
207 begin
208 pay_run_type_bk1.create_run_type_a
209 (p_effective_date => l_effective_date
210 ,p_language_code => l_language_code
211 ,p_run_type_name => p_run_type_name
212 ,p_run_method => p_run_method
213 ,p_business_group_id => p_business_group_id
214 ,p_legislation_code => p_legislation_code
215 ,p_shortname => p_shortname
216 ,p_srs_flag => p_srs_flag
217 ,p_run_information_category => p_run_information_category
218 ,p_run_information1 => p_run_information1
219 ,p_run_information2 => p_run_information2
220 ,p_run_information3 => p_run_information3
221 ,p_run_information4 => p_run_information4
222 ,p_run_information5 => p_run_information5
223 ,p_run_information6 => p_run_information6
224 ,p_run_information7 => p_run_information7
225 ,p_run_information8 => p_run_information8
226 ,p_run_information9 => p_run_information9
227 ,p_run_information10 => p_run_information10
228 ,p_run_information11 => p_run_information11
229 ,p_run_information12 => p_run_information12
230 ,p_run_information13 => p_run_information13
231 ,p_run_information14 => p_run_information14
232 ,p_run_information15 => p_run_information15
233 ,p_run_information16 => p_run_information16
234 ,p_run_information17 => p_run_information17
235 ,p_run_information18 => p_run_information18
236 ,p_run_information19 => p_run_information19
237 ,p_run_information20 => p_run_information20
238 ,p_run_information21 => p_run_information21
239 ,p_run_information22 => p_run_information22
240 ,p_run_information23 => p_run_information23
241 ,p_run_information24 => p_run_information24
242 ,p_run_information25 => p_run_information25
243 ,p_run_information26 => p_run_information26
244 ,p_run_information27 => p_run_information27
245 ,p_run_information28 => p_run_information28
246 ,p_run_information29 => p_run_information29
247 ,p_run_information30 => p_run_information30
248 ,p_run_type_id => l_run_type_id
249 ,p_effective_start_date => l_effective_start_date
250 ,p_effective_end_date => l_effective_end_date
251 ,p_object_version_number => l_object_version_number
252 );
253 exception
254 when hr_api.cannot_find_prog_unit then
255 hr_api.cannot_find_prog_unit_error
256 (p_module_name => 'create_run_type_a'
257 ,p_hook_type => 'AP'
258 );
259 end;
260 hr_utility.set_location(l_proc, 60);
261 --
262 -- When in validation only mode raise the Validate_Enabled exception
263 --
264 if p_validate then
265 raise hr_api.validate_enabled;
266 end if;
267 --
268 -- Set all output arguments
269 --
270 p_run_type_id := l_run_type_id;
271 p_effective_start_date := l_effective_start_date;
272 p_effective_end_date := l_effective_end_date;
273 p_object_version_number := l_object_version_number;
274 --
275 hr_utility.set_location(' Leaving:'||l_proc, 70);
276 exception
277 when hr_api.validate_enabled then
278 --
279 -- As the Validate_Enabled exception has been raised
280 -- we must rollback to the savepoint
281 --
282 rollback to create_run_type;
283 --
284 -- Only set output warning arguments
285 -- (Any key or derived arguments must be set to null
286 -- when validation only mode is being used.)
287 --
288 p_run_type_id := null;
289 p_object_version_number := null;
290 p_effective_start_date := null;
291 p_effective_end_date := null;
292 hr_utility.set_location(' Leaving:'||l_proc, 80);
293 when others then
294 --
295 -- A validation or unexpected error has occured
296 --
297 rollback to create_run_type;
298 raise;
299 hr_utility.set_location(' Leaving:'||l_proc, 90);
300 end create_run_type;
301 --
302 -- ----------------------------------------------------------------------------
303 -- |--------------------------< update_run_type >-----------------------------|
304 -- ----------------------------------------------------------------------------
305 --
306 procedure update_run_type
307 (p_validate in boolean default false
308 ,p_effective_date in date
309 ,p_datetrack_update_mode in varchar2
310 ,p_language_code in varchar2 default hr_api.userenv_lang
311 ,p_run_type_id in number
312 ,p_object_version_number in out nocopy number
313 ,p_business_group_id in number default hr_api.g_number
314 ,p_legislation_code in varchar2 default hr_api.g_varchar2
315 ,p_shortname in varchar2 default hr_api.g_varchar2
316 ,p_srs_flag in varchar2 default hr_api.g_varchar2
317 ,p_run_information_category in varchar2 default hr_api.g_varchar2
318 ,p_run_information1 in varchar2 default hr_api.g_varchar2
319 ,p_run_information2 in varchar2 default hr_api.g_varchar2
320 ,p_run_information3 in varchar2 default hr_api.g_varchar2
321 ,p_run_information4 in varchar2 default hr_api.g_varchar2
322 ,p_run_information5 in varchar2 default hr_api.g_varchar2
323 ,p_run_information6 in varchar2 default hr_api.g_varchar2
324 ,p_run_information7 in varchar2 default hr_api.g_varchar2
325 ,p_run_information8 in varchar2 default hr_api.g_varchar2
326 ,p_run_information9 in varchar2 default hr_api.g_varchar2
327 ,p_run_information10 in varchar2 default hr_api.g_varchar2
328 ,p_run_information11 in varchar2 default hr_api.g_varchar2
329 ,p_run_information12 in varchar2 default hr_api.g_varchar2
330 ,p_run_information13 in varchar2 default hr_api.g_varchar2
331 ,p_run_information14 in varchar2 default hr_api.g_varchar2
332 ,p_run_information15 in varchar2 default hr_api.g_varchar2
333 ,p_run_information16 in varchar2 default hr_api.g_varchar2
334 ,p_run_information17 in varchar2 default hr_api.g_varchar2
335 ,p_run_information18 in varchar2 default hr_api.g_varchar2
336 ,p_run_information19 in varchar2 default hr_api.g_varchar2
337 ,p_run_information20 in varchar2 default hr_api.g_varchar2
338 ,p_run_information21 in varchar2 default hr_api.g_varchar2
339 ,p_run_information22 in varchar2 default hr_api.g_varchar2
340 ,p_run_information23 in varchar2 default hr_api.g_varchar2
341 ,p_run_information24 in varchar2 default hr_api.g_varchar2
342 ,p_run_information25 in varchar2 default hr_api.g_varchar2
343 ,p_run_information26 in varchar2 default hr_api.g_varchar2
344 ,p_run_information27 in varchar2 default hr_api.g_varchar2
345 ,p_run_information28 in varchar2 default hr_api.g_varchar2
346 ,p_run_information29 in varchar2 default hr_api.g_varchar2
347 ,p_run_information30 in varchar2 default hr_api.g_varchar2
348 ,p_effective_start_date out nocopy date
349 ,p_effective_end_date out nocopy date
350 ) is
351 --
352 -- Declare cursors and local variables
353 --
354
355 l_proc varchar2(72) := g_package||'update_run_type';
356 l_effective_date date;
357 l_language_code varchar2(4);
358 --
359 -- Declare OUT variables
360 --
361 l_effective_start_date pay_run_types_f.effective_start_date%TYPE;
362 l_effective_end_date pay_run_types_f.effective_end_date%TYPE;
363 --
364 -- Declare IN OUT variable
365 --
366 l_object_version_number pay_run_types_f.object_version_number%TYPE;
367 --
368 begin
369 hr_utility.set_location('Entering:'|| l_proc, 10);
370 --
371 -- Issue a savepoint and assign in-out parameters to local variable
372 --
373 l_object_version_number := p_object_version_number;
374 savepoint update_run_type;
375 --
376 -- Validate language code
377 --
378 l_language_code := p_language_code;
379 hr_api.validate_language_code(p_language_code => l_language_code);
380 --
381 -- Truncate the time portion from all IN date parameters
382 --
383 l_effective_date := trunc(p_effective_date);
384 hr_utility.set_location(l_proc, 20);
385 --
386 -- Call Before Process User Hook
387 --
388 begin
389 pay_run_type_bk2.update_run_type_b
390 (p_effective_date => l_effective_date
391 ,p_datetrack_update_mode => p_datetrack_update_mode
392 ,p_language_code => l_language_code
393 ,p_run_type_id => p_run_type_id
394 ,p_object_version_number => p_object_version_number
395 ,p_business_group_id => p_business_group_id
396 ,p_legislation_code => p_legislation_code
397 ,p_shortname => p_shortname
398 ,p_srs_flag => p_srs_flag
399 ,p_run_information_category => p_run_information_category
400 ,p_run_information1 => p_run_information1
401 ,p_run_information2 => p_run_information2
402 ,p_run_information3 => p_run_information3
403 ,p_run_information4 => p_run_information4
404 ,p_run_information5 => p_run_information5
405 ,p_run_information6 => p_run_information6
406 ,p_run_information7 => p_run_information7
407 ,p_run_information8 => p_run_information8
408 ,p_run_information9 => p_run_information9
409 ,p_run_information10 => p_run_information10
410 ,p_run_information11 => p_run_information11
411 ,p_run_information12 => p_run_information12
412 ,p_run_information13 => p_run_information13
413 ,p_run_information14 => p_run_information14
414 ,p_run_information15 => p_run_information15
415 ,p_run_information16 => p_run_information16
416 ,p_run_information17 => p_run_information17
417 ,p_run_information18 => p_run_information18
418 ,p_run_information19 => p_run_information19
419 ,p_run_information20 => p_run_information20
420 ,p_run_information21 => p_run_information21
421 ,p_run_information22 => p_run_information22
422 ,p_run_information23 => p_run_information23
423 ,p_run_information24 => p_run_information24
424 ,p_run_information25 => p_run_information25
425 ,p_run_information26 => p_run_information26
426 ,p_run_information27 => p_run_information27
427 ,p_run_information28 => p_run_information28
428 ,p_run_information29 => p_run_information29
429 ,p_run_information30 => p_run_information30
430 );
431 exception
432 when hr_api.cannot_find_prog_unit then
433 hr_api.cannot_find_prog_unit_error
434 (p_module_name => 'update_run_type'
435 ,p_hook_type => 'BP'
436 );
437 end;
438 hr_utility.set_location(l_proc, 30);
439 --
440 -- Validation in addition to Row Handlers
441 --
442 hr_utility.set_location(l_proc, 40);
443 --
444 -- Process Logic
445 --
446 -- Call the row handler
447 --
448 pay_prt_upd.upd
449 (p_effective_date => l_effective_date
450 ,p_datetrack_mode => p_datetrack_update_mode
451 ,p_run_type_id => p_run_type_id
452 ,p_object_version_number => p_object_version_number
453 ,p_shortname => p_shortname
454 ,p_srs_flag => p_srs_flag
455 ,p_run_information_category => p_run_information_category
456 ,p_run_information1 => p_run_information1
457 ,p_run_information2 => p_run_information2
458 ,p_run_information3 => p_run_information3
459 ,p_run_information4 => p_run_information4
460 ,p_run_information5 => p_run_information5
461 ,p_run_information6 => p_run_information6
462 ,p_run_information7 => p_run_information7
463 ,p_run_information8 => p_run_information8
464 ,p_run_information9 => p_run_information9
465 ,p_run_information10 => p_run_information10
466 ,p_run_information11 => p_run_information11
467 ,p_run_information12 => p_run_information12
468 ,p_run_information13 => p_run_information13
469 ,p_run_information14 => p_run_information14
470 ,p_run_information15 => p_run_information15
471 ,p_run_information16 => p_run_information16
472 ,p_run_information17 => p_run_information17
473 ,p_run_information18 => p_run_information18
474 ,p_run_information19 => p_run_information19
475 ,p_run_information20 => p_run_information20
476 ,p_run_information21 => p_run_information21
477 ,p_run_information22 => p_run_information22
478 ,p_run_information23 => p_run_information23
479 ,p_run_information24 => p_run_information24
480 ,p_run_information25 => p_run_information25
481 ,p_run_information26 => p_run_information26
482 ,p_run_information27 => p_run_information27
483 ,p_run_information28 => p_run_information28
484 ,p_run_information29 => p_run_information29
485 ,p_run_information30 => p_run_information30
486 ,p_effective_start_date => l_effective_start_date
487 ,p_effective_end_date => l_effective_end_date
488 );
489 --
490 hr_utility.set_location(l_proc, 50);
491 --
492 -- Call the upd tl table
493 --
494 pay_rtt_upd.upd_tl
495 (p_language_code => l_language_code
496 ,p_run_type_id => p_run_type_id
497 ,p_shortname => p_shortname
498 );
499 --
500 -- Call After Process User Hook
501 --
502 begin
503 pay_run_type_bk2.update_run_type_a
504 (p_effective_date => l_effective_date
505 ,p_datetrack_update_mode => p_datetrack_update_mode
506 ,p_language_code => l_language_code
507 ,p_run_type_id => p_run_type_id
508 ,p_object_version_number => p_object_version_number
509 ,p_business_group_id => p_business_group_id
510 ,p_legislation_code => p_legislation_code
511 ,p_shortname => p_shortname
512 ,p_srs_flag => p_srs_flag
513 ,p_effective_start_date => l_effective_start_date
514 ,p_effective_end_date => l_effective_end_date
515 ,p_run_information_category => p_run_information_category
516 ,p_run_information1 => p_run_information1
517 ,p_run_information2 => p_run_information2
518 ,p_run_information3 => p_run_information3
519 ,p_run_information4 => p_run_information4
520 ,p_run_information5 => p_run_information5
521 ,p_run_information6 => p_run_information6
522 ,p_run_information7 => p_run_information7
523 ,p_run_information8 => p_run_information8
524 ,p_run_information9 => p_run_information9
525 ,p_run_information10 => p_run_information10
526 ,p_run_information11 => p_run_information11
527 ,p_run_information12 => p_run_information12
528 ,p_run_information13 => p_run_information13
529 ,p_run_information14 => p_run_information14
530 ,p_run_information15 => p_run_information15
531 ,p_run_information16 => p_run_information16
532 ,p_run_information17 => p_run_information17
533 ,p_run_information18 => p_run_information18
534 ,p_run_information19 => p_run_information19
535 ,p_run_information20 => p_run_information20
536 ,p_run_information21 => p_run_information21
537 ,p_run_information22 => p_run_information22
538 ,p_run_information23 => p_run_information23
539 ,p_run_information24 => p_run_information24
540 ,p_run_information25 => p_run_information25
541 ,p_run_information26 => p_run_information26
542 ,p_run_information27 => p_run_information27
543 ,p_run_information28 => p_run_information28
544 ,p_run_information29 => p_run_information29
545 ,p_run_information30 => p_run_information30
546 );
547 exception
548 when hr_api.cannot_find_prog_unit then
549 hr_api.cannot_find_prog_unit_error
550 (p_module_name => 'update_run_type_a'
551 ,p_hook_type => 'AP'
552 );
553 end;
554 hr_utility.set_location(l_proc, 60);
555 --
556 -- When in validation only mode raise the Validate_Enabled exception
557 --
558 if p_validate then
559 raise hr_api.validate_enabled;
560 end if;
561 --
562 -- Set all output arguments
563 --
564 p_effective_start_date := l_effective_start_date;
565 p_effective_end_date := l_effective_end_date;
566 p_object_version_number := p_object_version_number;
567 --
568 hr_utility.set_location(' Leaving:'||l_proc, 70);
569 exception
570 when hr_api.validate_enabled then
571 --
572 -- As the Validate_Enabled exception has been raised
573 -- we must rollback to the savepoint
574 --
575 rollback to update_run_type;
576 --
577 -- Only set output warning arguments
578 -- (Any key or derived arguments must be set to null
579 -- when validation only mode is being used.)
580 --
581 p_object_version_number := l_object_version_number;
582 p_effective_start_date := null;
583 p_effective_end_date := null;
584 hr_utility.set_location(' Leaving:'||l_proc, 80);
585 when others then
586 --
587 -- A validation or unexpected error has occured
588 --
589 rollback to update_run_type;
590 raise;
591 hr_utility.set_location(' Leaving:'||l_proc, 90);
592 end update_run_type;
593 -- ----------------------------------------------------------------------------
594 -- |----------------------------< delete_run_type >---------------------------|
595 -- ----------------------------------------------------------------------------
596 procedure delete_run_type
597 (p_validate in boolean default false
598 ,p_effective_date in date
599 ,p_datetrack_delete_mode in varchar2
600 ,p_run_type_id in number
601 ,p_object_version_number in out nocopy number
602 ,p_business_group_id in number default hr_api.g_number
603 ,p_legislation_code in varchar2 default hr_api.g_varchar2
604 ,p_effective_start_date out nocopy date
605 ,p_effective_end_date out nocopy date
606 ) is
607 --
608 -- Declare cursors and local variables
609 --
610 l_proc varchar2(72) := g_package||'delete_run_type';
611 l_effective_date date;
612 --
613 -- Declare OUT variables
614 --
615 l_effective_start_date pay_run_types_f.effective_start_date%type;
616 l_effective_end_date pay_run_types_f.effective_end_date%type;
617 l_validation_start_date date;
618 l_validation_end_date date;
619 l_object_version_number pay_run_types_f.object_version_number%type;
620 --
621 begin
622 hr_utility.set_location('Entering:'|| l_proc, 5);
623 --
624 -- Issue a savepoint and assign in-out parameters to local variable
625 --
626 savepoint delete_run_type;
627 l_object_version_number := p_object_version_number;
628 --
629 hr_utility.set_location(l_proc, 10);
630 --
631 l_effective_date := trunc(p_effective_date);
632 --
633 -- Call Before Process User Hook
634 --
635 begin
636 pay_run_type_bk3.delete_run_type_b
637 (p_effective_date => l_effective_date
638 ,p_datetrack_delete_mode => p_datetrack_delete_mode
639 ,p_run_type_id => p_run_type_id
640 ,p_object_version_number => p_object_version_number
641 ,p_business_group_id => p_business_group_id
642 ,p_legislation_code => p_legislation_code
643 );
644 exception
645 when hr_api.cannot_find_prog_unit then
646 hr_api.cannot_find_prog_unit_error
647 (p_module_name => 'delete_run_type'
648 ,p_hook_type => 'BP'
649 );
650 end;
651 --
652 hr_utility.set_location(l_proc, 20);
653 --
654 -- Validation in addition to Row Handlers
655 --
656 hr_utility.set_location(l_proc, 30);
657 --
658 -- Lock the non-translated table row handler for ZAP datetrack delete mode
659 --
660 if p_datetrack_delete_mode = hr_api.g_zap then
661 --
662 pay_prt_shd.lck(p_effective_date => l_effective_date
663 ,p_datetrack_mode => p_datetrack_delete_mode
664 ,p_run_type_id => p_run_type_id
665 ,p_object_version_number => p_object_version_number
666 ,p_validation_start_date => l_validation_start_date
667 ,p_validation_end_date => l_validation_end_date
668 );
669 --
670 -- Call tl table delete row handler
671 --
672 pay_rtt_del.del_tl(p_run_type_id => p_run_type_id);
673 --
674 end if; -- mode = ZAP
675 --
676 -- Call the row handler to delete the run_type
677 --
678 pay_prt_del.del
679 (p_effective_date => l_effective_date
680 ,p_datetrack_mode => p_datetrack_delete_mode
681 ,p_run_type_id => p_run_type_id
682 ,p_object_version_number => p_object_version_number
683 ,p_effective_start_date => l_effective_start_date
684 ,p_effective_end_date => l_effective_end_date
685 );
686 --
687 hr_utility.set_location(l_proc, 50);
688 --
689 -- Call After Process User Hook
690 --
691 begin
692 pay_run_type_bk3.delete_run_type_a
693 (p_effective_date => l_effective_date
694 ,p_datetrack_delete_mode => p_datetrack_delete_mode
695 ,p_run_type_id => p_run_type_id
696 ,p_object_version_number => p_object_version_number
697 ,p_business_group_id => p_business_group_id
698 ,p_legislation_code => p_legislation_code
699 ,p_effective_start_date => l_effective_start_date
700 ,p_effective_end_date => l_effective_end_date
701 );
702 --
703 end;
704 hr_utility.set_location(l_proc, 60);
705 --
706 -- When in validation only mode raise the Validate_Enabled exception
707 --
708 if p_validate then
709 raise hr_api.validate_enabled;
710 end if;
711 --
712 -- Set out parameters
713 --
714 p_object_version_number := p_object_version_number;
715 p_effective_start_date := l_effective_start_date;
716 p_effective_end_date := l_effective_end_date;
717 --
718 hr_utility.set_location(l_proc, 70);
719 exception
720 when hr_api.validate_enabled then
721 --
722 -- As the Validate_Enabled exception has been raised
723 -- we must rollback to the savepoint
724 --
725 ROLLBACK TO delete_run_type;
726 --
727 -- Only set output warning arguments
728 -- (Any key or derived arguments must be set to null
729 -- when validation only mode is being used.)
730 --
731 p_object_version_number := l_object_version_number;
732 p_effective_start_date := null;
733 p_effective_end_date := null;
734 --
735 when others then
736 --
737 -- A validation or unexpected error has occurred
738 --
739 ROLLBACK TO delete_run_type;
740 raise;
741 hr_utility.set_location(' Leaving:'||l_proc, 80);
742 --
743 end delete_run_type;
744 -- ----------------------------------------------------------------------------
745 end pay_run_type_api;