DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_ENRT_BNFT_API

Source


1 Package Body ben_enrt_bnft_api as
2 /* $Header: beenbapi.pkb 115.11 2002/12/16 07:02:01 rpgupta ship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  ben_enrt_bnft_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_enrt_bnft >----------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_enrt_bnft
13   (p_validate                       in  boolean   default false
14   ,p_enrt_bnft_id                   out nocopy number
15   ,p_dflt_flag                      in  varchar2  default 'N'
16   ,p_val_has_bn_prortd_flag         in  varchar2  default 'N'
17   ,p_bndry_perd_cd                  in  varchar2  default null
18   ,p_val                            in  number    default null
19   ,p_nnmntry_uom                    in  varchar2  default null
20   ,p_bnft_typ_cd                    in  varchar2  default null
21   ,p_entr_val_at_enrt_flag          in  varchar2  default 'N'
22   ,p_mn_val                         in  number    default null
23   ,p_mx_val                         in  number    default null
24   ,p_incrmt_val                     in  number    default null
25   ,p_dflt_val                       in  number    default null
26   ,p_rt_typ_cd                      in  varchar2  default null
27   ,p_cvg_mlt_cd                     in  varchar2  default null
28   ,p_ctfn_rqd_flag                  in  varchar2  default 'N'
29   ,p_ordr_num                       in  number    default null
30   ,p_crntly_enrld_flag              in  varchar2  default 'N'
31   ,p_elig_per_elctbl_chc_id         in  number    default null
32   ,p_prtt_enrt_rslt_id              in  number    default null
33   ,p_comp_lvl_fctr_id               in  number    default null
34   ,p_business_group_id              in  number    default null
35   ,p_enb_attribute_category         in  varchar2  default null
36   ,p_enb_attribute1                 in  varchar2  default null
37   ,p_enb_attribute2                 in  varchar2  default null
38   ,p_enb_attribute3                 in  varchar2  default null
39   ,p_enb_attribute4                 in  varchar2  default null
40   ,p_enb_attribute5                 in  varchar2  default null
41   ,p_enb_attribute6                 in  varchar2  default null
42   ,p_enb_attribute7                 in  varchar2  default null
43   ,p_enb_attribute8                 in  varchar2  default null
44   ,p_enb_attribute9                 in  varchar2  default null
45   ,p_enb_attribute10                in  varchar2  default null
46   ,p_enb_attribute11                in  varchar2  default null
47   ,p_enb_attribute12                in  varchar2  default null
48   ,p_enb_attribute13                in  varchar2  default null
49   ,p_enb_attribute14                in  varchar2  default null
50   ,p_enb_attribute15                in  varchar2  default null
51   ,p_enb_attribute16                in  varchar2  default null
52   ,p_enb_attribute17                in  varchar2  default null
53   ,p_enb_attribute18                in  varchar2  default null
54   ,p_enb_attribute19                in  varchar2  default null
55   ,p_enb_attribute20                in  varchar2  default null
56   ,p_enb_attribute21                in  varchar2  default null
57   ,p_enb_attribute22                in  varchar2  default null
58   ,p_enb_attribute23                in  varchar2  default null
59   ,p_enb_attribute24                in  varchar2  default null
60   ,p_enb_attribute25                in  varchar2  default null
61   ,p_enb_attribute26                in  varchar2  default null
62   ,p_enb_attribute27                in  varchar2  default null
63   ,p_enb_attribute28                in  varchar2  default null
64   ,p_enb_attribute29                in  varchar2  default null
65   ,p_enb_attribute30                in  varchar2  default null
66   ,p_request_id                     in  number    default null
67   ,p_program_application_id         in  number    default null
68   ,p_program_id                     in  number    default null
69   ,p_program_update_date            in  date      default null
70   ,p_mx_wout_ctfn_val               in  number    default null
71   ,p_mx_wo_ctfn_flag                in  varchar2  default 'N'
72   ,p_object_version_number          out nocopy number
73   ,p_effective_date                 in  date
74   ) is
75   --
76   -- Declare cursors and local variables
77   --
78   l_enrt_bnft_id ben_enrt_bnft.enrt_bnft_id%TYPE;
79   l_proc varchar2(72) := g_package||'create_enrt_bnft';
80   l_object_version_number ben_enrt_bnft.object_version_number%TYPE;
81   --
82 begin
83   --
84   hr_utility.set_location('Entering:'|| l_proc, 10);
85   --
86   -- Issue a savepoint if operating in validation only mode
87   --
88   savepoint create_enrt_bnft;
89   --
90   hr_utility.set_location(l_proc, 20);
91   --
92   -- Process Logic
93   --
94   begin
95     --
96     -- Start of API User Hook for the before hook of create_enrt_bnft
97     --
98     ben_enrt_bnft_bk1.create_enrt_bnft_b
99       (
100        p_dflt_flag                    =>  p_dflt_flag
101       ,p_val_has_bn_prortd_flag       =>  p_val_has_bn_prortd_flag
102       ,p_bndry_perd_cd                =>  p_bndry_perd_cd
103       ,p_val                          =>  p_val
104       ,p_nnmntry_uom                  =>  p_nnmntry_uom
105       ,p_bnft_typ_cd                  =>  p_bnft_typ_cd
106       ,p_entr_val_at_enrt_flag        =>  p_entr_val_at_enrt_flag
107       ,p_mn_val                       =>  p_mn_val
108       ,p_mx_val                       =>  p_mx_val
109       ,p_incrmt_val                   =>  p_incrmt_val
110       ,p_dflt_val                     =>  p_dflt_val
111       ,p_rt_typ_cd                    =>  p_rt_typ_cd
112       ,p_cvg_mlt_cd                   =>  p_cvg_mlt_cd
113       ,p_ctfn_rqd_flag                =>  p_ctfn_rqd_flag
114       ,p_ordr_num                     =>  p_ordr_num
115       ,p_crntly_enrld_flag            =>  p_crntly_enrld_flag
116       ,p_elig_per_elctbl_chc_id       =>  p_elig_per_elctbl_chc_id
117       ,p_prtt_enrt_rslt_id            =>  p_prtt_enrt_rslt_id
118       ,p_comp_lvl_fctr_id             =>  p_comp_lvl_fctr_id
119       ,p_business_group_id            =>  p_business_group_id
120       ,p_enb_attribute_category       =>  p_enb_attribute_category
121       ,p_enb_attribute1               =>  p_enb_attribute1
122       ,p_enb_attribute2               =>  p_enb_attribute2
123       ,p_enb_attribute3               =>  p_enb_attribute3
124       ,p_enb_attribute4               =>  p_enb_attribute4
125       ,p_enb_attribute5               =>  p_enb_attribute5
126       ,p_enb_attribute6               =>  p_enb_attribute6
127       ,p_enb_attribute7               =>  p_enb_attribute7
128       ,p_enb_attribute8               =>  p_enb_attribute8
129       ,p_enb_attribute9               =>  p_enb_attribute9
130       ,p_enb_attribute10              =>  p_enb_attribute10
131       ,p_enb_attribute11              =>  p_enb_attribute11
132       ,p_enb_attribute12              =>  p_enb_attribute12
133       ,p_enb_attribute13              =>  p_enb_attribute13
134       ,p_enb_attribute14              =>  p_enb_attribute14
135       ,p_enb_attribute15              =>  p_enb_attribute15
136       ,p_enb_attribute16              =>  p_enb_attribute16
137       ,p_enb_attribute17              =>  p_enb_attribute17
138       ,p_enb_attribute18              =>  p_enb_attribute18
139       ,p_enb_attribute19              =>  p_enb_attribute19
140       ,p_enb_attribute20              =>  p_enb_attribute20
141       ,p_enb_attribute21              =>  p_enb_attribute21
142       ,p_enb_attribute22              =>  p_enb_attribute22
143       ,p_enb_attribute23              =>  p_enb_attribute23
144       ,p_enb_attribute24              =>  p_enb_attribute24
145       ,p_enb_attribute25              =>  p_enb_attribute25
146       ,p_enb_attribute26              =>  p_enb_attribute26
147       ,p_enb_attribute27              =>  p_enb_attribute27
148       ,p_enb_attribute28              =>  p_enb_attribute28
149       ,p_enb_attribute29              =>  p_enb_attribute29
150       ,p_enb_attribute30              =>  p_enb_attribute30
151       ,p_request_id                   =>  p_request_id
152       ,p_program_application_id       =>  p_program_application_id
153       ,p_program_id                   =>  p_program_id
154       ,p_program_update_date          =>  p_program_update_date
155       ,p_mx_wout_ctfn_val             =>  p_mx_wout_ctfn_val
156       ,p_mx_wo_ctfn_flag              =>  p_mx_wo_ctfn_flag
157       ,p_object_version_number        =>  l_object_version_number
158       ,p_effective_date               =>  trunc(p_effective_date)
159       );
160   exception
161     when hr_api.cannot_find_prog_unit then
162       hr_api.cannot_find_prog_unit_error
163         (
164          p_module_name => 'CREATE_enrt_bnft'
165         ,p_hook_type   => 'BP'
166         );
167     --
168     -- End of API User Hook for the before hook of create_enrt_bnft
169     --
170   end;
171   --
172   ben_enb_ins.ins
173     (
174      p_effective_date                => trunc(p_effective_date)
175     ,p_enrt_bnft_id                  => l_enrt_bnft_id
176     ,p_dflt_flag                     => p_dflt_flag
177     ,p_val_has_bn_prortd_flag        => p_val_has_bn_prortd_flag
178     ,p_bndry_perd_cd                 => p_bndry_perd_cd
179     ,p_val                           => p_val
180     ,p_nnmntry_uom                   => p_nnmntry_uom
181     ,p_bnft_typ_cd                   => p_bnft_typ_cd
182     ,p_entr_val_at_enrt_flag         => p_entr_val_at_enrt_flag
183     ,p_mn_val                        => p_mn_val
184     ,p_mx_val                        => p_mx_val
185     ,p_incrmt_val                    => p_incrmt_val
186     ,p_dflt_val                      => p_dflt_val
187     ,p_rt_typ_cd                     => p_rt_typ_cd
188     ,p_cvg_mlt_cd                    => p_cvg_mlt_cd
189     ,p_ctfn_rqd_flag                 => p_ctfn_rqd_flag
190     ,p_ordr_num                      => p_ordr_num
191     ,p_crntly_enrld_flag             => p_crntly_enrld_flag
192     ,p_elig_per_elctbl_chc_id        => p_elig_per_elctbl_chc_id
193     ,p_prtt_enrt_rslt_id             => p_prtt_enrt_rslt_id
194     ,p_comp_lvl_fctr_id              => p_comp_lvl_fctr_id
195     ,p_business_group_id             => p_business_group_id
196     ,p_enb_attribute_category        => p_enb_attribute_category
197     ,p_enb_attribute1                => p_enb_attribute1
198     ,p_enb_attribute2                => p_enb_attribute2
199     ,p_enb_attribute3                => p_enb_attribute3
200     ,p_enb_attribute4                => p_enb_attribute4
201     ,p_enb_attribute5                => p_enb_attribute5
202     ,p_enb_attribute6                => p_enb_attribute6
203     ,p_enb_attribute7                => p_enb_attribute7
204     ,p_enb_attribute8                => p_enb_attribute8
205     ,p_enb_attribute9                => p_enb_attribute9
206     ,p_enb_attribute10               => p_enb_attribute10
207     ,p_enb_attribute11               => p_enb_attribute11
208     ,p_enb_attribute12               => p_enb_attribute12
209     ,p_enb_attribute13               => p_enb_attribute13
210     ,p_enb_attribute14               => p_enb_attribute14
211     ,p_enb_attribute15               => p_enb_attribute15
212     ,p_enb_attribute16               => p_enb_attribute16
213     ,p_enb_attribute17               => p_enb_attribute17
214     ,p_enb_attribute18               => p_enb_attribute18
215     ,p_enb_attribute19               => p_enb_attribute19
216     ,p_enb_attribute20               => p_enb_attribute20
217     ,p_enb_attribute21               => p_enb_attribute21
218     ,p_enb_attribute22               => p_enb_attribute22
219     ,p_enb_attribute23               => p_enb_attribute23
220     ,p_enb_attribute24               => p_enb_attribute24
221     ,p_enb_attribute25               => p_enb_attribute25
222     ,p_enb_attribute26               => p_enb_attribute26
223     ,p_enb_attribute27               => p_enb_attribute27
224     ,p_enb_attribute28               => p_enb_attribute28
225     ,p_enb_attribute29               => p_enb_attribute29
226     ,p_enb_attribute30               => p_enb_attribute30
227     ,p_request_id                    => p_request_id
228     ,p_program_application_id        => p_program_application_id
229     ,p_program_id                    => p_program_id
230     ,p_mx_wout_ctfn_val              => p_mx_wout_ctfn_val
231     ,p_mx_wo_ctfn_flag               =>  p_mx_wo_ctfn_flag
232     ,p_program_update_date           => p_program_update_date
233     ,p_object_version_number         => l_object_version_number
234     );
235   --
236   begin
237     --
238     -- Start of API User Hook for the after hook of create_enrt_bnft
239     --
240     ben_enrt_bnft_bk1.create_enrt_bnft_a
241       (
242        p_enrt_bnft_id                  => l_enrt_bnft_id
243       ,p_dflt_flag                     => p_dflt_flag
244       ,p_val_has_bn_prortd_flag        => p_val_has_bn_prortd_flag
245       ,p_bndry_perd_cd                 => p_bndry_perd_cd
246       ,p_val                           => p_val
247       ,p_nnmntry_uom                   => p_nnmntry_uom
248       ,p_bnft_typ_cd                   => p_bnft_typ_cd
249       ,p_entr_val_at_enrt_flag         => p_entr_val_at_enrt_flag
250       ,p_mn_val                        => p_mn_val
251       ,p_mx_val                        => p_mx_val
252       ,p_incrmt_val                    => p_incrmt_val
253       ,p_dflt_val                      => p_dflt_val
254       ,p_rt_typ_cd                     => p_rt_typ_cd
255       ,p_cvg_mlt_cd                    => p_cvg_mlt_cd
256       ,p_ctfn_rqd_flag                 => p_ctfn_rqd_flag
257       ,p_ordr_num                      => p_ordr_num
258       ,p_crntly_enrld_flag             => p_crntly_enrld_flag
259       ,p_elig_per_elctbl_chc_id        => p_elig_per_elctbl_chc_id
260       ,p_prtt_enrt_rslt_id             => p_prtt_enrt_rslt_id
261       ,p_comp_lvl_fctr_id              => p_comp_lvl_fctr_id
262       ,p_business_group_id             => p_business_group_id
263       ,p_enb_attribute_category        => p_enb_attribute_category
264       ,p_enb_attribute1                => p_enb_attribute1
265       ,p_enb_attribute2                => p_enb_attribute2
266       ,p_enb_attribute3                => p_enb_attribute3
267       ,p_enb_attribute4                => p_enb_attribute4
268       ,p_enb_attribute5                => p_enb_attribute5
269       ,p_enb_attribute6                => p_enb_attribute6
270       ,p_enb_attribute7                => p_enb_attribute7
271       ,p_enb_attribute8                => p_enb_attribute8
272       ,p_enb_attribute9                => p_enb_attribute9
273       ,p_enb_attribute10               => p_enb_attribute10
274       ,p_enb_attribute11               => p_enb_attribute11
275       ,p_enb_attribute12               => p_enb_attribute12
276       ,p_enb_attribute13               => p_enb_attribute13
277       ,p_enb_attribute14               => p_enb_attribute14
278       ,p_enb_attribute15               => p_enb_attribute15
279       ,p_enb_attribute16               => p_enb_attribute16
280       ,p_enb_attribute17               => p_enb_attribute17
281       ,p_enb_attribute18               => p_enb_attribute18
282       ,p_enb_attribute19               => p_enb_attribute19
283       ,p_enb_attribute20               => p_enb_attribute20
284       ,p_enb_attribute21               => p_enb_attribute21
285       ,p_enb_attribute22               => p_enb_attribute22
286       ,p_enb_attribute23               => p_enb_attribute23
287       ,p_enb_attribute24               => p_enb_attribute24
288       ,p_enb_attribute25               => p_enb_attribute25
289       ,p_enb_attribute26               => p_enb_attribute26
290       ,p_enb_attribute27               => p_enb_attribute27
291       ,p_enb_attribute28               => p_enb_attribute28
292       ,p_enb_attribute29               => p_enb_attribute29
293       ,p_enb_attribute30               => p_enb_attribute30
294       ,p_request_id                    => p_request_id
295       ,p_program_application_id        => p_program_application_id
296       ,p_program_id                    => p_program_id
297       ,p_program_update_date           => p_program_update_date
298       ,p_mx_wout_ctfn_val              => p_mx_wout_ctfn_val
299       ,p_mx_wo_ctfn_flag               => p_mx_wo_ctfn_flag
300       ,p_object_version_number         => l_object_version_number
301       ,p_effective_date                => trunc(p_effective_date)
302       );
303   exception
304     when hr_api.cannot_find_prog_unit then
305       hr_api.cannot_find_prog_unit_error
306         (p_module_name => 'CREATE_enrt_bnft'
307         ,p_hook_type   => 'AP'
308         );
309     --
310     -- End of API User Hook for the after hook of create_enrt_bnft
311     --
312   end;
313   --
314   hr_utility.set_location(l_proc, 60);
315   --
316   -- When in validation only mode raise the Validate_Enabled exception
317   --
318   if p_validate then
319     raise hr_api.validate_enabled;
320   end if;
321   --
322   -- Set all output arguments
323   --
324   p_enrt_bnft_id := l_enrt_bnft_id;
325   p_object_version_number := l_object_version_number;
326   --
327   hr_utility.set_location(' Leaving:'||l_proc, 70);
328   --
329 exception
330   --
331   when hr_api.validate_enabled then
332     --
333     -- As the Validate_Enabled exception has been raised
334     -- we must rollback to the savepoint
335     --
336     ROLLBACK TO create_enrt_bnft;
337     --
338     -- Only set output warning arguments
339     -- (Any key or derived arguments must be set to null
340     -- when validation only mode is being used.)
341     --
342     p_enrt_bnft_id := null;
343     p_object_version_number  := null;
344     hr_utility.set_location(' Leaving:'||l_proc, 80);
345     --
346   when others then
347     --
348     -- A validation or unexpected error has occured
349     --
350     ROLLBACK TO create_enrt_bnft;
351     p_enrt_bnft_id := null; --nocopy change
352     p_object_version_number  := null; --nocopy change
353     raise;
354     --
355 end create_enrt_bnft;
356 
357 -- ----------------------------------------------------------------------------
358 -- |------------------------< update_enrt_bnft >--- ------------------|
359 -- ----------------------------------------------------------------------------
360 --
361 procedure update_enrt_bnft
362   (
363    p_validate                       in  boolean   default false
364   ,p_enrt_bnft_id                   in  number
365   ,p_dflt_flag                      in  varchar2  default hr_api.g_varchar2
366   ,p_val_has_bn_prortd_flag         in  varchar2  default hr_api.g_varchar2
367   ,p_bndry_perd_cd                  in  varchar2  default hr_api.g_varchar2
368   ,p_val                            in  number    default hr_api.g_number
369   ,p_nnmntry_uom                    in  varchar2  default hr_api.g_varchar2
370   ,p_bnft_typ_cd                    in  varchar2  default hr_api.g_varchar2
371   ,p_entr_val_at_enrt_flag          in  varchar2  default hr_api.g_varchar2
372   ,p_mn_val                         in  number    default hr_api.g_number
373   ,p_mx_val                         in  number    default hr_api.g_number
374   ,p_incrmt_val                     in  number    default hr_api.g_number
375   ,p_dflt_val                       in  number    default hr_api.g_number
376   ,p_rt_typ_cd                      in  varchar2  default hr_api.g_varchar2
377   ,p_cvg_mlt_cd                     in  varchar2  default hr_api.g_varchar2
378   ,p_ctfn_rqd_flag                  in  varchar2  default hr_api.g_varchar2
379   ,p_ordr_num                       in  number    default hr_api.g_number
380   ,p_crntly_enrld_flag              in  varchar2  default hr_api.g_varchar2
381   ,p_elig_per_elctbl_chc_id         in  number    default hr_api.g_number
382   ,p_prtt_enrt_rslt_id              in  number    default hr_api.g_number
383   ,p_comp_lvl_fctr_id               in  number    default hr_api.g_number
384   ,p_business_group_id              in  number    default hr_api.g_number
385   ,p_enb_attribute_category         in  varchar2  default hr_api.g_varchar2
386   ,p_enb_attribute1                 in  varchar2  default hr_api.g_varchar2
387   ,p_enb_attribute2                 in  varchar2  default hr_api.g_varchar2
388   ,p_enb_attribute3                 in  varchar2  default hr_api.g_varchar2
389   ,p_enb_attribute4                 in  varchar2  default hr_api.g_varchar2
390   ,p_enb_attribute5                 in  varchar2  default hr_api.g_varchar2
391   ,p_enb_attribute6                 in  varchar2  default hr_api.g_varchar2
392   ,p_enb_attribute7                 in  varchar2  default hr_api.g_varchar2
393   ,p_enb_attribute8                 in  varchar2  default hr_api.g_varchar2
394   ,p_enb_attribute9                 in  varchar2  default hr_api.g_varchar2
395   ,p_enb_attribute10                in  varchar2  default hr_api.g_varchar2
396   ,p_enb_attribute11                in  varchar2  default hr_api.g_varchar2
397   ,p_enb_attribute12                in  varchar2  default hr_api.g_varchar2
398   ,p_enb_attribute13                in  varchar2  default hr_api.g_varchar2
399   ,p_enb_attribute14                in  varchar2  default hr_api.g_varchar2
400   ,p_enb_attribute15                in  varchar2  default hr_api.g_varchar2
401   ,p_enb_attribute16                in  varchar2  default hr_api.g_varchar2
402   ,p_enb_attribute17                in  varchar2  default hr_api.g_varchar2
403   ,p_enb_attribute18                in  varchar2  default hr_api.g_varchar2
404   ,p_enb_attribute19                in  varchar2  default hr_api.g_varchar2
405   ,p_enb_attribute20                in  varchar2  default hr_api.g_varchar2
406   ,p_enb_attribute21                in  varchar2  default hr_api.g_varchar2
407   ,p_enb_attribute22                in  varchar2  default hr_api.g_varchar2
408   ,p_enb_attribute23                in  varchar2  default hr_api.g_varchar2
409   ,p_enb_attribute24                in  varchar2  default hr_api.g_varchar2
410   ,p_enb_attribute25                in  varchar2  default hr_api.g_varchar2
411   ,p_enb_attribute26                in  varchar2  default hr_api.g_varchar2
412   ,p_enb_attribute27                in  varchar2  default hr_api.g_varchar2
413   ,p_enb_attribute28                in  varchar2  default hr_api.g_varchar2
414   ,p_enb_attribute29                in  varchar2  default hr_api.g_varchar2
415   ,p_enb_attribute30                in  varchar2  default hr_api.g_varchar2
416   ,p_request_id                     in  number    default hr_api.g_number
417   ,p_program_application_id         in  number    default hr_api.g_number
418   ,p_program_id                     in  number    default hr_api.g_number
419   ,p_program_update_date            in  date      default hr_api.g_date
420   ,p_mx_wout_ctfn_val               in  number    default hr_api.g_number
421   ,p_mx_wo_ctfn_flag                in  varchar2  default hr_api.g_varchar2
422   ,p_object_version_number          in out nocopy number
423   ,p_effective_date                 in  date
424   ) is
425   --
426   -- Declare cursors and local variables
427   --
428   l_proc varchar2(72) := g_package||'update_enrt_bnft';
429   l_object_version_number ben_enrt_bnft.object_version_number%TYPE;
430   --
431 begin
432   --
433   hr_utility.set_location('Entering:'|| l_proc, 10);
434   --
435   -- Issue a savepoint if operating in validation only mode
436   --
437   savepoint update_enrt_bnft;
438   --
439   hr_utility.set_location(l_proc, 20);
440   --
441   -- Process Logic
442   --
443   l_object_version_number := p_object_version_number;
444   --
445   begin
446     --
447     -- Start of API User Hook for the before hook of update_enrt_bnft
448     --
449     ben_enrt_bnft_bk2.update_enrt_bnft_b
450       (
451        p_enrt_bnft_id                  => p_enrt_bnft_id
452       ,p_dflt_flag                     => p_dflt_flag
453       ,p_val_has_bn_prortd_flag        => p_val_has_bn_prortd_flag
454       ,p_bndry_perd_cd                 => p_bndry_perd_cd
455       ,p_val                           => p_val
456       ,p_nnmntry_uom                   => p_nnmntry_uom
457       ,p_bnft_typ_cd                   => p_bnft_typ_cd
458       ,p_entr_val_at_enrt_flag         => p_entr_val_at_enrt_flag
459       ,p_mn_val                        => p_mn_val
460       ,p_mx_val                        => p_mx_val
461       ,p_incrmt_val                    => p_incrmt_val
462       ,p_dflt_val                      => p_dflt_val
463       ,p_rt_typ_cd                     => p_rt_typ_cd
464       ,p_cvg_mlt_cd                    => p_cvg_mlt_cd
465       ,p_ctfn_rqd_flag                 => p_ctfn_rqd_flag
466       ,p_ordr_num                      => p_ordr_num
467       ,p_crntly_enrld_flag             => p_crntly_enrld_flag
468       ,p_elig_per_elctbl_chc_id        => p_elig_per_elctbl_chc_id
469       ,p_prtt_enrt_rslt_id             => p_prtt_enrt_rslt_id
470       ,p_comp_lvl_fctr_id              => p_comp_lvl_fctr_id
471       ,p_business_group_id             => p_business_group_id
472       ,p_enb_attribute_category        => p_enb_attribute_category
473       ,p_enb_attribute1                => p_enb_attribute1
474       ,p_enb_attribute2                => p_enb_attribute2
475       ,p_enb_attribute3                => p_enb_attribute3
476       ,p_enb_attribute4                => p_enb_attribute4
477       ,p_enb_attribute5                => p_enb_attribute5
478       ,p_enb_attribute6                => p_enb_attribute6
479       ,p_enb_attribute7                => p_enb_attribute7
480       ,p_enb_attribute8                => p_enb_attribute8
481       ,p_enb_attribute9                => p_enb_attribute9
482       ,p_enb_attribute10               => p_enb_attribute10
483       ,p_enb_attribute11               => p_enb_attribute11
484       ,p_enb_attribute12               => p_enb_attribute12
485       ,p_enb_attribute13               => p_enb_attribute13
486       ,p_enb_attribute14               => p_enb_attribute14
487       ,p_enb_attribute15               => p_enb_attribute15
488       ,p_enb_attribute16               => p_enb_attribute16
489       ,p_enb_attribute17               => p_enb_attribute17
490       ,p_enb_attribute18               => p_enb_attribute18
491       ,p_enb_attribute19               => p_enb_attribute19
492       ,p_enb_attribute20               => p_enb_attribute20
493       ,p_enb_attribute21               => p_enb_attribute21
494       ,p_enb_attribute22               => p_enb_attribute22
495       ,p_enb_attribute23               => p_enb_attribute23
496       ,p_enb_attribute24               => p_enb_attribute24
497       ,p_enb_attribute25               => p_enb_attribute25
498       ,p_enb_attribute26               => p_enb_attribute26
499       ,p_enb_attribute27               => p_enb_attribute27
500       ,p_enb_attribute28               => p_enb_attribute28
501       ,p_enb_attribute29               => p_enb_attribute29
502       ,p_enb_attribute30               => p_enb_attribute30
503       ,p_request_id                    => p_request_id
504       ,p_program_application_id        => p_program_application_id
505       ,p_program_id                    => p_program_id
506       ,p_program_update_date           => p_program_update_date
507       ,p_mx_wout_ctfn_val              => p_mx_wout_ctfn_val
508       ,p_mx_wo_ctfn_flag               => p_mx_wo_ctfn_flag
509       ,p_object_version_number         => l_object_version_number
510       ,p_effective_date                => trunc(p_effective_date)
511       );
512   exception
513     when hr_api.cannot_find_prog_unit then
514       hr_api.cannot_find_prog_unit_error
515         (p_module_name => 'UPDATE_enrt_bnft'
516         ,p_hook_type   => 'BP'
517         );
518     --
519     -- End of API User Hook for the before hook of update_enrt_bnft
520     --
521   end;
522   --
523   ben_enb_upd.upd
524     (
525        p_enrt_bnft_id                  => p_enrt_bnft_id
526       ,p_dflt_flag                     => p_dflt_flag
527       ,p_val_has_bn_prortd_flag        => p_val_has_bn_prortd_flag
528       ,p_bndry_perd_cd                 => p_bndry_perd_cd
529       ,p_val                           => p_val
530       ,p_nnmntry_uom                   => p_nnmntry_uom
531       ,p_bnft_typ_cd                   => p_bnft_typ_cd
532       ,p_entr_val_at_enrt_flag         => p_entr_val_at_enrt_flag
533       ,p_mn_val                        => p_mn_val
534       ,p_mx_val                        => p_mx_val
535       ,p_incrmt_val                    => p_incrmt_val
536       ,p_dflt_val                      => p_dflt_val
537       ,p_rt_typ_cd                     => p_rt_typ_cd
538       ,p_cvg_mlt_cd                    => p_cvg_mlt_cd
539       ,p_ctfn_rqd_flag                 => p_ctfn_rqd_flag
540       ,p_ordr_num                      => p_ordr_num
541       ,p_crntly_enrld_flag             => p_crntly_enrld_flag
542       ,p_elig_per_elctbl_chc_id        => p_elig_per_elctbl_chc_id
543       ,p_prtt_enrt_rslt_id             => p_prtt_enrt_rslt_id
544       ,p_comp_lvl_fctr_id              => p_comp_lvl_fctr_id
545       ,p_business_group_id             => p_business_group_id
546       ,p_enb_attribute_category        => p_enb_attribute_category
547       ,p_enb_attribute1                => p_enb_attribute1
548       ,p_enb_attribute2                => p_enb_attribute2
549       ,p_enb_attribute3                => p_enb_attribute3
550       ,p_enb_attribute4                => p_enb_attribute4
551       ,p_enb_attribute5                => p_enb_attribute5
552       ,p_enb_attribute6                => p_enb_attribute6
553       ,p_enb_attribute7                => p_enb_attribute7
554       ,p_enb_attribute8                => p_enb_attribute8
555       ,p_enb_attribute9                => p_enb_attribute9
556       ,p_enb_attribute10               => p_enb_attribute10
557       ,p_enb_attribute11               => p_enb_attribute11
558       ,p_enb_attribute12               => p_enb_attribute12
559       ,p_enb_attribute13               => p_enb_attribute13
560       ,p_enb_attribute14               => p_enb_attribute14
561       ,p_enb_attribute15               => p_enb_attribute15
562       ,p_enb_attribute16               => p_enb_attribute16
563       ,p_enb_attribute17               => p_enb_attribute17
564       ,p_enb_attribute18               => p_enb_attribute18
565       ,p_enb_attribute19               => p_enb_attribute19
566       ,p_enb_attribute20               => p_enb_attribute20
567       ,p_enb_attribute21               => p_enb_attribute21
568       ,p_enb_attribute22               => p_enb_attribute22
569       ,p_enb_attribute23               => p_enb_attribute23
570       ,p_enb_attribute24               => p_enb_attribute24
571       ,p_enb_attribute25               => p_enb_attribute25
572       ,p_enb_attribute26               => p_enb_attribute26
573       ,p_enb_attribute27               => p_enb_attribute27
574       ,p_enb_attribute28               => p_enb_attribute28
575       ,p_enb_attribute29               => p_enb_attribute29
576       ,p_enb_attribute30               => p_enb_attribute30
577       ,p_request_id                    => p_request_id
578       ,p_program_application_id        => p_program_application_id
579       ,p_program_id                    => p_program_id
580       ,p_program_update_date           => p_program_update_date
581       ,p_mx_wout_ctfn_val              => p_mx_wout_ctfn_val
582       ,p_mx_wo_ctfn_flag               => p_mx_wo_ctfn_flag
583       ,p_object_version_number         => l_object_version_number
584       ,p_effective_date                => trunc(p_effective_date)
585     );
586   --
587   begin
588     --
589     -- Start of API User Hook for the after hook of update_enrt_bnft
590     --
591     ben_enrt_bnft_bk2.update_enrt_bnft_a
592       (
593        p_enrt_bnft_id                  => p_enrt_bnft_id
594       ,p_dflt_flag                     => p_dflt_flag
595       ,p_val_has_bn_prortd_flag        => p_val_has_bn_prortd_flag
596       ,p_bndry_perd_cd                 => p_bndry_perd_cd
597       ,p_val                           => p_val
598       ,p_nnmntry_uom                   => p_nnmntry_uom
599       ,p_bnft_typ_cd                   => p_bnft_typ_cd
600       ,p_entr_val_at_enrt_flag         => p_entr_val_at_enrt_flag
601       ,p_mn_val                        => p_mn_val
602       ,p_mx_val                        => p_mx_val
603       ,p_incrmt_val                    => p_incrmt_val
604       ,p_dflt_val                      => p_dflt_val
605       ,p_rt_typ_cd                     => p_rt_typ_cd
606       ,p_cvg_mlt_cd                    => p_cvg_mlt_cd
607       ,p_ctfn_rqd_flag                 => p_ctfn_rqd_flag
608       ,p_ordr_num                      => p_ordr_num
609       ,p_crntly_enrld_flag             => p_crntly_enrld_flag
610       ,p_elig_per_elctbl_chc_id        => p_elig_per_elctbl_chc_id
611       ,p_prtt_enrt_rslt_id             => p_prtt_enrt_rslt_id
612       ,p_comp_lvl_fctr_id              => p_comp_lvl_fctr_id
613       ,p_business_group_id             => p_business_group_id
614       ,p_enb_attribute_category        => p_enb_attribute_category
615       ,p_enb_attribute1                => p_enb_attribute1
616       ,p_enb_attribute2                => p_enb_attribute2
617       ,p_enb_attribute3                => p_enb_attribute3
618       ,p_enb_attribute4                => p_enb_attribute4
619       ,p_enb_attribute5                => p_enb_attribute5
620       ,p_enb_attribute6                => p_enb_attribute6
621       ,p_enb_attribute7                => p_enb_attribute7
622       ,p_enb_attribute8                => p_enb_attribute8
623       ,p_enb_attribute9                => p_enb_attribute9
624       ,p_enb_attribute10               => p_enb_attribute10
625       ,p_enb_attribute11               => p_enb_attribute11
626       ,p_enb_attribute12               => p_enb_attribute12
627       ,p_enb_attribute13               => p_enb_attribute13
628       ,p_enb_attribute14               => p_enb_attribute14
629       ,p_enb_attribute15               => p_enb_attribute15
630       ,p_enb_attribute16               => p_enb_attribute16
631       ,p_enb_attribute17               => p_enb_attribute17
632       ,p_enb_attribute18               => p_enb_attribute18
633       ,p_enb_attribute19               => p_enb_attribute19
634       ,p_enb_attribute20               => p_enb_attribute20
635       ,p_enb_attribute21               => p_enb_attribute21
636       ,p_enb_attribute22               => p_enb_attribute22
637       ,p_enb_attribute23               => p_enb_attribute23
638       ,p_enb_attribute24               => p_enb_attribute24
639       ,p_enb_attribute25               => p_enb_attribute25
640       ,p_enb_attribute26               => p_enb_attribute26
641       ,p_enb_attribute27               => p_enb_attribute27
642       ,p_enb_attribute28               => p_enb_attribute28
643       ,p_enb_attribute29               => p_enb_attribute29
644       ,p_enb_attribute30               => p_enb_attribute30
645       ,p_request_id                    => p_request_id
646       ,p_program_application_id        => p_program_application_id
647       ,p_program_id                    => p_program_id
648       ,p_program_update_date           => p_program_update_date
649       ,p_mx_wout_ctfn_val              => p_mx_wout_ctfn_val
650       ,p_mx_wo_ctfn_flag               => p_mx_wo_ctfn_flag
651       ,p_object_version_number         => l_object_version_number
652       ,p_effective_date                => trunc(p_effective_date)
653       );
654   exception
655     when hr_api.cannot_find_prog_unit then
656       hr_api.cannot_find_prog_unit_error
657         (p_module_name => 'UPDATE_enrt_bnft'
658         ,p_hook_type   => 'AP'
659         );
660     --
661     -- End of API User Hook for the after hook of update_enrt_bnft
662     --
663   end;
664   --
665   hr_utility.set_location(l_proc, 60);
666   --
667   -- When in validation only mode raise the Validate_Enabled exception
668   --
669   if p_validate then
670     raise hr_api.validate_enabled;
671   end if;
672   --
673   -- Set all output arguments
674   --
675   p_object_version_number := l_object_version_number;
676   --
677   hr_utility.set_location(' Leaving:'||l_proc, 70);
678   --
679 exception
680   --
681   when hr_api.validate_enabled then
682     --
683     -- As the Validate_Enabled exception has been raised
684     -- we must rollback to the savepoint
685     --
686     ROLLBACK TO update_enrt_bnft;
687     --
688     -- Only set output warning arguments
689     -- (Any key or derived arguments must be set to null
690     -- when validation only mode is being used.)
691     --
692     hr_utility.set_location(' Leaving:'||l_proc, 80);
693     --
694   when others then
695     --
696     -- A validation or unexpected error has occured
697     --
698     ROLLBACK TO update_enrt_bnft;
699     p_object_version_number := l_object_version_number; --nocopy change
700     raise;
701     --
702 end update_enrt_bnft;
703 -- ----------------------------------------------------------------------------
704 -- |------------------------< delete_enrt_bnft >----------------------|
705 -- ----------------------------------------------------------------------------
706 --
707 procedure delete_enrt_bnft
708   (p_validate                       in  boolean  default false
709   ,p_enrt_bnft_id                   in  number
710   ,p_object_version_number          in out nocopy number
711   ,p_effective_date                 in  date
712   ) is
713   --
714   -- Declare cursors and local variables
715   --
716   l_proc varchar2(72) := g_package||'update_enrt_bnft';
717   l_object_version_number ben_enrt_bnft.object_version_number%TYPE;
718   --
719 begin
720   --
721   hr_utility.set_location('Entering:'|| l_proc, 10);
722   --
723   -- Issue a savepoint if operating in validation only mode
724   --
725   savepoint delete_enrt_bnft;
726   --
727   hr_utility.set_location(l_proc, 20);
728   --
729   -- Process Logic
730   --
731   l_object_version_number := p_object_version_number;
732   --
733   --
734   begin
735     --
736     -- Start of API User Hook for the before hook of delete_enrt_bnft
737     --
738     ben_enrt_bnft_bk3.delete_enrt_bnft_b
739       (
740        p_enrt_bnft_id                   =>  p_enrt_bnft_id
741       ,p_object_version_number          =>  p_object_version_number
742     ,p_effective_date                      => trunc(p_effective_date)
743       );
744   exception
745     when hr_api.cannot_find_prog_unit then
746       hr_api.cannot_find_prog_unit_error
747         (p_module_name => 'DELETE_enrt_bnft'
748         ,p_hook_type   => 'BP'
749         );
750     --
751     -- End of API User Hook for the before hook of delete_enrt_bnft
752     --
753   end;
754   --
755   ben_enb_del.del
756     (
757      p_enrt_bnft_id                  => p_enrt_bnft_id
758     ,p_object_version_number         => l_object_version_number
759     ,p_effective_date                => p_effective_date
760     );
761   --
762   begin
763     --
764     -- Start of API User Hook for the after hook of delete_enrt_bnft
765     --
766     ben_enrt_bnft_bk3.delete_enrt_bnft_a
767       (
768        p_enrt_bnft_id                   =>  p_enrt_bnft_id
769       ,p_object_version_number          =>  l_object_version_number
770     ,p_effective_date                      => trunc(p_effective_date)
771       );
772   exception
773     when hr_api.cannot_find_prog_unit then
774       hr_api.cannot_find_prog_unit_error
775         (p_module_name => 'DELETE_enrt_bnft'
776         ,p_hook_type   => 'AP'
777         );
778     --
779     -- End of API User Hook for the after hook of delete_enrt_bnft
780     --
781   end;
782   --
783   hr_utility.set_location(l_proc, 60);
784   --
785   -- When in validation only mode raise the Validate_Enabled exception
786   --
787   if p_validate then
788     raise hr_api.validate_enabled;
789   end if;
790   --
791   hr_utility.set_location(' Leaving:'||l_proc, 70);
792   --
793 exception
794   --
795   when hr_api.validate_enabled then
796     --
797     -- As the Validate_Enabled exception has been raised
798     -- we must rollback to the savepoint
799     --
800     ROLLBACK TO delete_enrt_bnft;
801     p_object_version_number := l_object_version_number; --nocopy change
802     --
803     -- Only set output warning arguments
804     -- (Any key or derived arguments must be set to null
805     -- when validation only mode is being used.)
806     --
807     --
808   when others then
809     --
810     -- A validation or unexpected error has occured
811     --
812     ROLLBACK TO delete_enrt_bnft;
813     p_object_version_number := l_object_version_number; --nocopy change
814     raise;
815     --
816 end delete_enrt_bnft;
817 --
818 -- ----------------------------------------------------------------------------
819 -- |-------------------------------< lck >------------------------------------|
820 -- ----------------------------------------------------------------------------
821 --
822 procedure lck
823   (
824    p_enrt_bnft_id                   in     number
825   ,p_object_version_number          in     number
826   ) is
827   --
828   --
829   -- Declare cursors and local variables
830   --
831   l_proc varchar2(72) := g_package||'lck';
832   --
833 begin
834   --
835   hr_utility.set_location('Entering:'|| l_proc, 10);
836   --
837   ben_enb_shd.lck
838     (
839       p_enrt_bnft_id                 => p_enrt_bnft_id
840      ,p_object_version_number      => p_object_version_number
841     );
842   --
843   hr_utility.set_location(' Leaving:'||l_proc, 70);
844   --
845 end lck;
846 --
847 end ben_enrt_bnft_api;