DBA Data[Home] [Help]

PACKAGE BODY: APPS.OTA_CERT_PRD_ENROLLMENT_SWI

Source


1 Package Body ota_cert_prd_enrollment_swi As
2 /* $Header: otcpeswi.pkb 120.2 2005/07/15 14:06 cmora noship $ */
3 --
4 -- Package variables
5 --
6 g_package  varchar2(33) := 'ota_cert_prd_enrollment_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |----------------------< create_cert_prd_enrollment >----------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_cert_prd_enrollment
12   (p_effective_date               in     date
13   ,p_validate                     in     number    default hr_api.g_false_num
14   ,p_cert_enrollment_id           in     number
15   ,p_period_status_code           in     varchar2
16   ,p_completion_date              in     date      default null
17   ,p_cert_period_start_date       in     date      default null
18   ,p_cert_period_end_date         in     date      default null
19   ,p_business_group_id            in     number
20   ,p_attribute_category           in     varchar2  default null
21   ,p_attribute1                   in     varchar2  default null
22   ,p_attribute2                   in     varchar2  default null
23   ,p_attribute3                   in     varchar2  default null
24   ,p_attribute4                   in     varchar2  default null
25   ,p_attribute5                   in     varchar2  default null
26   ,p_attribute6                   in     varchar2  default null
27   ,p_attribute7                   in     varchar2  default null
28   ,p_attribute8                   in     varchar2  default null
29   ,p_attribute9                   in     varchar2  default null
30   ,p_attribute10                  in     varchar2  default null
31   ,p_attribute11                  in     varchar2  default null
32   ,p_attribute12                  in     varchar2  default null
33   ,p_attribute13                  in     varchar2  default null
34   ,p_attribute14                  in     varchar2  default null
35   ,p_attribute15                  in     varchar2  default null
36   ,p_attribute16                  in     varchar2  default null
37   ,p_attribute17                  in     varchar2  default null
38   ,p_attribute18                  in     varchar2  default null
39   ,p_attribute19                  in     varchar2  default null
40   ,p_attribute20                  in     varchar2  default null
41   ,p_expiration_date              in     date      default null
42   ,p_cert_prd_enrollment_id       in     number
43   ,p_object_version_number           out nocopy number
44   ,p_return_status                   out nocopy varchar2
45   ) is
46   --
47   -- Variables for API Boolean parameters
48   l_validate                      boolean;
49   --
50   -- Variables for IN/OUT parameters
51   --
52   -- Other variables
53   l_cert_prd_enrollment_id       number;
54   l_proc    varchar2(72) := g_package ||'create_cert_prd_enrollment';
55 Begin
56   hr_utility.set_location(' Entering:' || l_proc,10);
57   --
58   -- Issue a savepoint
59   --
60   savepoint create_cert_prd_enrollment_swi;
61   --
62   -- Initialise Multiple Message Detection
63   --
64   hr_multi_message.enable_message_list;
65   --
66   -- Remember IN OUT parameter IN values
67   --
68   --
69   -- Convert constant values to their corresponding boolean value
70   --
71   l_validate :=
72     hr_api.constant_to_boolean
73       (p_constant_value => p_validate);
74   --
75   -- Register Surrogate ID or user key values
76   --
77   ota_cpe_ins.set_base_key_value
78     (p_cert_prd_enrollment_id => p_cert_prd_enrollment_id
79     );
80   --
81   -- Call API
82   --
83   ota_cert_prd_enrollment_api.create_cert_prd_enrollment
84     (p_effective_date               => p_effective_date
85     ,p_validate                     => l_validate
86     ,p_cert_enrollment_id           => p_cert_enrollment_id
87     ,p_period_status_code           => p_period_status_code
88     ,p_completion_date              => p_completion_date
89     ,p_cert_period_start_date       => p_cert_period_start_date
90     ,p_cert_period_end_date         => p_cert_period_end_date
91     ,p_business_group_id            => p_business_group_id
92     ,p_attribute_category           => p_attribute_category
93     ,p_attribute1                   => p_attribute1
94     ,p_attribute2                   => p_attribute2
95     ,p_attribute3                   => p_attribute3
96     ,p_attribute4                   => p_attribute4
97     ,p_attribute5                   => p_attribute5
98     ,p_attribute6                   => p_attribute6
99     ,p_attribute7                   => p_attribute7
100     ,p_attribute8                   => p_attribute8
101     ,p_attribute9                   => p_attribute9
102     ,p_attribute10                  => p_attribute10
103     ,p_attribute11                  => p_attribute11
104     ,p_attribute12                  => p_attribute12
105     ,p_attribute13                  => p_attribute13
106     ,p_attribute14                  => p_attribute14
107     ,p_attribute15                  => p_attribute15
108     ,p_attribute16                  => p_attribute16
109     ,p_attribute17                  => p_attribute17
110     ,p_attribute18                  => p_attribute18
111     ,p_attribute19                  => p_attribute19
112     ,p_attribute20                  => p_attribute20
113     ,p_expiration_date              => p_expiration_date
114     ,p_cert_prd_enrollment_id       => l_cert_prd_enrollment_id
115     ,p_object_version_number        => p_object_version_number
116     );
117   --
118   -- Convert API warning boolean parameter values to specific
119   -- messages and add them to Multiple Message List
120   --
121   --
122   -- Convert API non-warning boolean parameter values
123   --
124   --
125   -- Derive the API return status value based on whether
126   -- messages of any type exist in the Multiple Message List.
127   -- Also disable Multiple Message Detection.
128   --
129   p_return_status := hr_multi_message.get_return_status_disable;
130   hr_utility.set_location(' Leaving:' || l_proc,20);
131   --
132 exception
133   when hr_multi_message.error_message_exist then
134     --
135     -- Catch the Multiple Message List exception which
136     -- indicates API processing has been aborted because
137     -- at least one message exists in the list.
138     --
139     rollback to create_cert_prd_enrollment_swi;
140     --
141     -- Reset IN OUT parameters and set OUT parameters
142     --
143     p_object_version_number        := null;
144     p_return_status := hr_multi_message.get_return_status_disable;
145     hr_utility.set_location(' Leaving:' || l_proc, 30);
146   when others then
147     --
148     -- When Multiple Message Detection is enabled catch
149     -- any Application specific or other unexpected
150     -- exceptions.  Adding appropriate details to the
151     -- Multiple Message List.  Otherwise re-raise the
152     -- error.
153     --
154     rollback to create_cert_prd_enrollment_swi;
155     if hr_multi_message.unexpected_error_add(l_proc) then
156        hr_utility.set_location(' Leaving:' || l_proc,40);
157        raise;
158     end if;
159     --
160     -- Reset IN OUT and set OUT parameters
161     --
162     p_object_version_number        := null;
163     p_return_status := hr_multi_message.get_return_status_disable;
164     hr_utility.set_location(' Leaving:' || l_proc,50);
165 end create_cert_prd_enrollment;
166 -- ----------------------------------------------------------------------------
167 -- |----------------------< update_cert_prd_enrollment >----------------------|
168 -- ----------------------------------------------------------------------------
169 PROCEDURE update_cert_prd_enrollment
170   (p_effective_date               in     date
171   ,p_cert_prd_enrollment_id       in     number
172   ,p_object_version_number        in out nocopy number
173   ,p_cert_enrollment_id           in     number
174   ,p_period_status_code           in     varchar2
175   ,p_completion_date              in     date      default hr_api.g_date
176   ,p_cert_period_start_date       in     date      default hr_api.g_date
177   ,p_cert_period_end_date         in     date      default hr_api.g_date
178   ,p_business_group_id            in     number    default hr_api.g_number
179   ,p_attribute_category           in     varchar2  default hr_api.g_varchar2
180   ,p_attribute1                   in     varchar2  default hr_api.g_varchar2
181   ,p_attribute2                   in     varchar2  default hr_api.g_varchar2
182   ,p_attribute3                   in     varchar2  default hr_api.g_varchar2
183   ,p_attribute4                   in     varchar2  default hr_api.g_varchar2
184   ,p_attribute5                   in     varchar2  default hr_api.g_varchar2
185   ,p_attribute6                   in     varchar2  default hr_api.g_varchar2
186   ,p_attribute7                   in     varchar2  default hr_api.g_varchar2
187   ,p_attribute8                   in     varchar2  default hr_api.g_varchar2
188   ,p_attribute9                   in     varchar2  default hr_api.g_varchar2
189   ,p_attribute10                  in     varchar2  default hr_api.g_varchar2
190   ,p_attribute11                  in     varchar2  default hr_api.g_varchar2
191   ,p_attribute12                  in     varchar2  default hr_api.g_varchar2
192   ,p_attribute13                  in     varchar2  default hr_api.g_varchar2
193   ,p_attribute14                  in     varchar2  default hr_api.g_varchar2
194   ,p_attribute15                  in     varchar2  default hr_api.g_varchar2
195   ,p_attribute16                  in     varchar2  default hr_api.g_varchar2
196   ,p_attribute17                  in     varchar2  default hr_api.g_varchar2
197   ,p_attribute18                  in     varchar2  default hr_api.g_varchar2
198   ,p_attribute19                  in     varchar2  default hr_api.g_varchar2
199   ,p_attribute20                  in     varchar2  default hr_api.g_varchar2
200   ,p_expiration_date              in     date      default hr_api.g_date
201   ,p_validate                     in     number    default hr_api.g_false_num
202   ,p_return_status                   out nocopy varchar2
203   ) is
204   --
205   -- Variables for API Boolean parameters
206   l_validate                      boolean;
207   --
208   -- Variables for IN/OUT parameters
209   l_object_version_number         number;
210   --
211   -- Other variables
212   l_proc    varchar2(72) := g_package ||'update_cert_prd_enrollment';
213 Begin
214   hr_utility.set_location(' Entering:' || l_proc,10);
215   --
216   -- Issue a savepoint
217   --
218   savepoint update_cert_prd_enrollment_swi;
219   --
220   -- Initialise Multiple Message Detection
221   --
222   hr_multi_message.enable_message_list;
223   --
224   -- Remember IN OUT parameter IN values
225   --
226   l_object_version_number         := p_object_version_number;
227   --
228   -- Convert constant values to their corresponding boolean value
229   --
230   l_validate :=
231     hr_api.constant_to_boolean
232       (p_constant_value => p_validate);
233   --
234   -- Register Surrogate ID or user key values
235   --
236   --
237   -- Call API
238   --
239   ota_cert_prd_enrollment_api.update_cert_prd_enrollment
240     (p_effective_date               => p_effective_date
241     ,p_cert_prd_enrollment_id       => p_cert_prd_enrollment_id
242     ,p_object_version_number        => p_object_version_number
243     ,p_cert_enrollment_id           => p_cert_enrollment_id
244     ,p_period_status_code           => p_period_status_code
245     ,p_completion_date              => p_completion_date
246     ,p_cert_period_start_date       => p_cert_period_start_date
247     ,p_cert_period_end_date         => p_cert_period_end_date
248     ,p_business_group_id            => p_business_group_id
249     ,p_attribute_category           => p_attribute_category
250     ,p_attribute1                   => p_attribute1
251     ,p_attribute2                   => p_attribute2
252     ,p_attribute3                   => p_attribute3
253     ,p_attribute4                   => p_attribute4
254     ,p_attribute5                   => p_attribute5
255     ,p_attribute6                   => p_attribute6
256     ,p_attribute7                   => p_attribute7
257     ,p_attribute8                   => p_attribute8
258     ,p_attribute9                   => p_attribute9
259     ,p_attribute10                  => p_attribute10
260     ,p_attribute11                  => p_attribute11
261     ,p_attribute12                  => p_attribute12
262     ,p_attribute13                  => p_attribute13
263     ,p_attribute14                  => p_attribute14
264     ,p_attribute15                  => p_attribute15
265     ,p_attribute16                  => p_attribute16
266     ,p_attribute17                  => p_attribute17
267     ,p_attribute18                  => p_attribute18
268     ,p_attribute19                  => p_attribute19
269     ,p_attribute20                  => p_attribute20
270     ,p_expiration_date              => p_expiration_date
271     ,p_validate                     => l_validate
272     );
273   --
274   -- Convert API warning boolean parameter values to specific
275   -- messages and add them to Multiple Message List
276   --
277   --
278   -- Convert API non-warning boolean parameter values
279   --
280   --
281   -- Derive the API return status value based on whether
282   -- messages of any type exist in the Multiple Message List.
283   -- Also disable Multiple Message Detection.
284   --
285   p_return_status := hr_multi_message.get_return_status_disable;
286   hr_utility.set_location(' Leaving:' || l_proc,20);
287   --
288 exception
289   when hr_multi_message.error_message_exist then
290     --
291     -- Catch the Multiple Message List exception which
292     -- indicates API processing has been aborted because
293     -- at least one message exists in the list.
294     --
295     rollback to update_cert_prd_enrollment_swi;
296     --
297     -- Reset IN OUT parameters and set OUT parameters
298     --
299     p_object_version_number        := l_object_version_number;
300     p_return_status := hr_multi_message.get_return_status_disable;
301     hr_utility.set_location(' Leaving:' || l_proc, 30);
302   when others then
303     --
304     -- When Multiple Message Detection is enabled catch
305     -- any Application specific or other unexpected
306     -- exceptions.  Adding appropriate details to the
307     -- Multiple Message List.  Otherwise re-raise the
308     -- error.
309     --
310     rollback to update_cert_prd_enrollment_swi;
311     if hr_multi_message.unexpected_error_add(l_proc) then
312        hr_utility.set_location(' Leaving:' || l_proc,40);
313        raise;
314     end if;
315     --
316     -- Reset IN OUT and set OUT parameters
317     --
318     p_object_version_number        := l_object_version_number;
319     p_return_status := hr_multi_message.get_return_status_disable;
320     hr_utility.set_location(' Leaving:' || l_proc,50);
321 end update_cert_prd_enrollment;
322 -- ----------------------------------------------------------------------------
323 -- |----------------------< delete_cert_prd_enrollment >----------------------|
324 -- ----------------------------------------------------------------------------
325 PROCEDURE delete_cert_prd_enrollment
326   (p_cert_prd_enrollment_id       in     number
327   ,p_object_version_number        in     number
328   ,p_validate                     in     number    default hr_api.g_false_num
329   ,p_return_status                   out nocopy varchar2
330   ) is
331   --
332   -- Variables for API Boolean parameters
333   l_validate                      boolean;
334   --
335   -- Variables for IN/OUT parameters
336   --
337   -- Other variables
338   l_proc    varchar2(72) := g_package ||'delete_cert_prd_enrollment';
339 Begin
340   hr_utility.set_location(' Entering:' || l_proc,10);
341   --
342   -- Issue a savepoint
343   --
344   savepoint delete_cert_prd_enrollment_swi;
345   --
346   -- Initialise Multiple Message Detection
347   --
348   hr_multi_message.enable_message_list;
349   --
350   -- Remember IN OUT parameter IN values
351   --
352   --
353   -- Convert constant values to their corresponding boolean value
354   --
355   l_validate :=
356     hr_api.constant_to_boolean
357       (p_constant_value => p_validate);
358   --
359   -- Register Surrogate ID or user key values
360   --
361   --
362   -- Call API
363   --
364   ota_cert_prd_enrollment_api.delete_cert_prd_enrollment
365     (p_cert_prd_enrollment_id       => p_cert_prd_enrollment_id
366     ,p_object_version_number        => p_object_version_number
367     ,p_validate                     => l_validate
368     );
369   --
370   -- Convert API warning boolean parameter values to specific
371   -- messages and add them to Multiple Message List
372   --
373   --
374   -- Convert API non-warning boolean parameter values
375   --
376   --
377   -- Derive the API return status value based on whether
378   -- messages of any type exist in the Multiple Message List.
379   -- Also disable Multiple Message Detection.
380   --
381   p_return_status := hr_multi_message.get_return_status_disable;
382   hr_utility.set_location(' Leaving:' || l_proc,20);
383   --
384 exception
385   when hr_multi_message.error_message_exist then
386     --
387     -- Catch the Multiple Message List exception which
388     -- indicates API processing has been aborted because
389     -- at least one message exists in the list.
390     --
391     rollback to delete_cert_prd_enrollment_swi;
392     --
393     -- Reset IN OUT parameters and set OUT parameters
394     --
395     p_return_status := hr_multi_message.get_return_status_disable;
396     hr_utility.set_location(' Leaving:' || l_proc, 30);
397   when others then
398     --
399     -- When Multiple Message Detection is enabled catch
400     -- any Application specific or other unexpected
401     -- exceptions.  Adding appropriate details to the
402     -- Multiple Message List.  Otherwise re-raise the
403     -- error.
404     --
405     rollback to delete_cert_prd_enrollment_swi;
406     if hr_multi_message.unexpected_error_add(l_proc) then
407        hr_utility.set_location(' Leaving:' || l_proc,40);
408        raise;
409     end if;
410     --
411     -- Reset IN OUT and set OUT parameters
412     --
413     p_return_status := hr_multi_message.get_return_status_disable;
414     hr_utility.set_location(' Leaving:' || l_proc,50);
415 end delete_cert_prd_enrollment;
416 
417 -- ----------------------------------------------------------------------------
418 -- |----------------------< renew_cert_prd_enrollment >----------------------|
419 -- ----------------------------------------------------------------------------
420 procedure renew_cert_prd_enrollment(p_validate in number default hr_api.g_false_num
421 				    ,p_cert_enrollment_id in ota_cert_enrollments.cert_enrollment_id%type
422 				    ,p_cert_prd_enrollment_id OUT NOCOPY ota_cert_prd_enrollments.cert_prd_enrollment_id%type
423 				    ,p_certification_status_code OUT NOCOPY VARCHAR2
424 				    ,p_return_status OUT NOCOPY VARCHAR2)
425 IS
426 
427 l_proc    varchar2(72) := g_package || ' renew_cert_prd_enrollment';
428 l_validate boolean;
429 
430 BEGIN
431 
432   hr_multi_message.enable_message_list;
433   savepoint renew_cert_prd_enrollment_swi;
434 
435     l_validate :=
436     hr_api.constant_to_boolean
437       (p_constant_value => p_validate);
438 
439      ota_cert_prd_enrollment_api.renew_cert_prd_enrollment(p_validate => l_validate
440      						     ,p_cert_enrollment_id => p_cert_enrollment_id
441      						     ,p_cert_prd_enrollment_id => p_cert_prd_enrollment_id
442      						     ,p_certification_status_code => p_certification_status_code);
443 
444   --
445   -- Convert API warning boolean parameter values to specific
446   -- messages and add them to Multiple Message List
447   --
448   --
449   -- Convert API non-warning boolean parameter values
450   --
451   --
452   -- Derive the API return status value based on whether
453   -- messages of any type exist in the Multiple Message List.
454   -- Also disable Multiple Message Detection.
455   --
456   p_return_status := hr_multi_message.get_return_status_disable;
457   hr_utility.set_location(' Leaving:' || l_proc,20);
458 
459 exception
460    when hr_multi_message.error_message_exist then
461     --
462     -- Catch the Multiple Message List exception which
463     -- indicates API processing has been aborted because
464     -- at least one message exists in the list.
465     --
466     rollback to renew_cert_prd_enrollment_swi;
467     --
468     -- Reset IN OUT parameters and set OUT parameters
469     --
470     p_cert_prd_enrollment_id  := null;
471     p_certification_status_code := null;
472     p_return_status := hr_multi_message.get_return_status_disable;
473     hr_utility.set_location(' Leaving:' || l_proc, 30);
474 
475    when hr_api.validate_enabled then
476     --
477     -- As the Validate_Enabled exception has been raised
478     -- we must rollback to the savepoint
479     --
480     rollback to renew_cert_prd_enrollment_swi;
481     --
482     -- Only set output warning arguments
483     -- (Any key or derived arguments must be set to null
484     -- when validation only mode is being used.)
485     --
486     p_cert_prd_enrollment_id  := null;
487     p_certification_status_code := null;
488     hr_utility.set_location(' Leaving:'||l_proc, 80);
489    when others then
490     --
491     -- When Multiple Message Detection is enabled catch
492     -- any Application specific or other unexpected
493     -- exceptions.  Adding appropriate details to the
494     -- Multiple Message List.  Otherwise re-raise the
495     -- error.
496     --
497     rollback to renew_cert_prd_enrollment_swi;
498     if hr_multi_message.unexpected_error_add(l_proc) then
499        hr_utility.set_location(' Leaving:' || l_proc,40);
500        raise;
501     end if;
502     --
503     -- Reset IN OUT and set OUT parameters
504     --
505     p_cert_prd_enrollment_id  := null;
506     p_certification_status_code := null;
507     p_return_status := hr_multi_message.get_return_status_disable;
508     hr_utility.set_location(' Leaving:' || l_proc,50);
509 END renew_cert_prd_enrollment;
510 
511 end ota_cert_prd_enrollment_swi;