DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_STD_HOL_ABS_API

Source


1 Package Body hr_std_hol_abs_api as
2 /* $Header: peshaapi.pkb 115.7 2002/12/11 15:21:12 eumenyio ship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := 'hr_std_hol_abs_api';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< create_std_hol_abs >---------------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_std_hol_abs
13  (p_date_not_taken               in     date,
14   p_person_id                    in     number,
15   p_standard_holiday_id          in     number,
16   p_actual_date_taken            in     date             default null,
17   p_reason                       in     varchar2         default null,
18   p_expired                      in     varchar2         default null,
19   p_attribute_category           in     varchar2         default null,
20   p_attribute1                   in     varchar2         default null,
21   p_attribute2                   in     varchar2         default null,
22   p_attribute3                   in     varchar2         default null,
23   p_attribute4                   in     varchar2         default null,
24   p_attribute5                   in     varchar2         default null,
25   p_attribute6                   in     varchar2         default null,
26   p_attribute7                   in     varchar2         default null,
27   p_attribute8                   in     varchar2         default null,
28   p_attribute9                   in     varchar2         default null,
29   p_attribute10                  in     varchar2         default null,
30   p_attribute11                  in     varchar2         default null,
31   p_attribute12                  in     varchar2         default null,
32   p_attribute13                  in     varchar2         default null,
33   p_attribute14                  in     varchar2         default null,
34   p_attribute15                  in     varchar2         default null,
35   p_attribute16                  in     varchar2         default null,
36   p_attribute17                  in     varchar2         default null,
37   p_attribute18                  in     varchar2         default null,
38   p_attribute19                  in     varchar2         default null,
39   p_attribute20                  in     varchar2         default null,
40   p_validate                     in     boolean          default false,
41   p_effective_date               in     date,
42   p_object_version_number           out nocopy number,
43   p_std_holiday_absences_id         out nocopy number)
44 is
45   --
46   l_proc      varchar2(72) := g_package||'create_std_hol_abs';
47   l_object_version_number     number;
48   l_std_holiday_absences_id   number;
49   --
50 begin
51   hr_utility.set_location('Entering:'|| l_proc, 10);
52   --
53   -- Issue a savepoint
54   --
55   savepoint create_std_hol_abs;
56   --
57   hr_utility.set_location(l_proc, 20);
58   --
59   -- Process Logic
60   --
61   --
62   -- Start of API User Hook for the before hook
63   --
64   --
65   begin
66      hr_std_hol_abs_bk1.create_std_hol_abs_b
67     (p_date_not_taken               =>  p_date_not_taken
68     ,p_person_id                    =>  p_person_id
69     ,p_standard_holiday_id          =>  p_standard_holiday_id
70     ,p_actual_date_taken            =>  p_actual_date_taken
71     ,p_reason                       =>  p_reason
72     ,p_expired                      =>  p_expired
73     ,p_attribute_category           =>  p_attribute_category
74     ,p_attribute1                   =>  p_attribute1
75     ,p_attribute2                   =>  p_attribute2
76     ,p_attribute3                   =>  p_attribute3
77     ,p_attribute4                   =>  p_attribute4
78     ,p_attribute5                   =>  p_attribute5
79     ,p_attribute6                   =>  p_attribute6
80     ,p_attribute7                   =>  p_attribute7
81     ,p_attribute8                   =>  p_attribute8
82     ,p_attribute9                   =>  p_attribute9
83     ,p_attribute10                  =>  p_attribute10
84     ,p_attribute11                  =>  p_attribute11
85     ,p_attribute12                  =>  p_attribute12
86     ,p_attribute13                  =>  p_attribute13
87     ,p_attribute14                  =>  p_attribute14
88     ,p_attribute15                  =>  p_attribute15
89     ,p_attribute16                  =>  p_attribute16
90     ,p_attribute17                  =>  p_attribute17
91     ,p_attribute18                  =>  p_attribute18
92     ,p_attribute19                  =>  p_attribute19
93     ,p_attribute20                  =>  p_attribute20
94     ,p_effective_date               =>  p_effective_date
95     );
96     exception
97      when hr_api.cannot_find_prog_unit then
98        hr_api.cannot_find_prog_unit_error
99          (p_module_name       => 'CREATE_STD_HOL_ABS',
100           p_hook_type         => 'BP'
101           );
102   end;
103   --
104   --
105   per_sha_ins.ins
106   (p_std_holiday_absences_id      => l_std_holiday_absences_id
107   ,p_date_not_taken               => p_date_not_taken
108   ,p_person_id                    => p_person_id
109   ,p_standard_holiday_id          => p_standard_holiday_id
110   ,p_actual_date_taken            => p_actual_date_taken
111   ,p_reason                       => p_reason
112   ,p_expired                      => p_expired
113   ,p_attribute_category           => p_attribute_category
114   ,p_attribute1                   => p_attribute1
115   ,p_attribute2                   => p_attribute2
116   ,p_attribute3                   => p_attribute3
117   ,p_attribute4                   => p_attribute4
118   ,p_attribute5                   => p_attribute5
119   ,p_attribute6                   => p_attribute6
120   ,p_attribute7                   => p_attribute7
121   ,p_attribute8                   => p_attribute8
122   ,p_attribute9                   => p_attribute9
123   ,p_attribute10                  => p_attribute10
124   ,p_attribute11                  => p_attribute11
125   ,p_attribute12                  => p_attribute12
126   ,p_attribute13                  => p_attribute13
127   ,p_attribute14                  => p_attribute14
128   ,p_attribute15                  => p_attribute15
129   ,p_attribute16                  => p_attribute16
130   ,p_attribute17                  => p_attribute17
131   ,p_attribute18                  => p_attribute18
132   ,p_attribute19                  => p_attribute19
133   ,p_attribute20                  => p_attribute20
134   ,p_object_version_number        => l_object_version_number );
135   --
136   hr_utility.set_location(l_proc, 8);
137   --
138   --
139   -- Start of API User Hook for the after hook
140   --
141   begin
142   hr_std_hol_abs_bk1.create_std_hol_abs_a
143     (p_date_not_taken               =>  p_date_not_taken
144     ,p_person_id                    =>  p_person_id
145     ,p_standard_holiday_id          =>  p_standard_holiday_id
146     ,p_actual_date_taken            =>  p_actual_date_taken
147     ,p_reason                       =>  p_reason
148     ,p_expired                      =>  p_expired
149     ,p_attribute_category           =>  p_attribute_category
150     ,p_attribute1                   =>  p_attribute1
151     ,p_attribute2                   =>  p_attribute2
152     ,p_attribute3                   =>  p_attribute3
153     ,p_attribute4                   =>  p_attribute4
154     ,p_attribute5                   =>  p_attribute5
155     ,p_attribute6                   =>  p_attribute6
156     ,p_attribute7                   =>  p_attribute7
157     ,p_attribute8                   =>  p_attribute8
158     ,p_attribute9                   =>  p_attribute9
159     ,p_attribute10                  =>  p_attribute10
160     ,p_attribute11                  =>  p_attribute11
161     ,p_attribute12                  =>  p_attribute12
162     ,p_attribute13                  =>  p_attribute13
163     ,p_attribute14                  =>  p_attribute14
164     ,p_attribute15                  =>  p_attribute15
165     ,p_attribute16                  =>  p_attribute16
166     ,p_attribute17                  =>  p_attribute17
167     ,p_attribute18                  =>  p_attribute18
168     ,p_attribute19                  =>  p_attribute19
169     ,p_attribute20                  =>  p_attribute20
170     ,p_effective_date               =>  p_effective_date
171     ,p_object_version_number        =>  l_object_version_number
172     ,p_std_holiday_absences_id      =>  l_std_holiday_absences_id
173     );
174     exception
175      when hr_api.cannot_find_prog_unit then
176        hr_api.cannot_find_prog_unit_error
177          (p_module_name       => 'CREATE_STD_HOL_ABS',
178           p_hook_type         => 'AP'
179           );
180   end;
181   --
182   if p_validate then
183     raise hr_api.validate_enabled;
184   end if;
185   --
186   p_object_version_number    := l_object_version_number;
187   p_std_holiday_absences_id  := l_std_holiday_absences_id;
188   --
189   hr_utility.set_location(' Leaving:'||l_proc, 11);
190 exception
191   when hr_api.validate_enabled then
192     --
193     -- As the Validate_Enabled exception has been raised
194     -- we must rollback to the savepoint
195     --
196     ROLLBACK TO create_std_hol_abs;
197     --
198     -- Only set output warning arguments
199     -- (Any key or derived arguments must be set to null
200     -- when validation only mode is being used.)
201     --
202     p_std_holiday_absences_id := null;
203     p_object_version_number   := null;
204     --
205   when others then
206   --
207   -- A validation or unexpected error has occurred
208   --
209   -- Added as part of the fix to bug 632479
210   --
211   p_std_holiday_absences_id := null;
212   p_object_version_number   := null;
213   ROLLBACK TO create_std_hol_abs;
214   --
215   raise;
216   --
217 end create_std_hol_abs;
218 --
219 -- ----------------------------------------------------------------------------
220 -- |-------------------------< update_std_hol_abs >----------------------------|
221 -- ----------------------------------------------------------------------------
222 --
223 procedure update_std_hol_abs
224  (p_std_holiday_absences_id      in number,
225   p_date_not_taken               in date             default hr_api.g_date,
226   p_standard_holiday_id          in number           default hr_api.g_number,
227   p_actual_date_taken            in date             default hr_api.g_date,
228   p_reason                       in varchar2         default hr_api.g_varchar2,
229   p_expired                      in varchar2         default hr_api.g_varchar2,
230   p_attribute_category           in varchar2         default hr_api.g_varchar2,
231   p_attribute1                   in varchar2         default hr_api.g_varchar2,
232   p_attribute2                   in varchar2         default hr_api.g_varchar2,
233   p_attribute3                   in varchar2         default hr_api.g_varchar2,
234   p_attribute4                   in varchar2         default hr_api.g_varchar2,
235   p_attribute5                   in varchar2         default hr_api.g_varchar2,
236   p_attribute6                   in varchar2         default hr_api.g_varchar2,
237   p_attribute7                   in varchar2         default hr_api.g_varchar2,
238   p_attribute8                   in varchar2         default hr_api.g_varchar2,
239   p_attribute9                   in varchar2         default hr_api.g_varchar2,
240   p_attribute10                  in varchar2         default hr_api.g_varchar2,
241   p_attribute11                  in varchar2         default hr_api.g_varchar2,
242   p_attribute12                  in varchar2         default hr_api.g_varchar2,
243   p_attribute13                  in varchar2         default hr_api.g_varchar2,
244   p_attribute14                  in varchar2         default hr_api.g_varchar2,
245   p_attribute15                  in varchar2         default hr_api.g_varchar2,
246   p_attribute16                  in varchar2         default hr_api.g_varchar2,
247   p_attribute17                  in varchar2         default hr_api.g_varchar2,
248   p_attribute18                  in varchar2         default hr_api.g_varchar2,
249   p_attribute19                  in varchar2         default hr_api.g_varchar2,
250   p_attribute20                  in varchar2         default hr_api.g_varchar2,
251   p_object_version_number        in out nocopy number,
252   p_validate                     in boolean          default false,
253   p_effective_date               in date
254  )
255 
256 is
257   --
258   -- Declare cursors and local variables
259   --
260   l_object_version_number per_std_holiday_absences.object_version_number%TYPE;
261   l_object_version_number_temp
262                           per_std_holiday_absences.object_version_number%TYPE;
263   l_proc                  varchar2(72) := g_package||'update_std_hol_abs';
264   --
265 begin
266   hr_utility.set_location('Entering:'|| l_proc, 5);
267   --
268   -- Issue a savepoint
269   --
270   savepoint update_std_hol_abs;
271   --
272   hr_utility.set_location(l_proc, 6);
273   --
274   l_object_version_number_temp := p_object_version_number;
275   l_object_version_number      := p_object_version_number;
276   --
277   -- Start of API User Hook for the before hook
278   --
279   begin
280   hr_std_hol_abs_bk2.update_std_hol_abs_b
281   (p_std_holiday_absences_id    =>  p_std_holiday_absences_id
282   ,p_date_not_taken             =>  p_date_not_taken
283   ,p_standard_holiday_id        =>  p_standard_holiday_id
284   ,p_actual_date_taken          =>  p_actual_date_taken
285   ,p_reason                     =>  p_reason
286   ,p_expired                    =>  p_expired
287   ,p_attribute_category         =>  p_attribute_category
288   ,p_attribute1                 =>  p_attribute1
289   ,p_attribute2                 =>  p_attribute2
290   ,p_attribute3                 =>  p_attribute3
291   ,p_attribute4                 =>  p_attribute4
292   ,p_attribute5                 =>  p_attribute5
293   ,p_attribute6                 =>  p_attribute6
294   ,p_attribute7                 =>  p_attribute7
295   ,p_attribute8                 =>  p_attribute8
296   ,p_attribute9                 =>  p_attribute9
297   ,p_attribute10                =>  p_attribute10
298   ,p_attribute11                =>  p_attribute11
299   ,p_attribute12                =>  p_attribute12
300   ,p_attribute13                =>  p_attribute13
301   ,p_attribute14                =>  p_attribute14
302   ,p_attribute15                =>  p_attribute15
303   ,p_attribute16                =>  p_attribute16
304   ,p_attribute17                =>  p_attribute17
305   ,p_attribute18                =>  p_attribute18
306   ,p_attribute19                =>  p_attribute19
307   ,p_attribute20                =>  p_attribute20
308   ,p_object_version_number      =>  p_object_version_number
309   ,p_effective_date             =>  p_effective_date
310   );
311     exception
312      when hr_api.cannot_find_prog_unit then
313        hr_api.cannot_find_prog_unit_error
314          (p_module_name       => 'UPDATE_STD_HOL_ABS',
315           p_hook_type         => 'BP'
316           );
317   end;
318   --
319   --
320   -- Update Phone details.
321   --
322   per_sha_upd.upd
323   (p_std_holiday_absences_id      => p_std_holiday_absences_id
324   ,p_date_not_taken               => p_date_not_taken
325   ,p_standard_holiday_id          => p_standard_holiday_id
326   ,p_actual_date_taken            => p_actual_date_taken
327   ,p_reason                       => p_reason
328   ,p_expired                      => p_expired
329   ,p_attribute_category           => p_attribute_category
330   ,p_attribute1                   => p_attribute1
331   ,p_attribute2                   => p_attribute2
332   ,p_attribute3                   => p_attribute3
333   ,p_attribute4                   => p_attribute4
334   ,p_attribute5                   => p_attribute5
335   ,p_attribute6                   => p_attribute6
336   ,p_attribute7                   => p_attribute7
337   ,p_attribute8                   => p_attribute8
338   ,p_attribute9                   => p_attribute9
339   ,p_attribute10                  => p_attribute10
340   ,p_attribute11                  => p_attribute11
341   ,p_attribute12                  => p_attribute12
342   ,p_attribute13                  => p_attribute13
343   ,p_attribute14                  => p_attribute14
344   ,p_attribute15                  => p_attribute15
345   ,p_attribute16                  => p_attribute16
346   ,p_attribute17                  => p_attribute17
347   ,p_attribute18                  => p_attribute18
348   ,p_attribute19                  => p_attribute19
349   ,p_attribute20                  => p_attribute20
350   ,p_object_version_number        => l_object_version_number
351   );
352   --
353   hr_utility.set_location(l_proc, 8);
354   --
355   -- Start of API User Hook for the after
356   --
357  begin
358  hr_std_hol_abs_bk2.update_std_hol_abs_a
359   (p_std_holiday_absences_id    =>  p_std_holiday_absences_id
360   ,p_date_not_taken             =>  p_date_not_taken
361   ,p_standard_holiday_id        =>  p_standard_holiday_id
362   ,p_actual_date_taken          =>  p_actual_date_taken
363   ,p_reason                     =>  p_reason
364   ,p_expired                    =>  p_expired
365   ,p_attribute_category         =>  p_attribute_category
366   ,p_attribute1                 =>  p_attribute1
367   ,p_attribute2                 =>  p_attribute2
368   ,p_attribute3                 =>  p_attribute3
369   ,p_attribute4                 =>  p_attribute4
370   ,p_attribute5                 =>  p_attribute5
371   ,p_attribute6                 =>  p_attribute6
372   ,p_attribute7                 =>  p_attribute7
373   ,p_attribute8                 =>  p_attribute8
374   ,p_attribute9                 =>  p_attribute9
375   ,p_attribute10                =>  p_attribute10
376   ,p_attribute11                =>  p_attribute11
377   ,p_attribute12                =>  p_attribute12
378   ,p_attribute13                =>  p_attribute13
379   ,p_attribute14                =>  p_attribute14
380   ,p_attribute15                =>  p_attribute15
381   ,p_attribute16                =>  p_attribute16
382   ,p_attribute17                =>  p_attribute17
383   ,p_attribute18                =>  p_attribute18
384   ,p_attribute19                =>  p_attribute19
385   ,p_attribute20                =>  p_attribute20
386   ,p_object_version_number      =>  l_object_version_number
387   ,p_effective_date             =>  p_effective_date
388    );
389     exception
390      when hr_api.cannot_find_prog_unit then
391        hr_api.cannot_find_prog_unit_error
392          (p_module_name       => 'UPDATE_STD_HOL_ABS',
393           p_hook_type         => 'AP'
394           );
395   end;
396   --
397   -- End of API User Hook for the after hook of update_phone.
398   --
399   --
400   -- When in validation only mode raise the Validate_Enabled exception
401   --
402   if p_validate then
403     raise hr_api.validate_enabled;
404   end if;
405   --
406   p_object_version_number := l_object_version_number;
407   hr_utility.set_location(' Leaving:'||l_proc, 11);
408 exception
409   when hr_api.validate_enabled then
410     --
411     -- As the Validate_Enabled exception has been raised
412     -- we must rollback to the savepoint
413     --
414     ROLLBACK TO update_std_hol_abs;
415     --
416     -- Only set output warning arguments
417     -- (Any key or derived arguments must be set to null
418     -- when validation only mode is being used.)
419     --
420     p_object_version_number := l_object_version_number_temp;
421     --
422   when others then
423   --
424   -- A validation or unexpected error has occurred
425   --
426   -- Added as part of the fix to bug 632479
427   --
428   p_object_version_number := l_object_version_number_temp;
429   ROLLBACK TO update_std_hol_abs;
430   --
431   raise;
432   --
433 end update_std_hol_abs;
434 -- ----------------------------------------------------------------------------
435 -- |-------------------------< delete_std_hol_abs >---------------------------|
436 -- ----------------------------------------------------------------------------
437 --
438 procedure delete_std_hol_abs
439   (p_validate                       in     boolean  default false
440   ,p_std_holiday_absences_id        in     number
441   ,p_object_version_number          in     number
442   ) is
443   --
444   l_proc                varchar2(72) := g_package||'delete_std_hol_abs';
445   --
446 begin
447   hr_utility.set_location('Entering:'|| l_proc, 5);
448   --
449   -- Issue a savepoint
450   --
451   savepoint delete_std_hol_abs;
452   --
453   hr_utility.set_location(l_proc, 7);
454   --
455   -- Process Logic
456   --
457   --
458   -- Start of API User Hook for the before hook.
459   --
460 begin
461 hr_std_hol_abs_bk3.delete_std_hol_abs_b
462   (p_std_holiday_absences_id    => p_std_holiday_absences_id
463   ,p_object_version_number      => p_object_version_number
464    );
465     exception
466      when hr_api.cannot_find_prog_unit then
467        hr_api.cannot_find_prog_unit_error
468          (p_module_name       => 'DELETE_STD_HOL_ABS',
469           p_hook_type         => 'BP'
470           );
471   end;
472 
473   --
474   per_sha_del.del
475     (p_std_holiday_absences_id  => p_std_holiday_absences_id
476     ,p_object_version_number    => p_object_version_number);
477   --
478   hr_utility.set_location(l_proc, 8);
479   --
480   -- Start of API User Hook for the after hook of delete_phone
481   --
482 begin
483 hr_std_hol_abs_bk3.delete_std_hol_abs_a
484   (p_std_holiday_absences_id    => p_std_holiday_absences_id
485   ,p_object_version_number      => p_object_version_number
486    );
487     exception
488      when hr_api.cannot_find_prog_unit then
489        hr_api.cannot_find_prog_unit_error
490          (p_module_name       => 'DELETE_STD_HOL_ABS',
491           p_hook_type         => 'AP'
492           );
493   end;
494   --
495   -- End of API User Hook for the after hook of delete_phone.
496   --
497   --
498   -- When in validation only mode raise the Validate_Enabled exception
499   --
500   if p_validate then
501     raise hr_api.validate_enabled;
502   end if;
503   --
504   hr_utility.set_location(' Leaving:'||l_proc, 11);
505 exception
506   when hr_api.validate_enabled then
507     --
508     -- As the Validate_Enabled exception has been raised
509     -- we must rollback to the savepoint
510     --
511     ROLLBACK TO delete_std_hol_abs;
512     --
513   when others then
514   --
515   -- A validation or unexpected error has occurred
516   --
517   -- Added as part of the fix to bug 632479
518   --
519   ROLLBACK TO delete_std_hol_abs;
520   --
521   raise;
522   --
523 end delete_std_hol_abs;
524 --
525 end hr_std_hol_abs_api;