DBA Data[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;