DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_PLAN_IN_PROGRAM_API

Source


1 Package Body ben_Plan_in_Program_api as
2 /* $Header: becppapi.pkb 120.0.12020000.2 2012/07/03 12:03:24 amnaraya ship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  ben_Plan_in_Program_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_Plan_in_Program >----------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_Plan_in_Program
13   (p_validate                       in  boolean   default false
14   ,p_plip_id                        out nocopy number
15   ,p_effective_start_date           out nocopy date
16   ,p_effective_end_date             out nocopy date
17   ,p_dflt_flag                      in  varchar2  default null
18   ,p_plip_stat_cd                   in  varchar2  default null
19   ,p_dflt_enrt_cd                   in  varchar2  default null
20   ,p_dflt_enrt_det_rl               in  number    default null
21   ,p_ordr_num                       in  number    default null
22   ,p_ivr_ident                      in  varchar2  default null
23   ,p_enrt_cd                        in  varchar2  default null
24   ,p_enrt_mthd_cd                   in  varchar2  default null
25   ,p_auto_enrt_mthd_rl              in  number    default null
26   ,p_enrt_rl                        in  number    default null
27   ,p_alws_unrstrctd_enrt_flag       in  varchar2  default 'N'
28   ,p_enrt_cvg_strt_dt_cd            in  varchar2  default null
29   ,p_enrt_cvg_strt_dt_rl            in  number    default null
30   ,p_enrt_cvg_end_dt_cd             in  varchar2  default null
31   ,p_enrt_cvg_end_dt_rl             in  number    default null
32   ,p_rt_strt_dt_cd                  in  varchar2  default null
33   ,p_rt_strt_dt_rl                  in  number    default null
34   ,p_rt_end_dt_cd                   in  varchar2  default null
35   ,p_rt_end_dt_rl                   in  number    default null
36   ,p_drvbl_fctr_apls_rts_flag       in  varchar2  default 'N'
37   ,p_drvbl_fctr_prtn_elig_flag      in  varchar2  default 'N'
38   ,p_elig_apls_flag                 in  varchar2  default 'N'
39   ,p_prtn_elig_ovrid_alwd_flag      in  varchar2  default 'N'
40   ,p_trk_inelig_per_flag            in  varchar2  default 'N'
41   ,p_postelcn_edit_rl               in  number    default null
42   ,p_pgm_id                         in  number    default null
43   ,p_pl_id                          in  number    default null
44   ,p_cmbn_plip_id                   in  number    default null
45   ,p_business_group_id              in  number    default null
46   ,p_per_cvrd_cd                    in  varchar2  default null
47   ,p_short_name                    in  varchar2  default null
48   ,p_short_code                    in  varchar2  default null
49     ,p_legislation_code                    in  varchar2  default null
50     ,p_legislation_subgroup                    in  varchar2  default null
51   ,P_vrfy_fmly_mmbr_rl              in  number    default null
52   ,P_vrfy_fmly_mmbr_cd              in  varchar2  default null
53   ,P_use_csd_rsd_prccng_cd          in  varchar2  default null
54   ,p_cpp_attribute_category         in  varchar2  default null
55   ,p_cpp_attribute1                 in  varchar2  default null
56   ,p_cpp_attribute2                 in  varchar2  default null
57   ,p_cpp_attribute3                 in  varchar2  default null
58   ,p_cpp_attribute4                 in  varchar2  default null
59   ,p_cpp_attribute5                 in  varchar2  default null
60   ,p_cpp_attribute6                 in  varchar2  default null
61   ,p_cpp_attribute7                 in  varchar2  default null
62   ,p_cpp_attribute8                 in  varchar2  default null
63   ,p_cpp_attribute9                 in  varchar2  default null
64   ,p_cpp_attribute10                in  varchar2  default null
65   ,p_cpp_attribute11                in  varchar2  default null
66   ,p_cpp_attribute12                in  varchar2  default null
67   ,p_cpp_attribute13                in  varchar2  default null
68   ,p_cpp_attribute14                in  varchar2  default null
69   ,p_cpp_attribute15                in  varchar2  default null
70   ,p_cpp_attribute16                in  varchar2  default null
71   ,p_cpp_attribute17                in  varchar2  default null
72   ,p_cpp_attribute18                in  varchar2  default null
73   ,p_cpp_attribute19                in  varchar2  default null
74   ,p_cpp_attribute20                in  varchar2  default null
75   ,p_cpp_attribute21                in  varchar2  default null
76   ,p_cpp_attribute22                in  varchar2  default null
77   ,p_cpp_attribute23                in  varchar2  default null
78   ,p_cpp_attribute24                in  varchar2  default null
79   ,p_cpp_attribute25                in  varchar2  default null
80   ,p_cpp_attribute26                in  varchar2  default null
81   ,p_cpp_attribute27                in  varchar2  default null
82   ,p_cpp_attribute28                in  varchar2  default null
83   ,p_cpp_attribute29                in  varchar2  default null
84   ,p_cpp_attribute30                in  varchar2  default null
85   ,p_object_version_number          out nocopy number
86   ,p_url_ref_name                   in  varchar2  default null
87   ,p_dflt_to_asn_pndg_ctfn_cd       in  varchar2  default null
88   ,p_dflt_to_asn_pndg_ctfn_rl       in  number    default null
89   ,p_mn_cvg_amt                     in  number    default null
90   ,p_mn_cvg_rl                      in  number    default null
91   ,p_mx_cvg_alwd_amt                in  number    default null
92   ,p_mx_cvg_incr_alwd_amt           in  number    default null
93   ,p_mx_cvg_incr_wcf_alwd_amt       in  number    default null
94   ,p_mx_cvg_mlt_incr_num            in  number    default null
95   ,p_mx_cvg_mlt_incr_wcf_num        in  number    default null
96   ,p_mx_cvg_rl                      in  number    default null
97   ,p_mx_cvg_wcfn_amt                in  number    default null
98   ,p_mx_cvg_wcfn_mlt_num            in  number    default null
99   ,p_no_mn_cvg_amt_apls_flag        in  varchar2  default 'N'
100   ,p_no_mn_cvg_incr_apls_flag       in  varchar2  default 'N'
101   ,p_no_mx_cvg_amt_apls_flag        in  varchar2  default 'N'
102   ,p_no_mx_cvg_incr_apls_flag       in  varchar2  default 'N'
103   ,p_unsspnd_enrt_cd                in  varchar2  default null
104   ,p_prort_prtl_yr_cvg_rstrn_cd     in  varchar2  default null
105   ,p_prort_prtl_yr_cvg_rstrn_rl     in  number    default null
106   ,p_cvg_incr_r_decr_only_cd        in  varchar2  default null
107   ,p_bnft_or_option_rstrctn_cd      in  varchar2  default null
108   ,p_all_inelig                     in  varchar2  default 'N'
109   ,p_effective_date                 in  date
110   ) is
111   --
112  -- Declare cursors and local variables
113   --
114   cursor c_cop is
115      select cop.oipl_id
116      from   ben_oipl_f cop
117      where  cop.pl_id = p_pl_id
118      and    cop.business_group_id + 0 = p_business_group_id
119      and    p_effective_date between
120             cop.effective_start_date and cop.effective_end_date;
121   --
122   cursor c_otp is
123     select
124       plip.pgm_id,
125       pl.pl_typ_id,
126       ptip.ptip_id,
127       oipl.opt_id
128     from
129       ben_oipl_f oipl,
130       ben_ptip_f ptip,
131       ben_plip_f plip,
132       ben_pl_f pl
133     where
134         pl.pl_id = p_pl_id
135     and plip.pl_id = pl.pl_id
136     and ptip.pgm_id = p_pgm_id
137     and pl.business_group_id = p_business_group_id
138     and plip.business_group_id = p_business_group_id
139     and oipl.business_group_id = p_business_group_id
140     and plip.pgm_id = ptip.pgm_id
141     and pl.pl_typ_id = ptip.pl_typ_id
142     and pl.pl_id = oipl.pl_id
143     and p_effective_date between  plip.effective_start_date and  plip.effective_end_date
144     and p_effective_date between   pl.effective_start_date and   pl.effective_end_date
145     and p_effective_date between ptip.effective_start_date and ptip.effective_end_date
146     and p_effective_date between oipl.effective_start_date and oipl.effective_end_date ;
147 
148 
149   l_plip_id ben_plip_f.plip_id%TYPE;
150   l_effective_start_date ben_plip_f.effective_start_date%TYPE;
151   l_effective_end_date ben_plip_f.effective_end_date%TYPE;
152   l_proc varchar2(72) := g_package||'create_Plan_in_Program';
153   l_object_version_number ben_plip_f.object_version_number%TYPE;
154   --
155   l_oiplip_id                 ben_oiplip_f.oiplip_id%type;
156   l_opp_effective_start_date  ben_oiplip_f.effective_start_date%type;
157   l_opp_effective_end_date    ben_oiplip_f.effective_end_date%type;
158   l_opp_object_version_number ben_oiplip_f.object_version_number%type;
159   --
160   -- ben_optip_f
161   l_optip_id                  ben_optip_f.optip_id%type;
162   l_otp_effective_start_date  ben_optip_f.effective_start_date%type;
163   l_otp_effective_end_date    ben_optip_f.effective_end_date%type;
164   l_otp_object_version_number ben_optip_f.object_version_number%type;
165 
166 
167   --
168 begin
169   --
170   hr_utility.set_location('Entering:'|| l_proc, 10);
171   --
172   -- Issue a savepoint if operating in validation only mode
173   --
174   savepoint create_Plan_in_Program;
175   --
176   hr_utility.set_location(l_proc, 20);
177   --
178   -- Process Logic
179   --
180   begin
181     --
182     -- Start of API User Hook for the before hook of create_Plan_in_Program
183     --
184     ben_Plan_in_Program_bk1.create_Plan_in_Program_b
185       (
186        p_dflt_flag                      =>  p_dflt_flag
187       ,p_plip_stat_cd                   =>  p_plip_stat_cd
188       ,p_dflt_enrt_cd                   =>  p_dflt_enrt_cd
189       ,p_dflt_enrt_det_rl               =>  p_dflt_enrt_det_rl
190       ,p_ordr_num                       =>  p_ordr_num
191       ,p_ivr_ident                      =>  p_ivr_ident
192       ,p_enrt_cd                        =>  p_enrt_cd
193       ,p_enrt_mthd_cd                   =>  p_enrt_mthd_cd
194       ,p_auto_enrt_mthd_rl              =>  p_auto_enrt_mthd_rl
195       ,p_enrt_rl                        =>  p_enrt_rl
196       ,p_alws_unrstrctd_enrt_flag       =>  p_alws_unrstrctd_enrt_flag
197       ,p_enrt_cvg_strt_dt_cd            =>  p_enrt_cvg_strt_dt_cd
198       ,p_enrt_cvg_strt_dt_rl            =>  p_enrt_cvg_strt_dt_rl
199       ,p_enrt_cvg_end_dt_cd             =>  p_enrt_cvg_end_dt_cd
200       ,p_enrt_cvg_end_dt_rl             =>  p_enrt_cvg_end_dt_rl
201       ,p_rt_strt_dt_cd                  =>  p_rt_strt_dt_cd
202       ,p_rt_strt_dt_rl                  =>  p_rt_strt_dt_rl
203       ,p_rt_end_dt_cd                   =>  p_rt_end_dt_cd
204       ,p_rt_end_dt_rl                   =>  p_rt_end_dt_rl
205       ,p_drvbl_fctr_apls_rts_flag       =>  p_drvbl_fctr_apls_rts_flag
206       ,p_drvbl_fctr_prtn_elig_flag      =>  p_drvbl_fctr_prtn_elig_flag
207       ,p_elig_apls_flag                 =>  p_elig_apls_flag
208       ,p_prtn_elig_ovrid_alwd_flag      =>  p_prtn_elig_ovrid_alwd_flag
209       ,p_trk_inelig_per_flag            =>  p_trk_inelig_per_flag
210       ,p_postelcn_edit_rl               =>  p_postelcn_edit_rl
211       ,p_pgm_id                         =>  p_pgm_id
212       ,p_pl_id                          =>  p_pl_id
213       ,p_cmbn_plip_id                   =>  p_cmbn_plip_id
214       ,p_business_group_id              =>  p_business_group_id
215       ,p_per_cvrd_cd                    =>  p_per_cvrd_cd
216       ,p_short_name                    =>  p_short_name
217       ,p_short_code                    =>  p_short_code
218             ,p_legislation_code                    =>  p_legislation_code
219             ,p_legislation_subgroup                    =>  p_legislation_subgroup
220       ,P_vrfy_fmly_mmbr_rl              =>  P_vrfy_fmly_mmbr_rl
221       ,P_vrfy_fmly_mmbr_cd              =>  P_vrfy_fmly_mmbr_cd
222       ,P_use_csd_rsd_prccng_cd          =>  P_use_csd_rsd_prccng_cd
223       ,p_cpp_attribute_category         =>  p_cpp_attribute_category
224       ,p_cpp_attribute1                 =>  p_cpp_attribute1
225       ,p_cpp_attribute2                 =>  p_cpp_attribute2
226       ,p_cpp_attribute3                 =>  p_cpp_attribute3
227       ,p_cpp_attribute4                 =>  p_cpp_attribute4
228       ,p_cpp_attribute5                 =>  p_cpp_attribute5
229       ,p_cpp_attribute6                 =>  p_cpp_attribute6
230       ,p_cpp_attribute7                 =>  p_cpp_attribute7
231       ,p_cpp_attribute8                 =>  p_cpp_attribute8
232       ,p_cpp_attribute9                 =>  p_cpp_attribute9
233       ,p_cpp_attribute10                =>  p_cpp_attribute10
234       ,p_cpp_attribute11                =>  p_cpp_attribute11
235       ,p_cpp_attribute12                =>  p_cpp_attribute12
236       ,p_cpp_attribute13                =>  p_cpp_attribute13
237       ,p_cpp_attribute14                =>  p_cpp_attribute14
238       ,p_cpp_attribute15                =>  p_cpp_attribute15
239       ,p_cpp_attribute16                =>  p_cpp_attribute16
240       ,p_cpp_attribute17                =>  p_cpp_attribute17
241       ,p_cpp_attribute18                =>  p_cpp_attribute18
242       ,p_cpp_attribute19                =>  p_cpp_attribute19
243       ,p_cpp_attribute20                =>  p_cpp_attribute20
244       ,p_cpp_attribute21                =>  p_cpp_attribute21
245       ,p_cpp_attribute22                =>  p_cpp_attribute22
246       ,p_cpp_attribute23                =>  p_cpp_attribute23
247       ,p_cpp_attribute24                =>  p_cpp_attribute24
248       ,p_cpp_attribute25                =>  p_cpp_attribute25
249       ,p_cpp_attribute26                =>  p_cpp_attribute26
250       ,p_cpp_attribute27                =>  p_cpp_attribute27
251       ,p_cpp_attribute28                =>  p_cpp_attribute28
252       ,p_cpp_attribute29                =>  p_cpp_attribute29
253       ,p_cpp_attribute30                =>  p_cpp_attribute30
254       ,p_url_ref_name                   =>  p_url_ref_name
255       ,p_dflt_to_asn_pndg_ctfn_cd       =>  p_dflt_to_asn_pndg_ctfn_cd
256       ,p_dflt_to_asn_pndg_ctfn_rl       =>  p_dflt_to_asn_pndg_ctfn_rl
257       ,p_mn_cvg_amt                     =>  p_mn_cvg_amt
258       ,p_mn_cvg_rl                      =>  p_mn_cvg_rl
259       ,p_mx_cvg_alwd_amt                =>  p_mx_cvg_alwd_amt
260       ,p_mx_cvg_incr_alwd_amt           =>  p_mx_cvg_incr_alwd_amt
261       ,p_mx_cvg_incr_wcf_alwd_amt       =>  p_mx_cvg_incr_wcf_alwd_amt
262       ,p_mx_cvg_mlt_incr_num            =>  p_mx_cvg_mlt_incr_num
263       ,p_mx_cvg_mlt_incr_wcf_num        =>  p_mx_cvg_mlt_incr_wcf_num
264       ,p_mx_cvg_rl                      =>  p_mx_cvg_rl
265       ,p_mx_cvg_wcfn_amt                =>  p_mx_cvg_wcfn_amt
266       ,p_mx_cvg_wcfn_mlt_num            =>  p_mx_cvg_wcfn_mlt_num
267       ,p_no_mn_cvg_amt_apls_flag        =>  p_no_mn_cvg_amt_apls_flag
268       ,p_no_mn_cvg_incr_apls_flag       =>  p_no_mn_cvg_incr_apls_flag
269       ,p_no_mx_cvg_amt_apls_flag        =>  p_no_mx_cvg_amt_apls_flag
270       ,p_no_mx_cvg_incr_apls_flag       =>  p_no_mx_cvg_incr_apls_flag
271       ,p_unsspnd_enrt_cd                =>  p_unsspnd_enrt_cd
272       ,p_prort_prtl_yr_cvg_rstrn_cd     =>  p_prort_prtl_yr_cvg_rstrn_cd
273       ,p_prort_prtl_yr_cvg_rstrn_rl     =>  p_prort_prtl_yr_cvg_rstrn_rl
274       ,p_cvg_incr_r_decr_only_cd        =>  p_cvg_incr_r_decr_only_cd
275       ,p_bnft_or_option_rstrctn_cd      =>  p_bnft_or_option_rstrctn_cd
276       ,p_all_inelig                     =>  p_all_inelig
277       ,p_effective_date                 => trunc(p_effective_date)
278       );
279   exception
280     when hr_api.cannot_find_prog_unit then
281       hr_api.cannot_find_prog_unit_error
282         (
283          p_module_name => 'CREATE_Plan_in_Program'
284         ,p_hook_type   => 'BP'
285         );
286     --
287     -- End of API User Hook for the before hook of create_Plan_in_Program
288     --
289   end;
290   --
291   BEN_CPP_ins.ins
292     (
293      p_plip_id                       => l_plip_id
294     ,p_effective_start_date          => l_effective_start_date
295     ,p_effective_end_date            => l_effective_end_date
296     ,p_dflt_flag                     => p_dflt_flag
297     ,p_plip_stat_cd                  => p_plip_stat_cd
298     ,p_dflt_enrt_cd                  => p_dflt_enrt_cd
299     ,p_dflt_enrt_det_rl              => p_dflt_enrt_det_rl
300     ,p_ordr_num                      => p_ordr_num
301     ,p_ivr_ident                     => p_ivr_ident
302     ,p_enrt_cd                       => p_enrt_cd
303     ,p_enrt_mthd_cd                  => p_enrt_mthd_cd
304     ,p_auto_enrt_mthd_rl             => p_auto_enrt_mthd_rl
305     ,p_enrt_rl                       => p_enrt_rl
306     ,p_alws_unrstrctd_enrt_flag      => p_alws_unrstrctd_enrt_flag
307     ,p_enrt_cvg_strt_dt_cd           => p_enrt_cvg_strt_dt_cd
308     ,p_enrt_cvg_strt_dt_rl           => p_enrt_cvg_strt_dt_rl
309     ,p_enrt_cvg_end_dt_cd            => p_enrt_cvg_end_dt_cd
310     ,p_enrt_cvg_end_dt_rl            => p_enrt_cvg_end_dt_rl
311     ,p_rt_strt_dt_cd                 => p_rt_strt_dt_cd
312     ,p_rt_strt_dt_rl                 => p_rt_strt_dt_rl
313     ,p_rt_end_dt_cd                  => p_rt_end_dt_cd
314     ,p_rt_end_dt_rl                  => p_rt_end_dt_rl
315     ,p_drvbl_fctr_apls_rts_flag      => p_drvbl_fctr_apls_rts_flag
316     ,p_drvbl_fctr_prtn_elig_flag     => p_drvbl_fctr_prtn_elig_flag
317     ,p_elig_apls_flag                => p_elig_apls_flag
318     ,p_prtn_elig_ovrid_alwd_flag     => p_prtn_elig_ovrid_alwd_flag
319     ,p_trk_inelig_per_flag           => p_trk_inelig_per_flag
320     ,p_postelcn_edit_rl              => p_postelcn_edit_rl
321     ,p_pgm_id                        => p_pgm_id
322     ,p_pl_id                         => p_pl_id
323     ,p_cmbn_plip_id                  => p_cmbn_plip_id
324     ,p_business_group_id             => p_business_group_id
325     ,p_per_cvrd_cd                   => p_per_cvrd_cd
326     ,p_short_name                   => p_short_name
327     ,p_short_code                   => p_short_code
328         ,p_legislation_code                   => p_legislation_code
329         ,p_legislation_subgroup                   => p_legislation_subgroup
330     ,P_vrfy_fmly_mmbr_rl             => P_vrfy_fmly_mmbr_rl
331     ,P_vrfy_fmly_mmbr_cd             => P_vrfy_fmly_mmbr_cd
332     ,P_use_csd_rsd_prccng_cd         => P_use_csd_rsd_prccng_cd
333     ,p_cpp_attribute_category        => p_cpp_attribute_category
334     ,p_cpp_attribute1                => p_cpp_attribute1
335     ,p_cpp_attribute2                => p_cpp_attribute2
336     ,p_cpp_attribute3                => p_cpp_attribute3
337     ,p_cpp_attribute4                => p_cpp_attribute4
338     ,p_cpp_attribute5                => p_cpp_attribute5
339     ,p_cpp_attribute6                => p_cpp_attribute6
340     ,p_cpp_attribute7                => p_cpp_attribute7
341     ,p_cpp_attribute8                => p_cpp_attribute8
342     ,p_cpp_attribute9                => p_cpp_attribute9
343     ,p_cpp_attribute10               => p_cpp_attribute10
344     ,p_cpp_attribute11               => p_cpp_attribute11
345     ,p_cpp_attribute12               => p_cpp_attribute12
346     ,p_cpp_attribute13               => p_cpp_attribute13
347     ,p_cpp_attribute14               => p_cpp_attribute14
348     ,p_cpp_attribute15               => p_cpp_attribute15
349     ,p_cpp_attribute16               => p_cpp_attribute16
350     ,p_cpp_attribute17               => p_cpp_attribute17
351     ,p_cpp_attribute18               => p_cpp_attribute18
352     ,p_cpp_attribute19               => p_cpp_attribute19
353     ,p_cpp_attribute20               => p_cpp_attribute20
354     ,p_cpp_attribute21               => p_cpp_attribute21
355     ,p_cpp_attribute22               => p_cpp_attribute22
356     ,p_cpp_attribute23               => p_cpp_attribute23
357     ,p_cpp_attribute24               => p_cpp_attribute24
358     ,p_cpp_attribute25               => p_cpp_attribute25
359     ,p_cpp_attribute26               => p_cpp_attribute26
360     ,p_cpp_attribute27               => p_cpp_attribute27
361     ,p_cpp_attribute28               => p_cpp_attribute28
362     ,p_cpp_attribute29               => p_cpp_attribute29
363     ,p_cpp_attribute30               => p_cpp_attribute30
364     ,p_object_version_number         => l_object_version_number
365     ,p_url_ref_name                  => p_url_ref_name
366     ,p_dflt_to_asn_pndg_ctfn_cd      => p_dflt_to_asn_pndg_ctfn_cd
367     ,p_dflt_to_asn_pndg_ctfn_rl      => p_dflt_to_asn_pndg_ctfn_rl
368     ,p_mn_cvg_amt                    => p_mn_cvg_amt
369     ,p_mn_cvg_rl                     => p_mn_cvg_rl
370     ,p_mx_cvg_alwd_amt               => p_mx_cvg_alwd_amt
371     ,p_mx_cvg_incr_alwd_amt          => p_mx_cvg_incr_alwd_amt
372     ,p_mx_cvg_incr_wcf_alwd_amt      => p_mx_cvg_incr_wcf_alwd_amt
373     ,p_mx_cvg_mlt_incr_num           => p_mx_cvg_mlt_incr_num
374     ,p_mx_cvg_mlt_incr_wcf_num       => p_mx_cvg_mlt_incr_wcf_num
375     ,p_mx_cvg_rl                     => p_mx_cvg_rl
376     ,p_mx_cvg_wcfn_amt               => p_mx_cvg_wcfn_amt
377     ,p_mx_cvg_wcfn_mlt_num           => p_mx_cvg_wcfn_mlt_num
378     ,p_no_mn_cvg_amt_apls_flag       => p_no_mn_cvg_amt_apls_flag
379     ,p_no_mn_cvg_incr_apls_flag      => p_no_mn_cvg_incr_apls_flag
380     ,p_no_mx_cvg_amt_apls_flag       => p_no_mx_cvg_amt_apls_flag
381     ,p_no_mx_cvg_incr_apls_flag      => p_no_mx_cvg_incr_apls_flag
382     ,p_unsspnd_enrt_cd               => p_unsspnd_enrt_cd
383     ,p_prort_prtl_yr_cvg_rstrn_cd    => p_prort_prtl_yr_cvg_rstrn_cd
384     ,p_prort_prtl_yr_cvg_rstrn_rl    => p_prort_prtl_yr_cvg_rstrn_rl
385     ,p_cvg_incr_r_decr_only_cd       => p_cvg_incr_r_decr_only_cd
386     ,p_bnft_or_option_rstrctn_cd     => p_bnft_or_option_rstrctn_cd
387     ,p_all_inelig                     =>  p_all_inelig
388     ,p_effective_date                => trunc(p_effective_date)
389     );
390   --
391   begin
392     --
393     -- Start of API User Hook for the after hook of create_Plan_in_Program
394     --
395     ben_Plan_in_Program_bk1.create_Plan_in_Program_a
396       (
397        p_plip_id                        =>  l_plip_id
398       ,p_effective_start_date           =>  l_effective_start_date
399       ,p_effective_end_date             =>  l_effective_end_date
400       ,p_dflt_flag                      =>  p_dflt_flag
401       ,p_plip_stat_cd                   =>  p_plip_stat_cd
402       ,p_dflt_enrt_cd                   =>  p_dflt_enrt_cd
403       ,p_dflt_enrt_det_rl               =>  p_dflt_enrt_det_rl
404       ,p_ordr_num                       =>  p_ordr_num
405       ,p_ivr_ident                      =>  p_ivr_ident
406       ,p_enrt_cd                        =>  p_enrt_cd
407       ,p_enrt_mthd_cd                   =>  p_enrt_mthd_cd
408       ,p_auto_enrt_mthd_rl              =>  p_auto_enrt_mthd_rl
409       ,p_enrt_rl                        =>  p_enrt_rl
410       ,p_alws_unrstrctd_enrt_flag       =>  p_alws_unrstrctd_enrt_flag
411       ,p_enrt_cvg_strt_dt_cd            =>  p_enrt_cvg_strt_dt_cd
412       ,p_enrt_cvg_strt_dt_rl            =>  p_enrt_cvg_strt_dt_rl
413       ,p_enrt_cvg_end_dt_cd             =>  p_enrt_cvg_end_dt_cd
414       ,p_enrt_cvg_end_dt_rl             =>  p_enrt_cvg_end_dt_rl
415       ,p_rt_strt_dt_cd                  =>  p_rt_strt_dt_cd
416       ,p_rt_strt_dt_rl                  =>  p_rt_strt_dt_rl
417       ,p_rt_end_dt_cd                   =>  p_rt_end_dt_cd
418       ,p_rt_end_dt_rl                   =>  p_rt_end_dt_rl
419       ,p_drvbl_fctr_apls_rts_flag       =>  p_drvbl_fctr_apls_rts_flag
420       ,p_drvbl_fctr_prtn_elig_flag      =>  p_drvbl_fctr_prtn_elig_flag
421       ,p_elig_apls_flag                 =>  p_elig_apls_flag
422       ,p_prtn_elig_ovrid_alwd_flag      =>  p_prtn_elig_ovrid_alwd_flag
423       ,p_trk_inelig_per_flag            =>  p_trk_inelig_per_flag
424       ,p_postelcn_edit_rl               =>  p_postelcn_edit_rl
425       ,p_pgm_id                         =>  p_pgm_id
426       ,p_pl_id                          =>  p_pl_id
427       ,p_cmbn_plip_id                   =>  p_cmbn_plip_id
428       ,p_business_group_id              =>  p_business_group_id
429       ,p_per_cvrd_cd                    =>  p_per_cvrd_cd
430       ,p_short_name                    =>  p_short_name
431       ,p_short_code                    =>  p_short_code
432             ,p_legislation_code                    =>  p_legislation_code
433             ,p_legislation_subgroup                    =>  p_legislation_subgroup
434       ,P_vrfy_fmly_mmbr_rl              =>  P_vrfy_fmly_mmbr_rl
435       ,P_vrfy_fmly_mmbr_cd              =>  P_vrfy_fmly_mmbr_cd
436       ,P_use_csd_rsd_prccng_cd          =>  P_use_csd_rsd_prccng_cd
437       ,p_cpp_attribute_category         =>  p_cpp_attribute_category
438       ,p_cpp_attribute1                 =>  p_cpp_attribute1
439       ,p_cpp_attribute2                 =>  p_cpp_attribute2
440       ,p_cpp_attribute3                 =>  p_cpp_attribute3
441       ,p_cpp_attribute4                 =>  p_cpp_attribute4
442       ,p_cpp_attribute5                 =>  p_cpp_attribute5
443       ,p_cpp_attribute6                 =>  p_cpp_attribute6
444       ,p_cpp_attribute7                 =>  p_cpp_attribute7
445       ,p_cpp_attribute8                 =>  p_cpp_attribute8
446       ,p_cpp_attribute9                 =>  p_cpp_attribute9
447       ,p_cpp_attribute10                =>  p_cpp_attribute10
448       ,p_cpp_attribute11                =>  p_cpp_attribute11
449       ,p_cpp_attribute12                =>  p_cpp_attribute12
450       ,p_cpp_attribute13                =>  p_cpp_attribute13
451       ,p_cpp_attribute14                =>  p_cpp_attribute14
452       ,p_cpp_attribute15                =>  p_cpp_attribute15
453       ,p_cpp_attribute16                =>  p_cpp_attribute16
454       ,p_cpp_attribute17                =>  p_cpp_attribute17
455       ,p_cpp_attribute18                =>  p_cpp_attribute18
456       ,p_cpp_attribute19                =>  p_cpp_attribute19
457       ,p_cpp_attribute20                =>  p_cpp_attribute20
458       ,p_cpp_attribute21                =>  p_cpp_attribute21
459       ,p_cpp_attribute22                =>  p_cpp_attribute22
460       ,p_cpp_attribute23                =>  p_cpp_attribute23
461       ,p_cpp_attribute24                =>  p_cpp_attribute24
462       ,p_cpp_attribute25                =>  p_cpp_attribute25
463       ,p_cpp_attribute26                =>  p_cpp_attribute26
464       ,p_cpp_attribute27                =>  p_cpp_attribute27
465       ,p_cpp_attribute28                =>  p_cpp_attribute28
466       ,p_cpp_attribute29                =>  p_cpp_attribute29
467       ,p_cpp_attribute30                =>  p_cpp_attribute30
468       ,p_object_version_number          =>  l_object_version_number
469       ,p_url_ref_name                   =>  p_url_ref_name
470       ,p_dflt_to_asn_pndg_ctfn_cd       =>  p_dflt_to_asn_pndg_ctfn_cd
471       ,p_dflt_to_asn_pndg_ctfn_rl       =>  p_dflt_to_asn_pndg_ctfn_rl
472       ,p_mn_cvg_amt                     =>  p_mn_cvg_amt
473       ,p_mn_cvg_rl                      =>  p_mn_cvg_rl
474       ,p_mx_cvg_alwd_amt                =>  p_mx_cvg_alwd_amt
475       ,p_mx_cvg_incr_alwd_amt           =>  p_mx_cvg_incr_alwd_amt
476       ,p_mx_cvg_incr_wcf_alwd_amt       =>  p_mx_cvg_incr_wcf_alwd_amt
477       ,p_mx_cvg_mlt_incr_num            =>  p_mx_cvg_mlt_incr_num
478       ,p_mx_cvg_mlt_incr_wcf_num        =>  p_mx_cvg_mlt_incr_wcf_num
479       ,p_mx_cvg_rl                      =>  p_mx_cvg_rl
480       ,p_mx_cvg_wcfn_amt                =>  p_mx_cvg_wcfn_amt
481       ,p_mx_cvg_wcfn_mlt_num            =>  p_mx_cvg_wcfn_mlt_num
482       ,p_no_mn_cvg_amt_apls_flag        =>  p_no_mn_cvg_amt_apls_flag
483       ,p_no_mn_cvg_incr_apls_flag       =>  p_no_mn_cvg_incr_apls_flag
484       ,p_no_mx_cvg_amt_apls_flag        =>  p_no_mx_cvg_amt_apls_flag
485       ,p_no_mx_cvg_incr_apls_flag       =>  p_no_mx_cvg_incr_apls_flag
486       ,p_unsspnd_enrt_cd                =>  p_unsspnd_enrt_cd
487       ,p_prort_prtl_yr_cvg_rstrn_cd     =>  p_prort_prtl_yr_cvg_rstrn_cd
488       ,p_prort_prtl_yr_cvg_rstrn_rl     =>  p_prort_prtl_yr_cvg_rstrn_rl
489       ,p_cvg_incr_r_decr_only_cd        =>  p_cvg_incr_r_decr_only_cd
490       ,p_bnft_or_option_rstrctn_cd      =>  p_bnft_or_option_rstrctn_cd
491       ,p_all_inelig                     =>  p_all_inelig
492       ,p_effective_date                 => trunc(p_effective_date)
493       );
494   exception
495     when hr_api.cannot_find_prog_unit then
496       hr_api.cannot_find_prog_unit_error
497         (p_module_name => 'CREATE_Plan_in_Program'
498         ,p_hook_type   => 'AP'
499         );
500     --
501     -- End of API User Hook for the after hook of create_Plan_in_Program
502     --
503   end;
504   --
505  for l_cop in c_cop loop
506     --
507     ben_option_in_plan_in_pgm_api.create_option_in_plan_in_pgm(
508          p_validate                => false,
509          p_oiplip_id               => l_oiplip_id,
510          p_effective_start_date    => l_opp_effective_start_date,
511          p_effective_end_date      => l_opp_effective_end_date,
512          p_oipl_id                 => l_cop.oipl_id,
513          p_plip_id                 => l_plip_id,
514          p_business_group_id       => p_business_group_id,
515          p_object_version_number   => l_opp_object_version_number,
516          p_effective_date          => p_effective_date);
517     --
518   end loop;
519   -- bug 1285336
520   hr_utility.set_location(l_proc, 60);
521   FOR l_otp IN c_otp LOOP
522     --
523     hr_utility.set_location('Before entering into create_opt_pltyp_in_pgm ', 65);
524     hr_utility.set_location('l_otp.pgm_id '||l_otp.pgm_id , 65.1);
525     hr_utility.set_location('l_otp.ptip_id'||l_otp.ptip_id,65.2);
526     hr_utility.set_location('l_otp.pl_typ_id'||l_otp.pl_typ_id,65.3);
527     --
528     ben_opt_pltyp_in_pgm_api.create_opt_pltyp_in_pgm
529         (p_validate                      => false
530         ,p_optip_id                      =>l_optip_id
531         ,p_effective_start_date          =>l_otp_effective_start_date
532         ,p_effective_end_date            =>l_otp_effective_end_date
533         ,p_business_group_id             =>p_business_group_id
534         ,p_pgm_id                        =>l_otp.pgm_id
535         ,p_ptip_id                       =>l_otp.ptip_id
536         ,p_pl_typ_id                     =>l_otp.pl_typ_id
537         ,p_opt_id                        =>l_otp.opt_id
538     --  ,p_cmbn_ptip_opt_id              =>p_cmbn_ptip_opt_id
539         ,p_object_version_number         =>l_otp_object_version_number
540         ,p_effective_date                =>p_effective_date
541     );
542     hr_utility.set_location('Before entering into create_opt_pltyp_in_pgm ', 66);
543   END LOOP ;
544 
545   --
546   -- When in validation only mode raise the Validate_Enabled exception
547   --
548 
549   if p_validate then
550     raise hr_api.validate_enabled;
551   end if;
552   --
553   -- Set all output arguments
554   --
555   p_plip_id := l_plip_id;
556   p_effective_start_date := l_effective_start_date;
557   p_effective_end_date := l_effective_end_date;
558   p_object_version_number := l_object_version_number;
559   --
560   hr_utility.set_location(' Leaving:'||l_proc, 70);
561   --
562 exception
563   --
564   when hr_api.validate_enabled then
565     --
566     -- As the Validate_Enabled exception has been raised
567     -- we must rollback to the savepoint
568     --
569     ROLLBACK TO create_Plan_in_Program;
570     --
571     -- Only set output warning arguments
572     -- (Any key or derived arguments must be set to null
573     -- when validation only mode is being used.)
574     --
575     p_plip_id := null;
576     p_effective_start_date := null;
577     p_effective_end_date := null;
578     p_object_version_number  := null;
579     hr_utility.set_location(' Leaving:'||l_proc, 80);
580     --
581   when others then
582     --
583     -- A validation or unexpected error has occured
584     --
585     ROLLBACK TO create_Plan_in_Program;
586     raise;
587     --
588 end create_Plan_in_Program;
589 -- ----------------------------------------------------------------------------
590 -- |------------------------< update_Plan_in_Program >--- ------------------|
591 -- ----------------------------------------------------------------------------
592 --
593 procedure update_Plan_in_Program
594   (p_validate                       in  boolean   default false
595   ,p_plip_id                        in  number
596   ,p_effective_start_date           out nocopy date
597   ,p_effective_end_date             out nocopy date
598   ,p_dflt_flag                      in  varchar2  default hr_api.g_varchar2
599   ,p_plip_stat_cd                   in  varchar2  default hr_api.g_varchar2
600   ,p_dflt_enrt_cd                   in  varchar2  default hr_api.g_varchar2
601   ,p_dflt_enrt_det_rl               in  number    default hr_api.g_number
602   ,p_ordr_num                       in  number    default hr_api.g_number
603   ,p_ivr_ident                      in  varchar2  default hr_api.g_varchar2
604   ,p_enrt_cd                        in  varchar2  default hr_api.g_varchar2
605   ,p_enrt_mthd_cd                   in  varchar2  default hr_api.g_varchar2
606   ,p_auto_enrt_mthd_rl              in  number    default hr_api.g_number
607   ,p_enrt_rl                        in  number    default hr_api.g_number
608   ,p_alws_unrstrctd_enrt_flag       in  varchar2  default hr_api.g_varchar2
609   ,p_enrt_cvg_strt_dt_cd            in  varchar2  default hr_api.g_varchar2
610   ,p_enrt_cvg_strt_dt_rl            in  number    default hr_api.g_number
611   ,p_enrt_cvg_end_dt_cd             in  varchar2  default hr_api.g_varchar2
612   ,p_enrt_cvg_end_dt_rl             in  number    default hr_api.g_number
613   ,p_rt_strt_dt_cd                  in  varchar2  default hr_api.g_varchar2
614   ,p_rt_strt_dt_rl                  in  number    default hr_api.g_number
615   ,p_rt_end_dt_cd                   in  varchar2  default hr_api.g_varchar2
616   ,p_rt_end_dt_rl                   in  number    default hr_api.g_number
617   ,p_drvbl_fctr_apls_rts_flag       in  varchar2  default hr_api.g_varchar2
618   ,p_drvbl_fctr_prtn_elig_flag      in  varchar2  default hr_api.g_varchar2
619   ,p_elig_apls_flag                 in  varchar2  default hr_api.g_varchar2
620   ,p_prtn_elig_ovrid_alwd_flag      in  varchar2  default hr_api.g_varchar2
621   ,p_trk_inelig_per_flag            in  varchar2  default hr_api.g_varchar2
622   ,p_postelcn_edit_rl               in  number    default hr_api.g_number
623   ,p_pgm_id                         in  number    default hr_api.g_number
624   ,p_pl_id                          in  number    default hr_api.g_number
625   ,p_cmbn_plip_id                   in  number    default hr_api.g_number
626   ,p_business_group_id              in  number    default hr_api.g_number
627   ,p_per_cvrd_cd                    in  varchar2  default hr_api.g_varchar2
628   ,p_short_name                    in  varchar2  default hr_api.g_varchar2
629   ,p_short_code                    in  varchar2  default hr_api.g_varchar2
630     ,p_legislation_code                    in  varchar2  default hr_api.g_varchar2
631     ,p_legislation_subgroup                    in  varchar2  default hr_api.g_varchar2
632   ,P_vrfy_fmly_mmbr_rl              in  number    default hr_api.g_number
633   ,P_vrfy_fmly_mmbr_cd              in  varchar2  default hr_api.g_varchar2
634   ,P_use_csd_rsd_prccng_cd          in  varchar2  default hr_api.g_varchar2
635   ,p_cpp_attribute_category         in  varchar2  default hr_api.g_varchar2
636   ,p_cpp_attribute1                 in  varchar2  default hr_api.g_varchar2
637   ,p_cpp_attribute2                 in  varchar2  default hr_api.g_varchar2
638   ,p_cpp_attribute3                 in  varchar2  default hr_api.g_varchar2
639   ,p_cpp_attribute4                 in  varchar2  default hr_api.g_varchar2
640   ,p_cpp_attribute5                 in  varchar2  default hr_api.g_varchar2
641   ,p_cpp_attribute6                 in  varchar2  default hr_api.g_varchar2
642   ,p_cpp_attribute7                 in  varchar2  default hr_api.g_varchar2
643   ,p_cpp_attribute8                 in  varchar2  default hr_api.g_varchar2
644   ,p_cpp_attribute9                 in  varchar2  default hr_api.g_varchar2
645   ,p_cpp_attribute10                in  varchar2  default hr_api.g_varchar2
646   ,p_cpp_attribute11                in  varchar2  default hr_api.g_varchar2
647   ,p_cpp_attribute12                in  varchar2  default hr_api.g_varchar2
648   ,p_cpp_attribute13                in  varchar2  default hr_api.g_varchar2
649   ,p_cpp_attribute14                in  varchar2  default hr_api.g_varchar2
650   ,p_cpp_attribute15                in  varchar2  default hr_api.g_varchar2
651   ,p_cpp_attribute16                in  varchar2  default hr_api.g_varchar2
652   ,p_cpp_attribute17                in  varchar2  default hr_api.g_varchar2
653   ,p_cpp_attribute18                in  varchar2  default hr_api.g_varchar2
654   ,p_cpp_attribute19                in  varchar2  default hr_api.g_varchar2
655   ,p_cpp_attribute20                in  varchar2  default hr_api.g_varchar2
656   ,p_cpp_attribute21                in  varchar2  default hr_api.g_varchar2
657   ,p_cpp_attribute22                in  varchar2  default hr_api.g_varchar2
658   ,p_cpp_attribute23                in  varchar2  default hr_api.g_varchar2
659   ,p_cpp_attribute24                in  varchar2  default hr_api.g_varchar2
660   ,p_cpp_attribute25                in  varchar2  default hr_api.g_varchar2
661   ,p_cpp_attribute26                in  varchar2  default hr_api.g_varchar2
662   ,p_cpp_attribute27                in  varchar2  default hr_api.g_varchar2
663   ,p_cpp_attribute28                in  varchar2  default hr_api.g_varchar2
664   ,p_cpp_attribute29                in  varchar2  default hr_api.g_varchar2
665   ,p_cpp_attribute30                in  varchar2  default hr_api.g_varchar2
666   ,p_object_version_number          in out nocopy number
667   ,p_url_ref_name                   in  varchar2  default hr_api.g_varchar2
668   ,p_dflt_to_asn_pndg_ctfn_cd       in  varchar2  default hr_api.g_varchar2
669   ,p_dflt_to_asn_pndg_ctfn_rl       in  number    default hr_api.g_number
670   ,p_mn_cvg_amt                     in  number    default hr_api.g_number
671   ,p_mn_cvg_rl                      in  number    default hr_api.g_number
672   ,p_mx_cvg_alwd_amt                in  number    default hr_api.g_number
673   ,p_mx_cvg_incr_alwd_amt           in  number    default hr_api.g_number
674   ,p_mx_cvg_incr_wcf_alwd_amt       in  number    default hr_api.g_number
675   ,p_mx_cvg_mlt_incr_num            in  number    default hr_api.g_number
676   ,p_mx_cvg_mlt_incr_wcf_num        in  number    default hr_api.g_number
677   ,p_mx_cvg_rl                      in  number    default hr_api.g_number
678   ,p_mx_cvg_wcfn_amt                in  number    default hr_api.g_number
679   ,p_mx_cvg_wcfn_mlt_num            in  number    default hr_api.g_number
680   ,p_no_mn_cvg_amt_apls_flag        in  varchar2  default hr_api.g_varchar2
681   ,p_no_mn_cvg_incr_apls_flag       in  varchar2  default hr_api.g_varchar2
682   ,p_no_mx_cvg_amt_apls_flag        in  varchar2  default hr_api.g_varchar2
683   ,p_no_mx_cvg_incr_apls_flag       in  varchar2  default hr_api.g_varchar2
684   ,p_unsspnd_enrt_cd                in  varchar2  default hr_api.g_varchar2
685   ,p_prort_prtl_yr_cvg_rstrn_cd     in  varchar2  default hr_api.g_varchar2
686   ,p_prort_prtl_yr_cvg_rstrn_rl     in  number    default hr_api.g_number
687   ,p_cvg_incr_r_decr_only_cd        in  varchar2  default hr_api.g_varchar2
688   ,p_bnft_or_option_rstrctn_cd      in  varchar2  default hr_api.g_varchar2
689   ,p_all_inelig                     in  varchar2  default hr_api.g_varchar2
690   ,p_effective_date                 in  date
691   ,p_datetrack_mode                 in  varchar2
692   ) is
693   --
694   -- Declare cursors and local variables
695   --
696   l_proc varchar2(72) := g_package||'update_Plan_in_Program';
697   l_object_version_number ben_plip_f.object_version_number%TYPE;
698   l_effective_start_date ben_plip_f.effective_start_date%TYPE;
699   l_effective_end_date ben_plip_f.effective_end_date%TYPE;
700   --
701 begin
702   --
703   hr_utility.set_location('Entering:'|| l_proc, 10);
704   --
705   -- Issue a savepoint if operating in validation only mode
706   --
707   savepoint update_Plan_in_Program;
708   --
709   hr_utility.set_location(l_proc, 20);
710   --
711   -- Process Logic
712   --
713   l_object_version_number := p_object_version_number;
714   --
715   begin
716     --
717     -- Start of API User Hook for the before hook of update_Plan_in_Program
718     --
719     ben_Plan_in_Program_bk2.update_Plan_in_Program_b
720       (
721        p_plip_id                        =>  p_plip_id
722       ,p_dflt_flag                      =>  p_dflt_flag
723       ,p_plip_stat_cd                   =>  p_plip_stat_cd
724       ,p_dflt_enrt_cd                   =>  p_dflt_enrt_cd
725       ,p_dflt_enrt_det_rl               =>  p_dflt_enrt_det_rl
726       ,p_ordr_num                       =>  p_ordr_num
727       ,p_ivr_ident                      =>  p_ivr_ident
728       ,p_enrt_cd                        =>  p_enrt_cd
729       ,p_enrt_mthd_cd                   =>  p_enrt_mthd_cd
730       ,p_auto_enrt_mthd_rl              =>  p_auto_enrt_mthd_rl
731       ,p_enrt_rl                        =>  p_enrt_rl
732       ,p_alws_unrstrctd_enrt_flag       =>  p_alws_unrstrctd_enrt_flag
733       ,p_enrt_cvg_strt_dt_cd            =>  p_enrt_cvg_strt_dt_cd
734       ,p_enrt_cvg_strt_dt_rl            =>  p_enrt_cvg_strt_dt_rl
735       ,p_enrt_cvg_end_dt_cd             =>  p_enrt_cvg_end_dt_cd
736       ,p_enrt_cvg_end_dt_rl             =>  p_enrt_cvg_end_dt_rl
737       ,p_rt_strt_dt_cd                  =>  p_rt_strt_dt_cd
738       ,p_rt_strt_dt_rl                  =>  p_rt_strt_dt_rl
739       ,p_rt_end_dt_cd                   =>  p_rt_end_dt_cd
740       ,p_rt_end_dt_rl                   =>  p_rt_end_dt_rl
741       ,p_drvbl_fctr_apls_rts_flag       =>  p_drvbl_fctr_apls_rts_flag
742       ,p_drvbl_fctr_prtn_elig_flag      =>  p_drvbl_fctr_prtn_elig_flag
743       ,p_elig_apls_flag                 =>  p_elig_apls_flag
744       ,p_prtn_elig_ovrid_alwd_flag      =>  p_prtn_elig_ovrid_alwd_flag
745       ,p_trk_inelig_per_flag            =>  p_trk_inelig_per_flag
746       ,p_postelcn_edit_rl               =>  p_postelcn_edit_rl
747       ,p_pgm_id                         =>  p_pgm_id
748       ,p_pl_id                          =>  p_pl_id
749       ,p_cmbn_plip_id                   =>  p_cmbn_plip_id
750       ,p_business_group_id              =>  p_business_group_id
751       ,p_per_cvrd_cd                    =>  p_per_cvrd_cd
752       ,p_short_name                    =>  p_short_name
753       ,p_short_code                    =>  p_short_code
754             ,p_legislation_code                    =>  p_legislation_code
755             ,p_legislation_subgroup                    =>  p_legislation_subgroup
756       ,P_vrfy_fmly_mmbr_rl              =>  P_vrfy_fmly_mmbr_rl
757       ,P_vrfy_fmly_mmbr_cd              =>  P_vrfy_fmly_mmbr_cd
758       ,P_use_csd_rsd_prccng_cd          =>  P_use_csd_rsd_prccng_cd
759       ,p_cpp_attribute_category         =>  p_cpp_attribute_category
760       ,p_cpp_attribute1                 =>  p_cpp_attribute1
761       ,p_cpp_attribute2                 =>  p_cpp_attribute2
762       ,p_cpp_attribute3                 =>  p_cpp_attribute3
763       ,p_cpp_attribute4                 =>  p_cpp_attribute4
764       ,p_cpp_attribute5                 =>  p_cpp_attribute5
765       ,p_cpp_attribute6                 =>  p_cpp_attribute6
766       ,p_cpp_attribute7                 =>  p_cpp_attribute7
767       ,p_cpp_attribute8                 =>  p_cpp_attribute8
768       ,p_cpp_attribute9                 =>  p_cpp_attribute9
769       ,p_cpp_attribute10                =>  p_cpp_attribute10
770       ,p_cpp_attribute11                =>  p_cpp_attribute11
771       ,p_cpp_attribute12                =>  p_cpp_attribute12
772       ,p_cpp_attribute13                =>  p_cpp_attribute13
773       ,p_cpp_attribute14                =>  p_cpp_attribute14
774       ,p_cpp_attribute15                =>  p_cpp_attribute15
775       ,p_cpp_attribute16                =>  p_cpp_attribute16
776       ,p_cpp_attribute17                =>  p_cpp_attribute17
777       ,p_cpp_attribute18                =>  p_cpp_attribute18
778       ,p_cpp_attribute19                =>  p_cpp_attribute19
779       ,p_cpp_attribute20                =>  p_cpp_attribute20
780       ,p_cpp_attribute21                =>  p_cpp_attribute21
781       ,p_cpp_attribute22                =>  p_cpp_attribute22
782       ,p_cpp_attribute23                =>  p_cpp_attribute23
783       ,p_cpp_attribute24                =>  p_cpp_attribute24
784       ,p_cpp_attribute25                =>  p_cpp_attribute25
785       ,p_cpp_attribute26                =>  p_cpp_attribute26
786       ,p_cpp_attribute27                =>  p_cpp_attribute27
787       ,p_cpp_attribute28                =>  p_cpp_attribute28
788       ,p_cpp_attribute29                =>  p_cpp_attribute29
789       ,p_cpp_attribute30                =>  p_cpp_attribute30
790       ,p_object_version_number          =>  p_object_version_number
791       ,p_url_ref_name                   =>  p_url_ref_name
792       ,p_dflt_to_asn_pndg_ctfn_cd       =>  p_dflt_to_asn_pndg_ctfn_cd
793       ,p_dflt_to_asn_pndg_ctfn_rl       =>  p_dflt_to_asn_pndg_ctfn_rl
794       ,p_mn_cvg_amt                     =>  p_mn_cvg_amt
795       ,p_mn_cvg_rl                      =>  p_mn_cvg_rl
796       ,p_mx_cvg_alwd_amt                =>  p_mx_cvg_alwd_amt
797       ,p_mx_cvg_incr_alwd_amt           =>  p_mx_cvg_incr_alwd_amt
798       ,p_mx_cvg_incr_wcf_alwd_amt       =>  p_mx_cvg_incr_wcf_alwd_amt
799       ,p_mx_cvg_mlt_incr_num            =>  p_mx_cvg_mlt_incr_num
800       ,p_mx_cvg_mlt_incr_wcf_num        =>  p_mx_cvg_mlt_incr_wcf_num
801       ,p_mx_cvg_rl                      =>  p_mx_cvg_rl
802       ,p_mx_cvg_wcfn_amt                =>  p_mx_cvg_wcfn_amt
803       ,p_mx_cvg_wcfn_mlt_num            =>  p_mx_cvg_wcfn_mlt_num
804       ,p_no_mn_cvg_amt_apls_flag        =>  p_no_mn_cvg_amt_apls_flag
805       ,p_no_mn_cvg_incr_apls_flag       =>  p_no_mn_cvg_incr_apls_flag
806       ,p_no_mx_cvg_amt_apls_flag        =>  p_no_mx_cvg_amt_apls_flag
807       ,p_no_mx_cvg_incr_apls_flag       =>  p_no_mx_cvg_incr_apls_flag
808       ,p_unsspnd_enrt_cd                =>  p_unsspnd_enrt_cd
809       ,p_prort_prtl_yr_cvg_rstrn_cd     =>  p_prort_prtl_yr_cvg_rstrn_cd
810       ,p_prort_prtl_yr_cvg_rstrn_rl     =>  p_prort_prtl_yr_cvg_rstrn_rl
811       ,p_cvg_incr_r_decr_only_cd        =>  p_cvg_incr_r_decr_only_cd
812       ,p_bnft_or_option_rstrctn_cd      =>  p_bnft_or_option_rstrctn_cd
813       ,p_all_inelig                     =>  p_all_inelig
814     ,p_effective_date                      => trunc(p_effective_date)
815     ,p_datetrack_mode                      => p_datetrack_mode
816       );
817   exception
818     when hr_api.cannot_find_prog_unit then
819       hr_api.cannot_find_prog_unit_error
820         (p_module_name => 'UPDATE_Plan_in_Program'
821         ,p_hook_type   => 'BP'
822         );
823     --
824     -- End of API User Hook for the before hook of update_Plan_in_Program
825     --
826   end;
827   --
828   BEN_CPP_upd.upd
829     (
830      p_plip_id                       => p_plip_id
831     ,p_effective_start_date          => l_effective_start_date
832     ,p_effective_end_date            => l_effective_end_date
833     ,p_dflt_flag                     => p_dflt_flag
834     ,p_plip_stat_cd                  => p_plip_stat_cd
835     ,p_dflt_enrt_cd                  => p_dflt_enrt_cd
836     ,p_dflt_enrt_det_rl              => p_dflt_enrt_det_rl
837     ,p_ordr_num                      => p_ordr_num
838     ,p_ivr_ident                     => p_ivr_ident
839     ,p_enrt_cd                       => p_enrt_cd
840     ,p_enrt_mthd_cd                  => p_enrt_mthd_cd
841     ,p_auto_enrt_mthd_rl             => p_auto_enrt_mthd_rl
842     ,p_enrt_rl                       => p_enrt_rl
843     ,p_alws_unrstrctd_enrt_flag      => p_alws_unrstrctd_enrt_flag
844     ,p_enrt_cvg_strt_dt_cd           => p_enrt_cvg_strt_dt_cd
845     ,p_enrt_cvg_strt_dt_rl           => p_enrt_cvg_strt_dt_rl
846     ,p_enrt_cvg_end_dt_cd            => p_enrt_cvg_end_dt_cd
847     ,p_enrt_cvg_end_dt_rl            => p_enrt_cvg_end_dt_rl
848     ,p_rt_strt_dt_cd                 => p_rt_strt_dt_cd
849     ,p_rt_strt_dt_rl                 => p_rt_strt_dt_rl
850     ,p_rt_end_dt_cd                  => p_rt_end_dt_cd
851     ,p_rt_end_dt_rl                  => p_rt_end_dt_rl
852     ,p_drvbl_fctr_apls_rts_flag      => p_drvbl_fctr_apls_rts_flag
853     ,p_drvbl_fctr_prtn_elig_flag     => p_drvbl_fctr_prtn_elig_flag
854     ,p_elig_apls_flag                => p_elig_apls_flag
855     ,p_prtn_elig_ovrid_alwd_flag     => p_prtn_elig_ovrid_alwd_flag
856     ,p_trk_inelig_per_flag           => p_trk_inelig_per_flag
857     ,p_postelcn_edit_rl              => p_postelcn_edit_rl
858     ,p_pgm_id                        => p_pgm_id
859     ,p_pl_id                         => p_pl_id
860     ,p_cmbn_plip_id                  => p_cmbn_plip_id
861     ,p_business_group_id             => p_business_group_id
862     ,p_per_cvrd_cd                   => p_per_cvrd_cd
863     ,p_short_name                   => p_short_name
864     ,p_short_code                   => p_short_code
865         ,p_legislation_code                   => p_legislation_code
866         ,p_legislation_subgroup                   => p_legislation_subgroup
867     ,P_vrfy_fmly_mmbr_rl             => P_vrfy_fmly_mmbr_rl
868     ,P_vrfy_fmly_mmbr_cd             => P_vrfy_fmly_mmbr_cd
869     ,P_use_csd_rsd_prccng_cd         => P_use_csd_rsd_prccng_cd
870     ,p_cpp_attribute_category        => p_cpp_attribute_category
871     ,p_cpp_attribute1                => p_cpp_attribute1
872     ,p_cpp_attribute2                => p_cpp_attribute2
873     ,p_cpp_attribute3                => p_cpp_attribute3
874     ,p_cpp_attribute4                => p_cpp_attribute4
875     ,p_cpp_attribute5                => p_cpp_attribute5
876     ,p_cpp_attribute6                => p_cpp_attribute6
877     ,p_cpp_attribute7                => p_cpp_attribute7
878     ,p_cpp_attribute8                => p_cpp_attribute8
879     ,p_cpp_attribute9                => p_cpp_attribute9
880     ,p_cpp_attribute10               => p_cpp_attribute10
881     ,p_cpp_attribute11               => p_cpp_attribute11
882     ,p_cpp_attribute12               => p_cpp_attribute12
883     ,p_cpp_attribute13               => p_cpp_attribute13
884     ,p_cpp_attribute14               => p_cpp_attribute14
885     ,p_cpp_attribute15               => p_cpp_attribute15
886     ,p_cpp_attribute16               => p_cpp_attribute16
887     ,p_cpp_attribute17               => p_cpp_attribute17
888     ,p_cpp_attribute18               => p_cpp_attribute18
889     ,p_cpp_attribute19               => p_cpp_attribute19
890     ,p_cpp_attribute20               => p_cpp_attribute20
891     ,p_cpp_attribute21               => p_cpp_attribute21
892     ,p_cpp_attribute22               => p_cpp_attribute22
893     ,p_cpp_attribute23               => p_cpp_attribute23
894     ,p_cpp_attribute24               => p_cpp_attribute24
895     ,p_cpp_attribute25               => p_cpp_attribute25
896     ,p_cpp_attribute26               => p_cpp_attribute26
897     ,p_cpp_attribute27               => p_cpp_attribute27
898     ,p_cpp_attribute28               => p_cpp_attribute28
899     ,p_cpp_attribute29               => p_cpp_attribute29
900     ,p_cpp_attribute30               => p_cpp_attribute30
901     ,p_object_version_number         => l_object_version_number
902     ,p_url_ref_name                  => p_url_ref_name
903     ,p_dflt_to_asn_pndg_ctfn_cd      => p_dflt_to_asn_pndg_ctfn_cd
904     ,p_dflt_to_asn_pndg_ctfn_rl      => p_dflt_to_asn_pndg_ctfn_rl
905     ,p_mn_cvg_amt                    => p_mn_cvg_amt
906     ,p_mn_cvg_rl                     => p_mn_cvg_rl
907     ,p_mx_cvg_alwd_amt               => p_mx_cvg_alwd_amt
908     ,p_mx_cvg_incr_alwd_amt          => p_mx_cvg_incr_alwd_amt
909     ,p_mx_cvg_incr_wcf_alwd_amt      => p_mx_cvg_incr_wcf_alwd_amt
910     ,p_mx_cvg_mlt_incr_num           => p_mx_cvg_mlt_incr_num
911     ,p_mx_cvg_mlt_incr_wcf_num       => p_mx_cvg_mlt_incr_wcf_num
912     ,p_mx_cvg_rl                     => p_mx_cvg_rl
913     ,p_mx_cvg_wcfn_amt               => p_mx_cvg_wcfn_amt
914     ,p_mx_cvg_wcfn_mlt_num           => p_mx_cvg_wcfn_mlt_num
915     ,p_no_mn_cvg_amt_apls_flag       => p_no_mn_cvg_amt_apls_flag
916     ,p_no_mn_cvg_incr_apls_flag      => p_no_mn_cvg_incr_apls_flag
917     ,p_no_mx_cvg_amt_apls_flag       => p_no_mx_cvg_amt_apls_flag
918     ,p_no_mx_cvg_incr_apls_flag      => p_no_mx_cvg_incr_apls_flag
919     ,p_unsspnd_enrt_cd               => p_unsspnd_enrt_cd
920     ,p_prort_prtl_yr_cvg_rstrn_cd    => p_prort_prtl_yr_cvg_rstrn_cd
921     ,p_prort_prtl_yr_cvg_rstrn_rl    => p_prort_prtl_yr_cvg_rstrn_rl
922     ,p_cvg_incr_r_decr_only_cd       => p_cvg_incr_r_decr_only_cd
923     ,p_bnft_or_option_rstrctn_cd     => p_bnft_or_option_rstrctn_cd
924     ,p_all_inelig                     =>  p_all_inelig
925     ,p_effective_date                => trunc(p_effective_date)
926     ,p_datetrack_mode                => p_datetrack_mode
927     );
928   --
929   begin
930     --
931     -- Start of API User Hook for the after hook of update_Plan_in_Program
932     --
933     ben_Plan_in_Program_bk2.update_Plan_in_Program_a
934       (
935        p_plip_id                        =>  p_plip_id
936       ,p_effective_start_date           =>  l_effective_start_date
937       ,p_effective_end_date             =>  l_effective_end_date
938       ,p_dflt_flag                      =>  p_dflt_flag
939       ,p_plip_stat_cd                   =>  p_plip_stat_cd
940       ,p_dflt_enrt_cd                   =>  p_dflt_enrt_cd
941       ,p_dflt_enrt_det_rl               =>  p_dflt_enrt_det_rl
942       ,p_ordr_num                       =>  p_ordr_num
943       ,p_ivr_ident                      =>  p_ivr_ident
944       ,p_enrt_cd                        =>  p_enrt_cd
945       ,p_enrt_mthd_cd                   =>  p_enrt_mthd_cd
946       ,p_auto_enrt_mthd_rl              =>  p_auto_enrt_mthd_rl
947       ,p_enrt_rl                        =>  p_enrt_rl
948       ,p_alws_unrstrctd_enrt_flag       =>  p_alws_unrstrctd_enrt_flag
949       ,p_enrt_cvg_strt_dt_cd            =>  p_enrt_cvg_strt_dt_cd
950       ,p_enrt_cvg_strt_dt_rl            =>  p_enrt_cvg_strt_dt_rl
951       ,p_enrt_cvg_end_dt_cd             =>  p_enrt_cvg_end_dt_cd
952       ,p_enrt_cvg_end_dt_rl             =>  p_enrt_cvg_end_dt_rl
953       ,p_rt_strt_dt_cd                  =>  p_rt_strt_dt_cd
954       ,p_rt_strt_dt_rl                  =>  p_rt_strt_dt_rl
955       ,p_rt_end_dt_cd                   =>  p_rt_end_dt_cd
956       ,p_rt_end_dt_rl                   =>  p_rt_end_dt_rl
957       ,p_drvbl_fctr_apls_rts_flag       =>  p_drvbl_fctr_apls_rts_flag
958       ,p_drvbl_fctr_prtn_elig_flag      =>  p_drvbl_fctr_prtn_elig_flag
959       ,p_elig_apls_flag                 =>  p_elig_apls_flag
960       ,p_prtn_elig_ovrid_alwd_flag      =>  p_prtn_elig_ovrid_alwd_flag
961       ,p_trk_inelig_per_flag            =>  p_trk_inelig_per_flag
962       ,p_postelcn_edit_rl               =>  p_postelcn_edit_rl
963       ,p_pgm_id                         =>  p_pgm_id
964       ,p_pl_id                          =>  p_pl_id
965       ,p_cmbn_plip_id                   =>  p_cmbn_plip_id
966       ,p_business_group_id              =>  p_business_group_id
967       ,p_per_cvrd_cd                    =>  p_per_cvrd_cd
968       ,p_short_name                    =>  p_short_name
969       ,p_short_code                    =>  p_short_code
970             ,p_legislation_code                    =>  p_legislation_code
971             ,p_legislation_subgroup                    =>  p_legislation_subgroup
972       ,P_vrfy_fmly_mmbr_rl              =>  P_vrfy_fmly_mmbr_rl
973       ,P_vrfy_fmly_mmbr_cd              =>  P_vrfy_fmly_mmbr_cd
974       ,P_use_csd_rsd_prccng_cd          =>  P_use_csd_rsd_prccng_cd
975       ,p_cpp_attribute_category         =>  p_cpp_attribute_category
976       ,p_cpp_attribute1                 =>  p_cpp_attribute1
977       ,p_cpp_attribute2                 =>  p_cpp_attribute2
978       ,p_cpp_attribute3                 =>  p_cpp_attribute3
979       ,p_cpp_attribute4                 =>  p_cpp_attribute4
980       ,p_cpp_attribute5                 =>  p_cpp_attribute5
981       ,p_cpp_attribute6                 =>  p_cpp_attribute6
982       ,p_cpp_attribute7                 =>  p_cpp_attribute7
983       ,p_cpp_attribute8                 =>  p_cpp_attribute8
984       ,p_cpp_attribute9                 =>  p_cpp_attribute9
985       ,p_cpp_attribute10                =>  p_cpp_attribute10
986       ,p_cpp_attribute11                =>  p_cpp_attribute11
987       ,p_cpp_attribute12                =>  p_cpp_attribute12
988       ,p_cpp_attribute13                =>  p_cpp_attribute13
989       ,p_cpp_attribute14                =>  p_cpp_attribute14
990       ,p_cpp_attribute15                =>  p_cpp_attribute15
991       ,p_cpp_attribute16                =>  p_cpp_attribute16
992       ,p_cpp_attribute17                =>  p_cpp_attribute17
993       ,p_cpp_attribute18                =>  p_cpp_attribute18
994       ,p_cpp_attribute19                =>  p_cpp_attribute19
995       ,p_cpp_attribute20                =>  p_cpp_attribute20
996       ,p_cpp_attribute21                =>  p_cpp_attribute21
997       ,p_cpp_attribute22                =>  p_cpp_attribute22
998       ,p_cpp_attribute23                =>  p_cpp_attribute23
999       ,p_cpp_attribute24                =>  p_cpp_attribute24
1000       ,p_cpp_attribute25                =>  p_cpp_attribute25
1001       ,p_cpp_attribute26                =>  p_cpp_attribute26
1002       ,p_cpp_attribute27                =>  p_cpp_attribute27
1003       ,p_cpp_attribute28                =>  p_cpp_attribute28
1004       ,p_cpp_attribute29                =>  p_cpp_attribute29
1005       ,p_cpp_attribute30                =>  p_cpp_attribute30
1006       ,p_object_version_number          =>  l_object_version_number
1007       ,p_url_ref_name                   =>  p_url_ref_name
1008       ,p_dflt_to_asn_pndg_ctfn_cd       =>  p_dflt_to_asn_pndg_ctfn_cd
1009       ,p_dflt_to_asn_pndg_ctfn_rl       =>  p_dflt_to_asn_pndg_ctfn_rl
1010       ,p_mn_cvg_amt                     =>  p_mn_cvg_amt
1011       ,p_mn_cvg_rl                      =>  p_mn_cvg_rl
1012       ,p_mx_cvg_alwd_amt                =>  p_mx_cvg_alwd_amt
1013       ,p_mx_cvg_incr_alwd_amt           =>  p_mx_cvg_incr_alwd_amt
1014       ,p_mx_cvg_incr_wcf_alwd_amt       =>  p_mx_cvg_incr_wcf_alwd_amt
1015       ,p_mx_cvg_mlt_incr_num            =>  p_mx_cvg_mlt_incr_num
1016       ,p_mx_cvg_mlt_incr_wcf_num        =>  p_mx_cvg_mlt_incr_wcf_num
1017       ,p_mx_cvg_rl                      =>  p_mx_cvg_rl
1018       ,p_mx_cvg_wcfn_amt                =>  p_mx_cvg_wcfn_amt
1019       ,p_mx_cvg_wcfn_mlt_num            =>  p_mx_cvg_wcfn_mlt_num
1020       ,p_no_mn_cvg_amt_apls_flag        =>  p_no_mn_cvg_amt_apls_flag
1021       ,p_no_mn_cvg_incr_apls_flag       =>  p_no_mn_cvg_incr_apls_flag
1022       ,p_no_mx_cvg_amt_apls_flag        =>  p_no_mx_cvg_amt_apls_flag
1023       ,p_no_mx_cvg_incr_apls_flag       =>  p_no_mx_cvg_incr_apls_flag
1024       ,p_unsspnd_enrt_cd                =>  p_unsspnd_enrt_cd
1025       ,p_prort_prtl_yr_cvg_rstrn_cd     =>  p_prort_prtl_yr_cvg_rstrn_cd
1026       ,p_prort_prtl_yr_cvg_rstrn_rl     =>  p_prort_prtl_yr_cvg_rstrn_rl
1027       ,p_cvg_incr_r_decr_only_cd        =>  p_cvg_incr_r_decr_only_cd
1028       ,p_bnft_or_option_rstrctn_cd      =>  p_bnft_or_option_rstrctn_cd
1029       ,p_all_inelig                     =>  p_all_inelig
1030       ,p_effective_date                     => trunc(p_effective_date)
1031       ,p_datetrack_mode                     => p_datetrack_mode
1032       );
1033   exception
1034     when hr_api.cannot_find_prog_unit then
1035       hr_api.cannot_find_prog_unit_error
1036         (p_module_name => 'UPDATE_Plan_in_Program'
1037         ,p_hook_type   => 'AP'
1038         );
1039     --
1040     -- End of API User Hook for the after hook of update_Plan_in_Program
1041     --
1042   end;
1043   --
1044   hr_utility.set_location(l_proc, 60);
1045   --
1046   -- When in validation only mode raise the Validate_Enabled exception
1047   --
1048   if p_validate then
1049     raise hr_api.validate_enabled;
1050   end if;
1051   --
1052   -- Set all output arguments
1053   --
1054   p_object_version_number := l_object_version_number;
1055   p_effective_start_date := l_effective_start_date;
1056   p_effective_end_date := l_effective_end_date;
1057   --
1058   hr_utility.set_location(' Leaving:'||l_proc, 70);
1059   --
1060 exception
1061   --
1062   when hr_api.validate_enabled then
1063     --
1064     -- As the Validate_Enabled exception has been raised
1065     -- we must rollback to the savepoint
1066     --
1067     ROLLBACK TO update_Plan_in_Program;
1068     --
1069     -- Only set output warning arguments
1070     -- (Any key or derived arguments must be set to null
1071     -- when validation only mode is being used.)
1072     --
1073     hr_utility.set_location(' Leaving:'||l_proc, 80);
1074     --
1075   when others then
1076     --
1077     -- A validation or unexpected error has occured
1078     --
1079     ROLLBACK TO update_Plan_in_Program;
1080     raise;
1081     --
1082 end update_Plan_in_Program;
1083 -- ----------------------------------------------------------------------------
1084 -- |------------------------< delete_Plan_in_Program >----------------------|
1085 -- ----------------------------------------------------------------------------
1086 --
1087 procedure delete_Plan_in_Program
1088   (p_validate                       in  boolean  default false
1089   ,p_plip_id                        in  number
1090   ,p_effective_start_date           out nocopy date
1091   ,p_effective_end_date             out nocopy date
1092   ,p_object_version_number          in out nocopy number
1093   ,p_effective_date                 in  date
1094   ,p_datetrack_mode                 in  varchar2
1095   ) is
1096   --
1097   -- Declare cursors and local variables
1098   --
1099 
1100      cursor c_opp is select opp.oiplip_id,
1101             opp.object_version_number
1102      from   ben_oiplip_f opp
1103      where  opp.plip_id = p_plip_id
1104      and    p_effective_date between
1105             opp.effective_start_date and opp.effective_end_date;
1106   --
1107   l_proc varchar2(72) := g_package||'update_Plan_in_Program';
1108   l_object_version_number ben_plip_f.object_version_number%TYPE;
1109   l_effective_start_date ben_plip_f.effective_start_date%TYPE;
1110   l_effective_end_date ben_plip_f.effective_end_date%TYPE;
1111   --
1112   l_opp_effective_start_date  ben_oiplip_f.effective_start_date%type;
1113   l_opp_effective_end_date    ben_oiplip_f.effective_end_date%type;
1114   l_opp_object_version_number ben_oiplip_f.object_version_number%type;
1115 
1116   --
1117 begin
1118   --
1119   hr_utility.set_location('Entering:'|| l_proc, 10);
1120   --
1121   -- Issue a savepoint if operating in validation only mode
1122   --
1123   savepoint delete_Plan_in_Program;
1124   --
1125   hr_utility.set_location(l_proc, 20);
1126   --
1127   -- Process Logic
1128   --
1129   l_object_version_number := p_object_version_number;
1130   --
1131   --
1132   begin
1133     --
1134     -- Start of API User Hook for the before hook of delete_Plan_in_Program
1135     --
1136     ben_Plan_in_Program_bk3.delete_Plan_in_Program_b
1137       (
1138        p_plip_id                        =>  p_plip_id
1139       ,p_object_version_number          =>  p_object_version_number
1140     ,p_effective_date                      => trunc(p_effective_date)
1141     ,p_datetrack_mode                      => p_datetrack_mode
1142       );
1143   exception
1144     when hr_api.cannot_find_prog_unit then
1145       hr_api.cannot_find_prog_unit_error
1146         (p_module_name => 'DELETE_Plan_in_Program'
1147         ,p_hook_type   => 'BP'
1148         );
1149     --
1150     -- End of API User Hook for the before hook of delete_Plan_in_Program
1151     --
1152   end;
1153   --
1154   BEN_CPP_del.del
1155     (
1156      p_plip_id                       => p_plip_id
1157     ,p_effective_start_date          => l_effective_start_date
1158     ,p_effective_end_date            => l_effective_end_date
1159     ,p_object_version_number         => l_object_version_number
1160     ,p_effective_date                => p_effective_date
1161     ,p_datetrack_mode                => p_datetrack_mode
1162     );
1163   --
1164   begin
1165     --
1166     -- Start of API User Hook for the after hook of delete_Plan_in_Program
1167     --
1168     ben_Plan_in_Program_bk3.delete_Plan_in_Program_a
1169       (
1170        p_plip_id                        =>  p_plip_id
1171       ,p_effective_start_date           =>  l_effective_start_date
1172       ,p_effective_end_date             =>  l_effective_end_date
1173       ,p_object_version_number          =>  l_object_version_number
1174     ,p_effective_date                      => trunc(p_effective_date)
1175     ,p_datetrack_mode                      => p_datetrack_mode
1176       );
1177   exception
1178     when hr_api.cannot_find_prog_unit then
1179       hr_api.cannot_find_prog_unit_error
1180         (p_module_name => 'DELETE_Plan_in_Program'
1181         ,p_hook_type   => 'AP'
1182         );
1183     --
1184     -- End of API User Hook for the after hook of delete_Plan_in_Program
1185     --
1186   end;
1187   --
1188   hr_utility.set_location(l_proc, 60);
1189   --
1190   -- When in validation only mode raise the Validate_Enabled exception
1191   --
1192   if p_validate then
1193     raise hr_api.validate_enabled;
1194   end if;
1195   --
1196   hr_utility.set_location(' Leaving:'||l_proc, 70);
1197   --
1198 exception
1199   --
1200   when hr_api.validate_enabled then
1201     --
1202     -- As the Validate_Enabled exception has been raised
1203     -- we must rollback to the savepoint
1204     --
1205     ROLLBACK TO delete_Plan_in_Program;
1206     --
1207     -- Only set output warning arguments
1208     -- (Any key or derived arguments must be set to null
1209     -- when validation only mode is being used.)
1210     --
1211     p_effective_start_date := null;
1212     p_effective_end_date := null;
1213     --
1214   when others then
1215     --
1216     -- A validation or unexpected error has occured
1217     --
1218     ROLLBACK TO delete_Plan_in_Program;
1219     raise;
1220     --
1221 end delete_Plan_in_Program;
1222 --
1223 -- ----------------------------------------------------------------------------
1224 -- |-------------------------------< lck >------------------------------------|
1225 -- ----------------------------------------------------------------------------
1226 --
1227 procedure lck
1228   (
1229    p_plip_id                   in     number
1230   ,p_object_version_number          in     number
1231   ,p_effective_date                 in     date
1232   ,p_datetrack_mode                 in     varchar2
1233   ,p_validation_start_date          out nocopy    date
1234   ,p_validation_end_date            out nocopy    date
1235   ) is
1236   --
1237   --
1238   -- Declare cursors and local variables
1239   --
1240   l_proc varchar2(72) := g_package||'lck';
1241   l_validation_start_date date;
1242   l_validation_end_date date;
1243   --
1244 begin
1245   --
1246   hr_utility.set_location('Entering:'|| l_proc, 10);
1247   --
1248   BEN_CPP_shd.lck
1249     (
1250       p_plip_id                 => p_plip_id
1251      ,p_validation_start_date      => l_validation_start_date
1252      ,p_validation_end_date        => l_validation_end_date
1253      ,p_object_version_number      => p_object_version_number
1254      ,p_effective_date             => p_effective_date
1255      ,p_datetrack_mode             => p_datetrack_mode
1256     );
1257   --
1258   hr_utility.set_location(' Leaving:'||l_proc, 70);
1259   --
1260 end lck;
1261 --
1262 end ben_Plan_in_Program_api;