[Home] [Help]
PACKAGE BODY: APPS.OTA_LP_MEMBER_ENROLLMENT_API
Source
1 Package Body OTA_LP_MEMBER_ENROLLMENT_API as
2 /* $Header: otlmeapi.pkb 120.0.12010000.2 2009/05/14 07:44:34 pekasi ship $ */
3 --
4 -- Package Variables
5 --
6 g_package varchar2(33) := ' OTA_LP_MEMBER_ENROLLMENT_API.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-------------------------< CREATE_LP_MEMBER_ENROLLMENT >------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_lp_member_enrollment
13 ( p_effective_date in date,
14 p_validate in boolean default false ,
15 p_lp_enrollment_id in number,
16 p_learning_path_section_id in number default null,
17 p_learning_path_member_id in number default null,
18 p_member_status_code in varchar2,
19 p_completion_target_date in date default null,
20 p_completion_date in date default null,
21 p_business_group_id in number,
22 p_attribute_category in varchar2 default null,
23 p_attribute1 in varchar2 default null,
24 p_attribute2 in varchar2 default null,
25 p_attribute3 in varchar2 default null,
26 p_attribute4 in varchar2 default null,
27 p_attribute5 in varchar2 default null,
28 p_attribute6 in varchar2 default null,
29 p_attribute7 in varchar2 default null,
30 p_attribute8 in varchar2 default null,
31 p_attribute9 in varchar2 default null,
32 p_attribute10 in varchar2 default null,
33 p_attribute11 in varchar2 default null,
34 p_attribute12 in varchar2 default null,
35 p_attribute13 in varchar2 default null,
36 p_attribute14 in varchar2 default null,
37 p_attribute15 in varchar2 default null,
38 p_attribute16 in varchar2 default null,
39 p_attribute17 in varchar2 default null,
40 p_attribute18 in varchar2 default null,
41 p_attribute19 in varchar2 default null,
42 p_attribute20 in varchar2 default null,
43 p_attribute21 in varchar2 default null,
44 p_attribute22 in varchar2 default null,
45 p_attribute23 in varchar2 default null,
46 p_attribute24 in varchar2 default null,
47 p_attribute25 in varchar2 default null,
48 p_attribute26 in varchar2 default null,
49 p_attribute27 in varchar2 default null,
50 p_attribute28 in varchar2 default null,
51 p_attribute29 in varchar2 default null,
52 p_attribute30 in varchar2 default null,
53 p_creator_person_id in number default null,
54 p_event_id in number default null,
55 p_lp_member_enrollment_id out nocopy number,
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_lp_member_enrollment';
62 l_lp_member_enrollment_id number;
63 l_object_version_number number;
64 l_effective_date date;
65
66 l_member_status_code ota_lp_member_enrollments.member_status_code%TYPE := p_member_status_code;
67 l_completion_date ota_lp_member_enrollments.completion_date%TYPE := p_completion_date;
68 l_activity_version_id ota_activity_versions.activity_version_id%TYPE;
69
70 CURSOR csr_get_course_id IS
71 SELECT activity_version_id
72 FROM ota_learning_path_members
73 WHERE learning_path_member_id = p_learning_path_member_id;
74
75 begin
76 hr_utility.set_location('Entering:'|| l_proc, 10);
77 --
78 -- Issue a savepoint
79 --
80 savepoint CREATE_LP_MEMBER_ENROLLMENT;
81 l_effective_date := trunc(p_effective_date);
82
83 IF p_member_status_code = 'PLANNED' THEN
84 OPEN csr_get_course_id;
85 FETCH csr_get_course_id INTO l_activity_version_id;
86 CLOSE csr_get_course_id;
87 ota_lrng_path_member_util.calculate_lme_status(p_activity_version_id => l_activity_version_id,
88 p_lp_enrollment_id => p_lp_enrollment_id,
89 p_member_status_code => l_member_status_code,
90 p_completion_date => l_completion_date);
91 END IF;
92
93 begin
94 ota_lp_member_enrollment_bk1.create_lp_member_enrollment_b
95 ( p_effective_date => l_effective_date
96 ,p_validate => p_validate
97 ,p_lp_enrollment_id => p_lp_enrollment_id
98 ,p_business_group_id => p_business_group_id
99 ,p_learning_path_section_id => p_learning_path_section_id
100 ,p_learning_path_member_id => p_learning_path_member_id
101 ,p_member_status_code => l_member_status_code
102 ,p_completion_target_date => p_completion_target_date
103 ,p_completion_date => l_completion_date
104 ,p_attribute_category => p_attribute_category
105 ,p_attribute1 => p_attribute1
106 ,p_attribute2 => p_attribute2
107 ,p_attribute3 => p_attribute3
108 ,p_attribute4 => p_attribute4
109 ,p_attribute5 => p_attribute5
110 ,p_attribute6 => p_attribute6
111 ,p_attribute7 => p_attribute7
112 ,p_attribute8 => p_attribute8
113 ,p_attribute9 => p_attribute9
114 ,p_attribute10 => p_attribute10
115 ,p_attribute11 => p_attribute11
116 ,p_attribute12 => p_attribute12
117 ,p_attribute13 => p_attribute13
118 ,p_attribute14 => p_attribute14
119 ,p_attribute15 => p_attribute15
120 ,p_attribute16 => p_attribute16
121 ,p_attribute17 => p_attribute17
122 ,p_attribute18 => p_attribute18
123 ,p_attribute19 => p_attribute19
124 ,p_attribute20 => p_attribute20
125 ,p_attribute21 => p_attribute21
126 ,p_attribute22 => p_attribute22
127 ,p_attribute23 => p_attribute23
128 ,p_attribute24 => p_attribute24
129 ,p_attribute25 => p_attribute25
130 ,p_attribute26 => p_attribute26
131 ,p_attribute27 => p_attribute27
132 ,p_attribute28 => p_attribute28
133 ,p_attribute29 => p_attribute29
134 ,p_attribute30 => p_attribute30
135 ,p_creator_person_id => p_creator_person_id
136 ,p_event_id => p_event_id
137 );
138 exception
139 when hr_api.cannot_find_prog_unit then
140 hr_api.cannot_find_prog_unit_error
141 (p_module_name => 'CREATE_LP_MEMBER_ENROLLMENT'
142 ,p_hook_type => 'BP'
143 );
144 end;
145
146 --
147 -- Process Logic
148 --
149 ota_lme_ins.ins
150 (
151 p_effective_date => l_effective_date
152 ,p_lp_enrollment_id => p_lp_enrollment_id
153 ,p_learning_path_section_id => p_learning_path_section_id
154 ,p_learning_path_member_id => p_learning_path_member_id
155 ,p_member_status_code => l_member_status_code
156 ,p_business_group_id => p_business_group_id
157 ,p_completion_target_date => p_completion_target_date
158 ,p_completion_date => l_completion_date
159 ,p_attribute_category => p_attribute_category
160 ,p_attribute1 => p_attribute1
161 ,p_attribute2 => p_attribute2
162 ,p_attribute3 => p_attribute3
163 ,p_attribute4 => p_attribute4
164 ,p_attribute5 => p_attribute5
165 ,p_attribute6 => p_attribute6
166 ,p_attribute7 => p_attribute7
167 ,p_attribute8 => p_attribute8
168 ,p_attribute9 => p_attribute9
169 ,p_attribute10 => p_attribute10
170 ,p_attribute11 => p_attribute11
171 ,p_attribute12 => p_attribute12
172 ,p_attribute13 => p_attribute13
173 ,p_attribute14 => p_attribute14
174 ,p_attribute15 => p_attribute15
175 ,p_attribute16 => p_attribute16
176 ,p_attribute17 => p_attribute17
177 ,p_attribute18 => p_attribute18
178 ,p_attribute19 => p_attribute19
179 ,p_attribute20 => p_attribute20
180 ,p_attribute21 => p_attribute21
181 ,p_attribute22 => p_attribute22
182 ,p_attribute23 => p_attribute23
183 ,p_attribute24 => p_attribute24
184 ,p_attribute25 => p_attribute25
185 ,p_attribute26 => p_attribute26
186 ,p_attribute27 => p_attribute27
187 ,p_attribute28 => p_attribute28
188 ,p_attribute29 => p_attribute29
189 ,p_attribute30 => p_attribute30
190 ,p_creator_person_id => p_creator_person_id
191 ,p_event_id => p_event_id
192 ,p_lp_member_enrollment_id => l_lp_member_enrollment_id
193 ,p_object_version_number => l_object_version_number
194 );
195 --
196 -- Set all output arguments
197 --
198 p_lp_member_enrollment_id := l_lp_member_enrollment_id;
199 p_object_version_number := l_object_version_number;
200
201 begin
202 ota_lp_member_enrollment_bk1.create_lp_member_enrollment_a
203 ( p_effective_date => l_effective_date
204 ,p_validate => p_validate
205 ,p_lp_enrollment_id => p_lp_enrollment_id
206 ,p_business_group_id => p_business_group_id
207 ,p_learning_path_section_id => p_learning_path_section_id
208 ,p_learning_path_member_id => p_learning_path_member_id
209 ,p_member_status_code => l_member_status_code
210 ,p_completion_target_date => p_completion_target_date
211 ,p_completion_date => l_completion_date
212 ,p_attribute_category => p_attribute_category
213 ,p_attribute1 => p_attribute1
214 ,p_attribute2 => p_attribute2
215 ,p_attribute3 => p_attribute3
216 ,p_attribute4 => p_attribute4
217 ,p_attribute5 => p_attribute5
218 ,p_attribute6 => p_attribute6
219 ,p_attribute7 => p_attribute7
220 ,p_attribute8 => p_attribute8
221 ,p_attribute9 => p_attribute9
222 ,p_attribute10 => p_attribute10
223 ,p_attribute11 => p_attribute11
224 ,p_attribute12 => p_attribute12
225 ,p_attribute13 => p_attribute13
226 ,p_attribute14 => p_attribute14
227 ,p_attribute15 => p_attribute15
228 ,p_attribute16 => p_attribute16
229 ,p_attribute17 => p_attribute17
230 ,p_attribute18 => p_attribute18
231 ,p_attribute19 => p_attribute19
232 ,p_attribute20 => p_attribute20
233 ,p_attribute21 => p_attribute21
234 ,p_attribute22 => p_attribute22
235 ,p_attribute23 => p_attribute23
236 ,p_attribute24 => p_attribute24
237 ,p_attribute25 => p_attribute25
238 ,p_attribute26 => p_attribute26
239 ,p_attribute27 => p_attribute27
240 ,p_attribute28 => p_attribute28
241 ,p_attribute29 => p_attribute29
242 ,p_attribute30 => p_attribute30
243 ,p_creator_person_id => p_creator_person_id
244 ,p_event_id => p_event_id
245 );
246
247 exception
248 when hr_api.cannot_find_prog_unit then
249 hr_api.cannot_find_prog_unit_error
250 (p_module_name => 'CREATE_LP_MEMBER_ENROLLMENT'
251 ,p_hook_type => 'AP'
252 );
253 end;
254
255 --
256 -- When in validation only mode raise the Validate_Enabled exception
257 --
258 if p_validate then
259 raise hr_api.validate_enabled;
260 end if;
261
262 hr_utility.set_location(' Leaving:'||l_proc, 70);
263 exception
264 when hr_api.validate_enabled then
265 --
266 -- As the Validate_Enabled exception has been raised
267 -- we must rollback to the savepoint
268 --
269 rollback to CREATE_LP_MEMBER_ENROLLMENT;
270 --
271 -- Only set output warning arguments
272 -- (Any key or derived arguments must be set to null
273 -- when validation only mode is being used.)
274 --
275 p_lp_member_enrollment_id := null;
276 p_object_version_number := null;
277 hr_utility.set_location(' Leaving:'||l_proc, 80);
278 when others then
279 --
280 -- A validation or unexpected error has occured
281 --
282 rollback to CREATE_LP_MEMBER_ENROLLMENT;
283 p_lp_member_enrollment_id := null;
284 p_object_version_number := null;
285 hr_utility.set_location(' Leaving:'||l_proc, 90);
286 raise;
287 end create_lp_member_enrollment;
288 -- ----------------------------------------------------------------------------
289 -- |-------------------------< UPDATE_LP_MEMBER_ENROLLMENT >-------------------------|
290 -- ----------------------------------------------------------------------------
291 --
292 procedure update_lp_member_enrollment
293 ( p_effective_date in date,
294 p_lp_member_enrollment_id in number,
295 p_object_version_number in out nocopy number,
296 p_lp_enrollment_id in number default hr_api.g_number,
297 p_learning_path_section_id in number default hr_api.g_number,
298 p_learning_path_member_id in number default hr_api.g_number,
299 p_member_status_code in varchar2 default hr_api.g_varchar2,
300 p_completion_target_date in date default hr_api.g_date,
301 p_completion_date in date default hr_api.g_date,
302 p_attribute_category in varchar2 default hr_api.g_varchar2,
303 p_attribute1 in varchar2 default hr_api.g_varchar2,
304 p_attribute2 in varchar2 default hr_api.g_varchar2,
305 p_attribute3 in varchar2 default hr_api.g_varchar2,
306 p_attribute4 in varchar2 default hr_api.g_varchar2,
307 p_attribute5 in varchar2 default hr_api.g_varchar2,
308 p_attribute6 in varchar2 default hr_api.g_varchar2,
309 p_attribute7 in varchar2 default hr_api.g_varchar2,
310 p_attribute8 in varchar2 default hr_api.g_varchar2,
311 p_attribute9 in varchar2 default hr_api.g_varchar2,
312 p_attribute10 in varchar2 default hr_api.g_varchar2,
313 p_attribute11 in varchar2 default hr_api.g_varchar2,
314 p_attribute12 in varchar2 default hr_api.g_varchar2,
315 p_attribute13 in varchar2 default hr_api.g_varchar2,
316 p_attribute14 in varchar2 default hr_api.g_varchar2,
317 p_attribute15 in varchar2 default hr_api.g_varchar2,
318 p_attribute16 in varchar2 default hr_api.g_varchar2,
319 p_attribute17 in varchar2 default hr_api.g_varchar2,
320 p_attribute18 in varchar2 default hr_api.g_varchar2,
321 p_attribute19 in varchar2 default hr_api.g_varchar2,
322 p_attribute20 in varchar2 default hr_api.g_varchar2,
323 p_attribute21 in varchar2 default hr_api.g_varchar2,
324 p_attribute22 in varchar2 default hr_api.g_varchar2,
325 p_attribute23 in varchar2 default hr_api.g_varchar2,
326 p_attribute24 in varchar2 default hr_api.g_varchar2,
327 p_attribute25 in varchar2 default hr_api.g_varchar2,
328 p_attribute26 in varchar2 default hr_api.g_varchar2,
329 p_attribute27 in varchar2 default hr_api.g_varchar2,
330 p_attribute28 in varchar2 default hr_api.g_varchar2,
331 p_attribute29 in varchar2 default hr_api.g_varchar2,
332 p_attribute30 in varchar2 default hr_api.g_varchar2,
333 p_creator_person_id in number default hr_api.g_number,
334 p_business_group_id in number default hr_api.g_number,
335 p_validate in boolean default false,
336 p_event_id in number default hr_api.g_number
337 ) is
338 --
339 -- Declare cursors and local variables
340 --
341 l_proc varchar2(72) := g_package||' Update Learning Path';
342 l_object_version_number number := p_object_version_number;
343 l_effective_date date;
344 l_member_status_code ota_lp_member_enrollments.member_status_code%TYPE := p_member_status_code;
345 l_completion_date ota_lp_member_enrollments.completion_date%TYPE := p_completion_date;
346 l_activity_version_id ota_activity_versions.activity_version_id%TYPE;
347 l_lp_enrollment_id ota_lp_enrollments.lp_enrollment_id%TYPE := p_lp_enrollment_id;
348
349 CURSOR csr_get_course_id IS
350 SELECT lpm.activity_version_id,
351 lpe.lp_enrollment_id
352 FROM ota_learning_path_members lpm,
353 ota_lp_member_enrollments lme,
354 ota_lp_enrollments lpe
355 WHERE lme.lp_member_enrollment_id = p_lp_member_enrollment_id
356 AND lpe.lp_enrollment_id = lme.lp_enrollment_id
357 AND lme.learning_path_member_id = lpm.learning_path_member_id;
358
359
360 begin
361 hr_utility.set_location('Entering:'|| l_proc, 10);
362 --
363 -- Issue a savepoint
364 --
365 savepoint UPDATE_LP_MEMBER_ENROLLMENT;
366 l_effective_date := trunc(p_effective_date);
367
368 IF p_member_status_code <> 'CANCELLED' THEN
369 FOR cr_course IN csr_get_course_id
370 LOOP
371 l_activity_version_id := cr_course.activity_version_id;
372 l_lp_enrollment_id := cr_course.lp_enrollment_id;
373 EXIT;
374 END LOOP;
375 ota_lrng_path_member_util.calculate_lme_status(p_activity_version_id => l_activity_version_id,
376 p_lp_enrollment_id => l_lp_enrollment_id,
377 p_member_status_code => l_member_status_code,
378 p_completion_date => l_completion_date);
379 END IF;
380
381 begin
382 ota_lp_member_enrollment_bk2.update_lp_member_enrollment_b
383 ( p_effective_date => p_effective_date
384 ,p_lp_member_enrollment_id => p_lp_member_enrollment_id
385 ,p_object_version_number => l_object_version_number
386 ,p_lp_enrollment_id => l_lp_enrollment_id
387 ,p_learning_path_section_id => p_learning_path_section_id
388 ,p_learning_path_member_id => p_learning_path_member_id
389 ,p_member_status_code => l_member_status_code
390 ,p_completion_target_date => p_completion_target_date
391 ,p_completion_date => l_completion_date
392 ,p_attribute_category => p_attribute_category
393 ,p_attribute1 => p_attribute1
394 ,p_attribute2 => p_attribute2
395 ,p_attribute3 => p_attribute3
396 ,p_attribute4 => p_attribute4
397 ,p_attribute5 => p_attribute5
398 ,p_attribute6 => p_attribute6
399 ,p_attribute7 => p_attribute7
400 ,p_attribute8 => p_attribute8
401 ,p_attribute9 => p_attribute9
402 ,p_attribute10 => p_attribute10
403 ,p_attribute11 => p_attribute11
404 ,p_attribute12 => p_attribute12
405 ,p_attribute13 => p_attribute13
406 ,p_attribute14 => p_attribute14
407 ,p_attribute15 => p_attribute15
408 ,p_attribute16 => p_attribute16
409 ,p_attribute17 => p_attribute17
410 ,p_attribute18 => p_attribute18
411 ,p_attribute19 => p_attribute19
412 ,p_attribute20 => p_attribute20
413 ,p_attribute21 => p_attribute21
414 ,p_attribute22 => p_attribute22
415 ,p_attribute23 => p_attribute23
416 ,p_attribute24 => p_attribute24
417 ,p_attribute25 => p_attribute25
418 ,p_attribute26 => p_attribute26
419 ,p_attribute27 => p_attribute27
420 ,p_attribute28 => p_attribute28
421 ,p_attribute29 => p_attribute29
422 ,p_attribute30 => p_attribute30
423 ,p_creator_person_id => p_creator_person_id
424 ,p_business_group_id => p_business_group_id
425 ,p_validate => p_validate
426 ,p_event_id => p_event_id
427 );
428
429
430 exception
431 when hr_api.cannot_find_prog_unit then
432 hr_api.cannot_find_prog_unit_error
433 (p_module_name => 'UPDATE_LP_MEMBER_ENROLLMENT'
434 ,p_hook_type => 'BP'
435 );
436 end;
437
438 --
439 --
440 -- Process Logic
441 --
442 ota_lme_upd.upd
443 (
444 p_effective_date => p_effective_date
445 ,p_lp_member_enrollment_id => p_lp_member_enrollment_id
446 ,p_object_version_number => l_object_version_number
447 ,p_lp_enrollment_id => l_lp_enrollment_id
448 ,p_learning_path_section_id => p_learning_path_section_id
449 ,p_learning_path_member_id => p_learning_path_member_id
450 ,p_member_status_code => l_member_status_code
451 ,p_business_group_id => p_business_group_id
452 ,p_completion_target_date => p_completion_target_date
453 ,p_completion_date => l_completion_date
454 ,p_attribute_category => p_attribute_category
455 ,p_attribute1 => p_attribute1
456 ,p_attribute2 => p_attribute2
457 ,p_attribute3 => p_attribute3
458 ,p_attribute4 => p_attribute4
459 ,p_attribute5 => p_attribute5
460 ,p_attribute6 => p_attribute6
461 ,p_attribute7 => p_attribute7
462 ,p_attribute8 => p_attribute8
463 ,p_attribute9 => p_attribute9
464 ,p_attribute10 => p_attribute10
465 ,p_attribute11 => p_attribute11
466 ,p_attribute12 => p_attribute12
467 ,p_attribute13 => p_attribute13
468 ,p_attribute14 => p_attribute14
469 ,p_attribute15 => p_attribute15
470 ,p_attribute16 => p_attribute16
471 ,p_attribute17 => p_attribute17
472 ,p_attribute18 => p_attribute18
473 ,p_attribute19 => p_attribute19
474 ,p_attribute20 => p_attribute20
475 ,p_attribute21 => p_attribute21
476 ,p_attribute22 => p_attribute22
477 ,p_attribute23 => p_attribute23
478 ,p_attribute24 => p_attribute24
479 ,p_attribute25 => p_attribute25
480 ,p_attribute26 => p_attribute26
481 ,p_attribute27 => p_attribute27
482 ,p_attribute28 => p_attribute28
483 ,p_attribute29 => p_attribute29
484 ,p_attribute30 => p_attribute30
485 ,p_creator_person_id => p_creator_person_id
486 ,p_event_id => p_event_id
487 );
488
489 begin
490 ota_lp_member_enrollment_bk2.update_lp_member_enrollment_a
491 ( p_effective_date => p_effective_date
492 ,p_lp_member_enrollment_id => p_lp_member_enrollment_id
493 ,p_object_version_number => l_object_version_number
494 ,p_lp_enrollment_id => l_lp_enrollment_id
495 ,p_learning_path_section_id => p_learning_path_section_id
496 ,p_learning_path_member_id => p_learning_path_member_id
497 ,p_member_status_code => l_member_status_code
498 ,p_completion_target_date => p_completion_target_date
499 ,p_completion_date => l_completion_date
500 ,p_attribute_category => p_attribute_category
501 ,p_attribute1 => p_attribute1
502 ,p_attribute2 => p_attribute2
503 ,p_attribute3 => p_attribute3
504 ,p_attribute4 => p_attribute4
505 ,p_attribute5 => p_attribute5
506 ,p_attribute6 => p_attribute6
507 ,p_attribute7 => p_attribute7
508 ,p_attribute8 => p_attribute8
509 ,p_attribute9 => p_attribute9
510 ,p_attribute10 => p_attribute10
511 ,p_attribute11 => p_attribute11
512 ,p_attribute12 => p_attribute12
513 ,p_attribute13 => p_attribute13
514 ,p_attribute14 => p_attribute14
515 ,p_attribute15 => p_attribute15
516 ,p_attribute16 => p_attribute16
517 ,p_attribute17 => p_attribute17
518 ,p_attribute18 => p_attribute18
519 ,p_attribute19 => p_attribute19
520 ,p_attribute20 => p_attribute20
521 ,p_attribute21 => p_attribute21
522 ,p_attribute22 => p_attribute22
523 ,p_attribute23 => p_attribute23
524 ,p_attribute24 => p_attribute24
525 ,p_attribute25 => p_attribute25
526 ,p_attribute26 => p_attribute26
527 ,p_attribute27 => p_attribute27
528 ,p_attribute28 => p_attribute28
529 ,p_attribute29 => p_attribute29
530 ,p_attribute30 => p_attribute30
531 ,p_creator_person_id => p_creator_person_id
532 ,p_business_group_id => p_business_group_id
533 ,p_validate => p_validate
534 ,p_event_id => p_event_id
535 );
536
537
538 exception
539 when hr_api.cannot_find_prog_unit then
540 hr_api.cannot_find_prog_unit_error
541 (p_module_name => 'UPDATE_LP_MEMBER_ENROLLMENT'
542 ,p_hook_type => 'AP'
543 );
544 end;
545
546
547 --
548 -- When in validation only mode raise the Validate_Enabled exception
549 --
550 if p_validate then
551 raise hr_api.validate_enabled;
552 end if;
553 --
554 -- Set all output arguments
555 --
556 p_object_version_number := l_object_version_number;
557
558 hr_utility.set_location(' Leaving:'||l_proc, 70);
559 exception
560 when hr_api.validate_enabled then
561 --
562 -- As the Validate_Enabled exception has been raised
563 -- we must rollback to the savepoint
564 --
565 rollback to UPDATE_LP_MEMBER_ENROLLMENT;
566 --
567 -- Only set output warning arguments
568 -- (Any key or derived arguments must be set to null
569 -- when validation only mode is being used.)
570 --
571 p_object_version_number := null;
572 hr_utility.set_location(' Leaving:'||l_proc, 80);
573 when others then
574 --
575 -- A validation or unexpected error has occured
576 --
577 rollback to UPDATE_LP_MEMBER_ENROLLMENT;
578 p_object_version_number := l_object_version_number;
579 hr_utility.set_location(' Leaving:'||l_proc, 90);
580 raise;
581 end update_lp_member_enrollment;
582 --
583 -- ----------------------------------------------------------------------------
584 -- |-------------------------< DELETE_LP_MEMBER_ENROLLMENT >-------------------|
585 -- ----------------------------------------------------------------------------
586 --
587 procedure delete_lp_member_enrollment
588 (p_lp_member_enrollment_id in number
589 ,p_object_version_number in number
590 ,p_validate in boolean default false
591 ) is
592 --
593 -- Declare cursors and local variables
594 --
595 l_proc varchar2(72) := g_package||'DELETE_LP_MEMBER_ENROLLMENT';
596 --
597 --
598 begin
599 hr_utility.set_location('Entering:'|| l_proc, 10);
600 --
601 -- Issue a savepoint
602 --
603 savepoint DELETE_LP_MEMBER_ENROLLMENT;
604 --
605 -- Truncate the time portion from all IN date parameters
606 --
607 --
608
609 begin
610 ota_lp_member_enrollment_bk3.delete_lp_member_enrollment_b
611 (p_lp_member_enrollment_id => p_lp_member_enrollment_id
612 ,p_object_version_number => p_object_version_number
613 );
614 exception
615 when hr_api.cannot_find_prog_unit then
616 hr_api.cannot_find_prog_unit_error
617 (p_module_name => 'DELETE_LP_MEMBER_ENROLLMENT'
618 ,p_hook_type => 'BP'
619 );
620 end;
621
622 --
623 -- Process Logic
624 --
625
626 ota_lme_del.del
627 (
628 p_lp_member_enrollment_id => p_lp_member_enrollment_id ,
629 p_object_version_number => p_object_version_number
630 );
631
632
633 begin
634 ota_lp_member_enrollment_bk3.delete_lp_member_enrollment_a
635 (p_lp_member_enrollment_id => p_lp_member_enrollment_id
636 ,p_object_version_number => p_object_version_number
637 );
638 exception
639 when hr_api.cannot_find_prog_unit then
640 hr_api.cannot_find_prog_unit_error
641 (p_module_name => 'DELETE_LP_MEMBER_ENROLLMENT'
642 ,p_hook_type => 'AP'
643 );
644 end;
645
646 --
647 -- When in validation only mode raise the Validate_Enabled exception
648 --
649 if p_validate then
650 raise hr_api.validate_enabled;
651 end if;
652 --
653 -- Set all output arguments
654 --
655 --
656 hr_utility.set_location(' Leaving:'||l_proc, 170);
657 exception
658 when hr_api.validate_enabled then
659 --
660 -- As the Validate_Enabled exception has been raised
661 -- we must rollback to the savepoint
662 --
663 rollback to DELETE_LP_MEMBER_ENROLLMENT;
664 --
665 -- Only set output warning arguments
666 -- (Any key or derived arguments must be set to null
667 -- when validation only mode is being used.)
668 --
669 hr_utility.set_location(' Leaving:'||l_proc, 180);
670 when others then
671 --
672 -- A validation or unexpected error has occured
673 --
674 rollback to DELETE_LP_MEMBER_ENROLLMENT;
675 hr_utility.set_location(' Leaving:'||l_proc, 190);
676 raise;
677 end delete_lp_member_enrollment;
678 --
679 end ota_lp_member_enrollment_api;