DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_SIT_SWI

Source


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