DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_PROGRAM_API

Source


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