DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_VPF_SHD

Source


1 Package Body ben_vpf_shd as
2 /* $Header: bevpfrhi.pkb 120.1.12010000.1 2008/07/29 13:07:55 appldev ship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  ben_vpf_shd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------< return_api_dml_status >-------------------------|
12 -- ----------------------------------------------------------------------------
13 Function return_api_dml_status Return Boolean Is
14 --
15   l_proc 	varchar2(72) := g_package||'return_api_dml_status';
16 --
17 Begin
18   hr_utility.set_location('Entering:'||l_proc, 5);
19   --
20   Return (nvl(g_api_dml, false));
21   --
22   hr_utility.set_location(' Leaving:'||l_proc, 10);
23 End return_api_dml_status;
24 --
25 -- ----------------------------------------------------------------------------
26 -- |---------------------------< constraint_error >---------------------------|
27 -- ----------------------------------------------------------------------------
28 Procedure constraint_error
29             (p_constraint_name in all_constraints.constraint_name%TYPE) Is
30 --
31   l_proc 	varchar2(72) := g_package||'constraint_error';
32 --
33 Begin
34   hr_utility.set_location('Entering:'||l_proc, 5);
35   --
36   If (p_constraint_name = 'BEN_VRBL_RT_PRFL_FK1') Then
37     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
38     hr_utility.set_message_token('PROCEDURE', l_proc);
39     hr_utility.set_message_token('STEP','5');
40     hr_utility.raise_error;
41   ElsIf (p_constraint_name = 'BEN_VRBL_RT_PRFL_PK') Then
42     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
43     hr_utility.set_message_token('PROCEDURE', l_proc);
44     hr_utility.set_message_token('STEP','10');
45     hr_utility.raise_error;
46   Else
47     hr_utility.set_message(801, 'HR_7877_API_INVALID_CONSTRAINT');
48     hr_utility.set_message_token('PROCEDURE', l_proc);
49     hr_utility.set_message_token('CONSTRAINT_NAME', p_constraint_name);
50     hr_utility.raise_error;
51   End If;
52   --
53   hr_utility.set_location(' Leaving:'||l_proc, 10);
54 End constraint_error;
55 --
56 -- ----------------------------------------------------------------------------
57 -- |-----------------------------< api_updating >-----------------------------|
58 -- ----------------------------------------------------------------------------
59 Function api_updating
60   (p_effective_date		in date,
61    p_vrbl_rt_prfl_id		in number,
62    p_object_version_number	in number
63   ) Return Boolean Is
64 --
65   --
66   -- Cursor selects the 'current' row from the HR Schema
67   --
68   Cursor C_Sel1 is
69     select
70 	vrbl_rt_prfl_id,
71 	effective_start_date,
72 	effective_end_date,
73 	pl_typ_opt_typ_id,
74 	pl_id,
75 	oipl_id,
76         comp_lvl_fctr_id,
77 	business_group_id,
78 	acty_typ_cd,
79 	rt_typ_cd,
80 	bnft_rt_typ_cd,
81 	tx_typ_cd,
82 	vrbl_rt_trtmt_cd,
83 	acty_ref_perd_cd,
84 	mlt_cd,
85 	incrmnt_elcn_val,
86 	dflt_elcn_val,
87 	mx_elcn_val,
88 	mn_elcn_val,
89         lwr_lmt_val,
90         lwr_lmt_calc_rl,
91         upr_lmt_val,
92         upr_lmt_calc_rl,
93         ultmt_upr_lmt,
94         ultmt_lwr_lmt,
95         ultmt_upr_lmt_calc_rl,
96         ultmt_lwr_lmt_calc_rl,
97         ann_mn_elcn_val,
98         ann_mx_elcn_val,
99 	val,
100 	name,
101 	no_mn_elcn_val_dfnd_flag,
102 	no_mx_elcn_val_dfnd_flag,
103         alwys_sum_all_cvg_flag,
104         alwys_cnt_all_prtts_flag,
105 	val_calc_rl,
106 	vrbl_rt_prfl_stat_cd,
107         vrbl_usg_cd,
108         asmt_to_use_cd,
109         rndg_cd,
110         rndg_rl,
111         rt_hrly_slrd_flag,
112         rt_pstl_cd_flag,
113         rt_lbr_mmbr_flag,
114         rt_lgl_enty_flag,
115         rt_benfts_grp_flag,
116         rt_wk_loc_flag,
117         rt_brgng_unit_flag,
118         rt_age_flag,
119         rt_los_flag,
120         rt_per_typ_flag,
121         rt_fl_tm_pt_tm_flag,
122         rt_ee_stat_flag,
123         rt_grd_flag,
124         rt_pct_fl_tm_flag,
125         rt_asnt_set_flag,
126         rt_hrs_wkd_flag,
127         rt_comp_lvl_flag,
128         rt_org_unit_flag,
129         rt_loa_rsn_flag,
130         rt_pyrl_flag,
131         rt_schedd_hrs_flag,
132         rt_py_bss_flag,
133         rt_prfl_rl_flag,
134         rt_cmbn_age_los_flag,
135         rt_prtt_pl_flag,
136         rt_svc_area_flag,
137         rt_ppl_grp_flag,
138         rt_dsbld_flag,
139         rt_hlth_cvg_flag,
140         rt_poe_flag,
141         rt_ttl_cvg_vol_flag,
142         rt_ttl_prtt_flag,
143         rt_gndr_flag,
144         rt_tbco_use_flag,
145 	vpf_attribute_category,
146 	vpf_attribute1,
147 	vpf_attribute2,
148 	vpf_attribute3,
149 	vpf_attribute4,
150 	vpf_attribute5,
151 	vpf_attribute6,
152 	vpf_attribute7,
153 	vpf_attribute8,
154 	vpf_attribute9,
155 	vpf_attribute10,
156 	vpf_attribute11,
157 	vpf_attribute12,
158 	vpf_attribute13,
159 	vpf_attribute14,
160 	vpf_attribute15,
161 	vpf_attribute16,
162 	vpf_attribute17,
163 	vpf_attribute18,
164 	vpf_attribute19,
165 	vpf_attribute20,
166 	vpf_attribute21,
167 	vpf_attribute22,
168 	vpf_attribute23,
169 	vpf_attribute24,
170 	vpf_attribute25,
171 	vpf_attribute26,
172 	vpf_attribute27,
173 	vpf_attribute28,
174 	vpf_attribute29,
175 	vpf_attribute30,
176 	object_version_number,
177 	rt_cntng_prtn_prfl_flag,
178 	rt_cbr_quald_bnf_flag,
179 	rt_optd_mdcr_flag,
180 	rt_lvg_rsn_flag,
181 	rt_pstn_flag ,
182 	rt_comptncy_flag ,
183 	rt_job_flag  ,
184 	rt_qual_titl_flag ,
185 	rt_dpnt_cvrd_pl_flag,
186 	rt_dpnt_cvrd_plip_flag ,
187 	rt_dpnt_cvrd_ptip_flag,
188 	rt_dpnt_cvrd_pgm_flag,
189 	rt_enrld_oipl_flag ,
190 	rt_enrld_pl_flag ,
191 	rt_enrld_plip_flag  ,
192 	rt_enrld_ptip_flag ,
193 	rt_enrld_pgm_flag  ,
194 	rt_prtt_anthr_pl_flag ,
195 	rt_othr_ptip_flag  ,
196 	rt_no_othr_cvg_flag ,
197 	rt_dpnt_othr_ptip_flag,
198 	rt_qua_in_gr_flag,
199 	rt_perf_rtng_flag,
200 	rt_elig_prfl_flag
201     from	ben_vrbl_rt_prfl_f
202     where	vrbl_rt_prfl_id = p_vrbl_rt_prfl_id
203     and		p_effective_date
204     between	effective_start_date and effective_end_date;
205 --
206   l_proc	varchar2(72)	:= g_package||'api_updating';
207   l_fct_ret	boolean;
208 --
209 Begin
210   hr_utility.set_location('Entering:'||l_proc, 5);
211   --
212   If (p_effective_date is null or
213       p_vrbl_rt_prfl_id is null or
214       p_object_version_number is null) Then
215     --
216     -- One of the primary key arguments is null therefore we must
217     -- set the returning function value to false
218     --
219     l_fct_ret := false;
220   Else
221     If (p_vrbl_rt_prfl_id = g_old_rec.vrbl_rt_prfl_id and
222         p_object_version_number = g_old_rec.object_version_number) Then
223       hr_utility.set_location(l_proc, 10);
224       --
225       -- The g_old_rec is current therefore we must
226       -- set the returning function to true
227       --
228       l_fct_ret := true;
229     Else
230       --
231       -- Select the current row
232       --
233       Open C_Sel1;
234       Fetch C_Sel1 Into g_old_rec;
235       If C_Sel1%notfound Then
236         Close C_Sel1;
237         --
238         -- The primary key is invalid therefore we must error
239         --
240         hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
241         hr_utility.raise_error;
242       End If;
243       Close C_Sel1;
244       If (p_object_version_number <> g_old_rec.object_version_number) Then
245         hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
246         hr_utility.raise_error;
247       End If;
248       hr_utility.set_location(l_proc, 15);
249       l_fct_ret := true;
250     End If;
251   End If;
252   hr_utility.set_location(' Leaving:'||l_proc, 20);
253   Return (l_fct_ret);
254 --
255 End api_updating;
256 --
257 -- ----------------------------------------------------------------------------
258 -- |--------------------------< find_dt_del_modes >---------------------------|
259 -- ----------------------------------------------------------------------------
260 Procedure find_dt_del_modes
261 	(p_effective_date	in  date,
262 	 p_base_key_value	in  number,
263 	 p_zap		 out nocopy boolean,
264 	 p_delete	 out nocopy boolean,
265 	 p_future_change out nocopy boolean,
266 	 p_delete_next_change out nocopy boolean) is
267 --
268   l_proc 		varchar2(72) 	:= g_package||'find_dt_del_modes';
269 --
270   l_parent_key_value1	number;
271   l_parent_key_value2	number;
272   l_parent_key_value3	number;
273   --
274   Cursor C_Sel1 Is
275     select  t.oipl_id,
276 	    t.pl_typ_opt_typ_id,
277 	    t.pl_id
278     from    ben_vrbl_rt_prfl_f t
279     where   t.vrbl_rt_prfl_id = p_base_key_value
280     and     p_effective_date
281     between t.effective_start_date and t.effective_end_date;
282 --
283 Begin
284   hr_utility.set_location('Entering:'||l_proc, 5);
285   Open  C_Sel1;
286   Fetch C_Sel1 Into l_parent_key_value1,
287 		    l_parent_key_value3,
288 		    l_parent_key_value2;
289   If C_Sel1%notfound then
290     Close C_Sel1;
291     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
292     hr_utility.set_message_token('PROCEDURE', l_proc);
293     hr_utility.set_message_token('STEP','10');
294     hr_utility.raise_error;
295   End If;
296   Close C_Sel1;
297   --
298   -- Call the corresponding datetrack api
299   --
300   dt_api.find_dt_del_modes
301 	(p_effective_date	=> p_effective_date,
302 	 p_base_table_name	=> 'ben_vrbl_rt_prfl_f',
303 	 p_base_key_column	=> 'vrbl_rt_prfl_id',
304 	 p_base_key_value	=> p_base_key_value,
305 	 p_parent_table_name1	=> 'ben_oipl_f',
306 	 p_parent_key_column1	=> 'oipl_id',
307 	 p_parent_key_value1	=> l_parent_key_value1,
308 	 p_parent_table_name2	=> 'ben_pl_f',
309 	 p_parent_key_column2	=> 'pl_id',
310 	 p_parent_key_value2	=> l_parent_key_value2,
311 	 p_zap			=> p_zap,
312 	 p_delete		=> p_delete,
313 	 p_future_change	=> p_future_change,
314 	 p_delete_next_change	=> p_delete_next_change);
315   --
316   hr_utility.set_location(' Leaving:'||l_proc, 10);
317 End find_dt_del_modes;
318 --
319 -- ----------------------------------------------------------------------------
320 -- |--------------------------< find_dt_upd_modes >---------------------------|
321 -- ----------------------------------------------------------------------------
322 Procedure find_dt_upd_modes
323 	(p_effective_date	in  date,
324 	 p_base_key_value	in  number,
325 	 p_correction	 out nocopy boolean,
326 	 p_update	 out nocopy boolean,
327 	 p_update_override out nocopy boolean,
328 	 p_update_change_insert out nocopy boolean) is
329 --
330   l_proc 	varchar2(72) := g_package||'find_dt_upd_modes';
331 --
332 Begin
333   hr_utility.set_location('Entering:'||l_proc, 5);
334   --
335   -- Call the corresponding datetrack api
336   --
337   dt_api.find_dt_upd_modes
338 	(p_effective_date	=> p_effective_date,
339 	 p_base_table_name	=> 'ben_vrbl_rt_prfl_f',
340 	 p_base_key_column	=> 'vrbl_rt_prfl_id',
341 	 p_base_key_value	=> p_base_key_value,
342 	 p_correction		=> p_correction,
343 	 p_update		=> p_update,
344 	 p_update_override	=> p_update_override,
345 	 p_update_change_insert	=> p_update_change_insert);
346   --
347   hr_utility.set_location(' Leaving:'||l_proc, 10);
348 End find_dt_upd_modes;
349 --
350 -- ----------------------------------------------------------------------------
351 -- |------------------------< upd_effective_end_date >------------------------|
352 -- ----------------------------------------------------------------------------
353 Procedure upd_effective_end_date
354 	(p_effective_date		in date,
355 	 p_base_key_value		in number,
356 	 p_new_effective_end_date	in date,
357 	 p_validation_start_date	in date,
358 	 p_validation_end_date		in date,
359          p_object_version_number       out nocopy number) is
360 --
361   l_proc 		  varchar2(72) := g_package||'upd_effective_end_date';
362   l_object_version_number number;
363 --
364 Begin
365   hr_utility.set_location('Entering:'||l_proc, 5);
366   --
367   -- Because we are updating a row we must get the next object
368   -- version number.
369   --
370   l_object_version_number :=
371     dt_api.get_object_version_number
372 	(p_base_table_name	=> 'ben_vrbl_rt_prfl_f',
373 	 p_base_key_column	=> 'vrbl_rt_prfl_id',
374 	 p_base_key_value	=> p_base_key_value);
375   --
376   hr_utility.set_location(l_proc, 10);
377   g_api_dml := true;  -- Set the api dml status
378   --
379   -- Update the specified datetrack row setting the effective
380   -- end date to the specified new effective end date.
381   --
382   update  ben_vrbl_rt_prfl_f t
383   set	  t.effective_end_date	  = p_new_effective_end_date,
384 	  t.object_version_number = l_object_version_number
385   where	  t.vrbl_rt_prfl_id	  = p_base_key_value
386   and	  p_effective_date
387   between t.effective_start_date and t.effective_end_date;
388   --
389   g_api_dml := false;   -- Unset the api dml status
390   p_object_version_number := l_object_version_number;
391   hr_utility.set_location(' Leaving:'||l_proc, 15);
392 --
393 Exception
394   When Others Then
395     g_api_dml := false;   -- Unset the api dml status
396     Raise;
397 End upd_effective_end_date;
398 --
399 -- ----------------------------------------------------------------------------
400 -- |---------------------------------< lck >----------------------------------|
401 -- ----------------------------------------------------------------------------
402 Procedure lck
403 	(p_effective_date	 in  date,
404 	 p_datetrack_mode	 in  varchar2,
405 	 p_vrbl_rt_prfl_id	 in  number,
406 	 p_object_version_number in  number,
407 	 p_validation_start_date out nocopy date,
408 	 p_validation_end_date	 out nocopy date) is
409 --
410   l_proc		  varchar2(72) := g_package||'lck';
411   l_validation_start_date  date;
412   l_validation_end_date	   date;
413   l_validation_start_date1 date;
414   l_validation_end_date1   date;
415   l_validation_start_date2 date;
416   l_validation_end_date2   date;
417   l_object_invalid 	  exception;
418   l_argument		  varchar2(30);
419   --
420   -- Cursor C_Sel1 selects the current locked row as of session date
421   -- ensuring that the object version numbers match.
422   --
423   Cursor C_Sel1 is
424     select
425 	vrbl_rt_prfl_id,
426 	effective_start_date,
427 	effective_end_date,
428 	pl_typ_opt_typ_id,
429 	pl_id,
430 	oipl_id,
431         comp_lvl_fctr_id,
432 	business_group_id,
433 	acty_typ_cd,
434 	rt_typ_cd,
435 	bnft_rt_typ_cd,
436 	tx_typ_cd,
437 	vrbl_rt_trtmt_cd,
438 	acty_ref_perd_cd,
439 	mlt_cd,
440 	incrmnt_elcn_val,
441 	dflt_elcn_val,
442 	mx_elcn_val,
443 	mn_elcn_val,
444         lwr_lmt_val,
445         lwr_lmt_calc_rl,
446         upr_lmt_val,
447         upr_lmt_calc_rl,
448         ultmt_upr_lmt,
449         ultmt_lwr_lmt,
450         ultmt_upr_lmt_calc_rl,
451         ultmt_lwr_lmt_calc_rl,
452         ann_mn_elcn_val,
453         ann_mx_elcn_val,
454 	val,
455 	name,
456 	no_mn_elcn_val_dfnd_flag,
457 	no_mx_elcn_val_dfnd_flag,
458         alwys_sum_all_cvg_flag,
459         alwys_cnt_all_prtts_flag,
460 	val_calc_rl,
461 	vrbl_rt_prfl_stat_cd,
462         vrbl_usg_cd,
463         asmt_to_use_cd,
464         rndg_cd,
465         rndg_rl,
466         rt_hrly_slrd_flag,
467         rt_pstl_cd_flag,
468         rt_lbr_mmbr_flag,
469         rt_lgl_enty_flag,
470         rt_benfts_grp_flag,
471         rt_wk_loc_flag,
472         rt_brgng_unit_flag,
473         rt_age_flag,
477         rt_ee_stat_flag,
474         rt_los_flag,
475         rt_per_typ_flag,
476         rt_fl_tm_pt_tm_flag,
478         rt_grd_flag,
479         rt_pct_fl_tm_flag,
480         rt_asnt_set_flag,
481         rt_hrs_wkd_flag,
482         rt_comp_lvl_flag,
483         rt_org_unit_flag,
484         rt_loa_rsn_flag,
485         rt_pyrl_flag,
486         rt_schedd_hrs_flag,
487         rt_py_bss_flag,
488         rt_prfl_rl_flag,
489         rt_cmbn_age_los_flag,
490         rt_prtt_pl_flag,
491         rt_svc_area_flag,
492         rt_ppl_grp_flag,
493         rt_dsbld_flag,
494         rt_hlth_cvg_flag,
495         rt_poe_flag,
496         rt_ttl_cvg_vol_flag,
497         rt_ttl_prtt_flag,
498         rt_gndr_flag,
499         rt_tbco_use_flag,
500 	vpf_attribute_category,
501 	vpf_attribute1,
502 	vpf_attribute2,
503 	vpf_attribute3,
504 	vpf_attribute4,
505 	vpf_attribute5,
506 	vpf_attribute6,
507 	vpf_attribute7,
508 	vpf_attribute8,
509 	vpf_attribute9,
510 	vpf_attribute10,
511 	vpf_attribute11,
512 	vpf_attribute12,
513 	vpf_attribute13,
514 	vpf_attribute14,
515 	vpf_attribute15,
516 	vpf_attribute16,
517 	vpf_attribute17,
518 	vpf_attribute18,
519 	vpf_attribute19,
520 	vpf_attribute20,
521 	vpf_attribute21,
522 	vpf_attribute22,
523 	vpf_attribute23,
524 	vpf_attribute24,
525 	vpf_attribute25,
526 	vpf_attribute26,
527 	vpf_attribute27,
528 	vpf_attribute28,
529 	vpf_attribute29,
530 	vpf_attribute30,
531 	object_version_number ,
532 	rt_cntng_prtn_prfl_flag,
533 	rt_cbr_quald_bnf_flag,
534 	rt_optd_mdcr_flag,
535 	rt_lvg_rsn_flag,
536 	rt_pstn_flag ,
537 	rt_comptncy_flag ,
538 	rt_job_flag  ,
539 	rt_qual_titl_flag ,
540 	rt_dpnt_cvrd_pl_flag,
541 	rt_dpnt_cvrd_plip_flag ,
542 	rt_dpnt_cvrd_ptip_flag,
543 	rt_dpnt_cvrd_pgm_flag,
544 	rt_enrld_oipl_flag ,
545 	rt_enrld_pl_flag ,
546 	rt_enrld_plip_flag  ,
547 	rt_enrld_ptip_flag ,
548 	rt_enrld_pgm_flag  ,
549 	rt_prtt_anthr_pl_flag ,
550 	rt_othr_ptip_flag  ,
551 	rt_no_othr_cvg_flag ,
552 	rt_dpnt_othr_ptip_flag,
553 	rt_qua_in_gr_flag,
554 	rt_perf_rtng_flag,
555 	rt_elig_prfl_flag
556     from    ben_vrbl_rt_prfl_f
557     where   vrbl_rt_prfl_id         = p_vrbl_rt_prfl_id
558     and	    p_effective_date
559     between effective_start_date and effective_end_date
560     for update nowait;
561   --
562   --
563   --
564 Begin
565   hr_utility.set_location('Entering:'||l_proc, 5);
566   --
567   -- Ensure that all the mandatory arguments are not null
568   --
569   hr_api.mandatory_arg_error(p_api_name       => l_proc,
570                              p_argument       => 'effective_date',
571                              p_argument_value => p_effective_date);
572   --
573   hr_api.mandatory_arg_error(p_api_name       => l_proc,
574                              p_argument       => 'datetrack_mode',
575                              p_argument_value => p_datetrack_mode);
576   --
577   hr_api.mandatory_arg_error(p_api_name       => l_proc,
578                              p_argument       => 'vrbl_rt_prfl_id',
579                              p_argument_value => p_vrbl_rt_prfl_id);
580   --
581   hr_api.mandatory_arg_error(p_api_name       => l_proc,
582                              p_argument       => 'object_version_number',
583                              p_argument_value => p_object_version_number);
584   --
585   -- Check to ensure the datetrack mode is not INSERT.
586   --
587   If (p_datetrack_mode <> 'INSERT') then
588     --
589     -- We must select and lock the current row.
590     --
591     Open  C_Sel1;
592     Fetch C_Sel1 Into g_old_rec;
593     If C_Sel1%notfound then
594       Close C_Sel1;
595       --
596       -- The primary key is invalid therefore we must error
597       --
598       hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
599       hr_utility.raise_error;
600     End If;
601     Close C_Sel1;
602     If (p_object_version_number <> g_old_rec.object_version_number) Then
603         hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
604         hr_utility.raise_error;
605       End If;
606     hr_utility.set_location(l_proc, 15);
607     --
608     -- Validate the datetrack mode mode getting the validation start
609     -- and end dates for the specified datetrack operation.
610     --
611     dt_api.validate_dt_mode
612 	(p_effective_date	   => p_effective_date,
613 	 p_datetrack_mode	   => p_datetrack_mode,
614 	 p_base_table_name	   => 'ben_vrbl_rt_prfl_f',
615 	 p_base_key_column	   => 'vrbl_rt_prfl_id',
616 	 p_base_key_value 	   => p_vrbl_rt_prfl_id,
617 	 p_parent_table_name1      => 'ben_oipl_f',
618 	 p_parent_key_column1      => 'oipl_id',
619 	 p_parent_key_value1       => g_old_rec.oipl_id,
620 	 p_parent_table_name2      => 'ben_pl_f',
621 	 p_parent_key_column2      => 'pl_id',
622 	 p_parent_key_value2       => g_old_rec.pl_id,
623          p_child_table_name1       => 'ben_age_rt_f',
624          p_child_key_column1       => 'age_rt_id',
625          p_child_table_name2       => 'ben_benfts_grp_rt_f',
626          p_child_key_column2       => 'benfts_grp_rt_id',
627          p_child_table_name3       => 'ben_loa_rsn_rt_f',
628          p_child_key_column3       => 'loa_rsn_rt_id',
632          p_child_key_column5       => 'tbco_use_rt_id',
629          p_child_table_name4       => 'ben_los_rt_f',
630          p_child_key_column4       => 'los_rt_id',
631          p_child_table_name5       => 'ben_tbco_use_rt_f',
633          p_child_table_name6       => 'ben_pct_fl_tm_rt_f',
634          p_child_key_column6       => 'pct_fl_tm_rt_id',
635          p_child_table_name7       => 'ben_vrbl_rt_prfl_rl_f',
636          p_child_key_column7       => 'vrbl_rt_prfl_rl_id',
637          p_child_table_name8       => 'ben_wk_loc_rt_f',
638          p_child_key_column8       => 'wk_loc_rt_id',
639          p_child_table_name9       => 'ben_org_unit_rt_f',
640          p_child_key_column9       => 'org_unit_rt_id',
641          p_child_table_name10      => 'ben_comp_lvl_rt_f',
642          p_child_key_column10      => 'comp_lvl_rt_id',
643 --         p_enforce_foreign_locking => true, For Bug 3188818
644         p_enforce_foreign_locking => false,
645 	 p_validation_start_date   => l_validation_start_date,
646  	 p_validation_end_date	   => l_validation_end_date);
647     --
648 
649     dt_api.validate_dt_mode
650 	(p_effective_date	   => p_effective_date,
651 	 p_datetrack_mode	   => p_datetrack_mode,
652 	 p_base_table_name	   => 'ben_vrbl_rt_prfl_f',
653 	 p_base_key_column	   => 'vrbl_rt_prfl_id',
654 	 p_base_key_value 	   => p_vrbl_rt_prfl_id,
655 	 p_parent_table_name1      => 'ben_oipl_f',
656 	 p_parent_key_column1      => 'oipl_id',
657 	 p_parent_key_value1       => g_old_rec.oipl_id,
658 	 p_parent_table_name2      => 'ben_pl_f',
659 	 p_parent_key_column2      => 'pl_id',
660 	 p_parent_key_value2       => g_old_rec.pl_id,
661 	 p_child_table_name1       => 'ben_hrs_wkd_in_perd_rt_f',
662 	 p_child_key_column1       => 'hrs_wkd_in_perd_rt_id',
663 	 p_child_table_name2       => 'ben_grade_rt_f',
664 	 p_child_key_column2       => 'grade_rt_id',
665 	 p_child_table_name3       => 'ben_actl_prem_vrbl_rt_f',
666 	 p_child_key_column3       => 'actl_prem_vrbl_rt_id',
667 	 p_child_table_name4       => 'ben_bnft_vrbl_rt_f',
668 	 p_child_key_column4       => 'bnft_vrbl_rt_id',
669 	 p_child_table_name5       => 'ben_fl_tm_pt_tm_rt_f',
670 	 p_child_key_column5       => 'fl_tm_pt_tm_rt_id',
671 	 p_child_table_name6       => 'ben_lgl_enty_rt_f',
672 	 p_child_key_column6       => 'lgl_enty_rt_id',
673 	 p_child_table_name7       => 'ben_lbr_mmbr_rt_f',
674 	 p_child_key_column7       => 'lbr_mmbr_rt_id',
675 	 p_child_table_name8       => 'ben_svc_area_rt_f',
676 	 p_child_key_column8       => 'svc_area_rt_id',
677 	 p_child_table_name9       => 'ben_py_bss_rt_f',
678 	 p_child_key_column9       => 'py_bss_rt_id',
679 	 p_child_table_name10      => 'ben_pyrl_rt_f',
680 	 p_child_key_column10      => 'pyrl_rt_id',
681 --         p_enforce_foreign_locking => true, For Bug 3188818
682         p_enforce_foreign_locking => false,
683 	 p_validation_start_date   => l_validation_start_date1,
684  	 p_validation_end_date	   => l_validation_end_date1);
685     --
686     dt_api.validate_dt_mode
687 	(p_effective_date	   => p_effective_date,
688 	 p_datetrack_mode	   => p_datetrack_mode,
689 	 p_base_table_name	   => 'ben_vrbl_rt_prfl_f',
690 	 p_base_key_column	   => 'vrbl_rt_prfl_id',
691 	 p_base_key_value 	   => p_vrbl_rt_prfl_id,
692 	 p_parent_table_name1      => 'ben_oipl_f',
693 	 p_parent_key_column1      => 'oipl_id',
694 	 p_parent_key_value1       => g_old_rec.oipl_id,
695 	 p_parent_table_name2      => 'ben_pl_f',
696 	 p_parent_key_column2      => 'pl_id',
697 	 p_parent_key_value2       => g_old_rec.pl_id,
698 	 p_child_table_name1       => 'ben_pstl_zip_rt_f',
699 	 p_child_key_column1       => 'pstl_zip_rt_id',
700 	 p_child_table_name2       => 'ben_per_typ_rt_f',
701 	 p_child_key_column2       => 'per_typ_rt_id',
702 	 p_child_table_name3       => 'ben_hrly_slrd_rt_f',
703 	 p_child_key_column3       => 'hrly_slrd_rt_id',
704 	 p_child_table_name4       => 'ben_gndr_rt_f',
705 	 p_child_key_column4       => 'gndr_rt_id',
706 	 p_child_table_name5       => 'ben_cmbn_age_los_rt_f',
707 	 p_child_key_column5       => 'cmbn_age_los_rt_id',
708 	 p_child_table_name6       => 'ben_brgng_unit_rt_f',
709 	 p_child_key_column6       => 'brgng_unit_rt_id',
710 	 p_child_table_name7       => 'ben_asnt_set_rt_f',
711 	 p_child_key_column7       => 'asnt_set_rt_id',
712 	 p_child_table_name8       => 'ben_acty_vrbl_rt_f',
713 	 p_child_key_column8       => 'acty_vrbl_rt_id',
714 	 p_child_table_name9       => 'ben_ppl_grp_rt_f',
715 	 p_child_key_column9       => 'ppl_grp_rt_id',
716 	 p_child_table_name10      => 'ben_qual_titl_rt_f',
717 	 p_child_key_column10      => 'qual_titl_rt_id',
718 --         p_enforce_foreign_locking => true, For Bug 3188818
719         p_enforce_foreign_locking => false,
720 	 p_validation_start_date   => l_validation_start_date2,
721  	 p_validation_end_date	   => l_validation_end_date2);
722 
723 
724 
725       dt_api.validate_dt_mode
726 	(p_effective_date	   => p_effective_date,
727 	 p_datetrack_mode	   => p_datetrack_mode,
728 	 p_base_table_name	   => 'ben_vrbl_rt_prfl_f',
729 	 p_base_key_column	   => 'vrbl_rt_prfl_id',
730 	 p_base_key_value 	   => p_vrbl_rt_prfl_id,
731 	 p_parent_table_name1      => 'ben_oipl_f',
732 	 p_parent_key_column1      => 'oipl_id',
733 	 p_parent_key_value1       => g_old_rec.oipl_id,
734 	 p_parent_table_name2      => 'ben_pl_f',
735 	 p_parent_key_column2      => 'pl_id',
736 	 p_parent_key_value2       => g_old_rec.pl_id,
737 	 p_child_table_name1       => 'ben_cbr_quald_bnf_rt_f',
738 	 p_child_key_column1       => 'cbr_quald_bnf_rt_id',
739 	 p_child_table_name2       => 'ben_cntng_prtn_prfl_rt_f',
743 	 p_child_table_name4       => 'ben_job_rt_f',
740 	 p_child_key_column2       => 'cntng_prtn_prfl_rt_id',
741 	 p_child_table_name3       => 'ben_comptncy_rt_f',
742 	 p_child_key_column3       => 'comptncy_rt_id',
744 	 p_child_key_column4       => 'job_rt_id',
745 	 p_child_table_name5       => 'ben_lvg_rsn_rt_f',
746 	 p_child_key_column5       => 'lvg_rsn_rt_id',
747 	 p_child_table_name6       => 'ben_optd_mdcr_rt_f',
748 	 p_child_key_column6       => 'optd_mdcr_rt_id',
749 	 p_child_table_name7       => 'ben_pstn_rt_f',
750 	 p_child_key_column7       => 'pstn_rt_id',
751 	 p_child_table_name8       => 'ben_dpnt_cvrd_othr_pgm_rt_f',
752 	 p_child_key_column8       => 'dpnt_cvrd_othr_pgm_rt_id',
753 	 p_child_table_name9       => 'ben_dpnt_cvrd_othr_pl_rt_f',
754 	 p_child_key_column9       => 'dpnt_cvrd_othr_pl_rt_id',
755 	 p_child_table_name10      => 'ben_dpnt_cvrd_othr_ptip_rt_f',
756 	 p_child_key_column10      => 'dpnt_cvrd_othr_ptip_rt_id',
757 --         p_enforce_foreign_locking => true, For Bug 3188818
758         p_enforce_foreign_locking => false,
759 	 p_validation_start_date   => l_validation_start_date2,
760  	 p_validation_end_date	   => l_validation_end_date2);
761 
762       dt_api.validate_dt_mode
763 	(p_effective_date	   => p_effective_date,
764 	 p_datetrack_mode	   => p_datetrack_mode,
765 	 p_base_table_name	   => 'ben_vrbl_rt_prfl_f',
766 	 p_base_key_column	   => 'vrbl_rt_prfl_id',
767 	 p_base_key_value 	   => p_vrbl_rt_prfl_id,
768 	 p_parent_table_name1      => 'ben_oipl_f',
769 	 p_parent_key_column1      => 'oipl_id',
770 	 p_parent_key_value1       => g_old_rec.oipl_id,
771 	 p_parent_table_name2      => 'ben_pl_f',
772 	 p_parent_key_column2      => 'pl_id',
773 	 p_parent_key_value2       => g_old_rec.pl_id,
774 	 p_child_table_name1       => 'ben_dpnt_cvrd_plip_rt_f',
775 	 p_child_key_column1       => 'dpnt_cvrd_plip_rt_id',
776 	 p_child_table_name2       => 'ben_dpnt_othr_ptip_rt_f',
777 	 p_child_key_column2       => 'dpnt_othr_ptip_rt_id',
778 	 p_child_table_name3       => 'ben_enrld_anthr_oipl_rt_f',
779 	 p_child_key_column3       => 'enrld_anthr_oipl_rt_id',
780 	 p_child_table_name4       => 'ben_enrld_anthr_pgm_rt_f',
781 	 p_child_key_column4       => 'enrld_anthr_pgm_rt_id',
782 	 p_child_table_name5       => 'ben_enrld_anthr_plip_rt_f',
783 	 p_child_key_column5       => 'enrld_anthr_plip_rt_id',
784 	 p_child_table_name6       => 'ben_enrld_anthr_pl_rt_f',
785 	 p_child_key_column6       => 'enrld_anthr_pl_rt_id',
786 	 p_child_table_name7       => 'ben_enrld_anthr_ptip_rt_f',
787 	 p_child_key_column7       => 'enrld_anthr_ptip_rt_id',
788 	 p_child_table_name8       => 'ben_no_othr_cvg_rt_f',
789 	 p_child_key_column8       => 'no_othr_cvg_rt_id',
790 	 p_child_table_name9       => 'ben_othr_ptip_rt_f',
791 	 p_child_key_column9       => 'othr_ptip_rt_id',
792 	 p_child_table_name10      => 'ben_prtt_anthr_pl_rt_f',
793 	 p_child_key_column10      => 'prtt_anthr_pl_rt_id',
794 --         p_enforce_foreign_locking => true, For Bug 3188818
795         p_enforce_foreign_locking => false,
796 	 p_validation_start_date   => l_validation_start_date2,
797  	 p_validation_end_date	   => l_validation_end_date2);
798 
799 
800        dt_api.validate_dt_mode
801 	(p_effective_date	   => p_effective_date,
802 	 p_datetrack_mode	   => p_datetrack_mode,
803 	 p_base_table_name	   => 'ben_vrbl_rt_prfl_f',
804 	 p_base_key_column	   => 'vrbl_rt_prfl_id',
805 	 p_base_key_value 	   => p_vrbl_rt_prfl_id,
806 	 p_parent_table_name1      => 'ben_oipl_f',
807 	 p_parent_key_column1      => 'oipl_id',
808 	 p_parent_key_value1       => g_old_rec.oipl_id,
809 	 p_parent_table_name2      => 'ben_pl_f',
810 	 p_parent_key_column2      => 'pl_id',
811 	 p_parent_key_value2       => g_old_rec.pl_id,
812 	 p_child_table_name1       => 'ben_qua_in_gr_rt_f',
813 	 p_child_key_column1       => 'qua_in_gr_rt_id',
814 	 p_child_table_name2       => 'ben_perf_rtng_rt_f',
815 	 p_child_key_column2       => 'perf_rtng_rt_id' ,
816 --         p_enforce_foreign_locking => true, For Bug 3188818
817         p_enforce_foreign_locking => false,
818 	 p_validation_start_date   => l_validation_start_date2,
819  	 p_validation_end_date	   => l_validation_end_date2);
820     --
821   Else
822     --
823     -- We are doing a datetrack 'INSERT' which is illegal within this
824     -- procedure therefore we must error (note: to lck on insert the
825     -- private procedure ins_lck should be called).
826     --
827     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
828     hr_utility.set_message_token('PROCEDURE', l_proc);
829     hr_utility.set_message_token('STEP','20');
830     hr_utility.raise_error;
831   End If;
832   --
833   -- Set the validation start and end date OUT arguments
834   --
835   if l_validation_start_date > l_validation_start_date1 then
836     --
837     if l_validation_start_date2 > l_validation_start_date then
838       --
839       p_validation_start_date := l_validation_start_date2;
840       --
841     else
842       --
843       p_validation_start_date := l_validation_start_date;
844       --
845     end if;
846     --
847   else
848     --
849     if l_validation_start_date2 > l_validation_start_date1 then
850       --
851       p_validation_start_date := l_validation_start_date2;
852       --
853     else
854       --
855       p_validation_start_date := l_validation_start_date1;
856       --
857     end if;
858     --
862     --
859   end if;
860   --
861   if l_validation_end_date > l_validation_end_date1 then
863     if l_validation_end_date2 > l_validation_end_date then
864       --
865       p_validation_end_date := l_validation_end_date2;
866       --
867     else
868       --
869       p_validation_end_date := l_validation_end_date;
870       --
871     end if;
872     --
873   else
874     --
875     if l_validation_end_date2 > l_validation_end_date1 then
876       --
877       p_validation_end_date := l_validation_end_date2;
878       --
879     else
880       --
881       p_validation_end_date := l_validation_end_date1;
882       --
883     end if;
884     --
885   end if;
886   --
887   hr_utility.set_location(' Leaving:'||l_proc, 30);
888 --
889 -- We need to trap the ORA LOCK exception
890 --
891 Exception
892   When HR_Api.Object_Locked then
893     --
894     -- The object is locked therefore we need to supply a meaningful
895     -- error message.
896     --
897     hr_utility.set_message(801, 'HR_7165_OBJECT_LOCKED');
898     hr_utility.set_message_token('TABLE_NAME', 'ben_vrbl_rt_prfl_f');
899     hr_utility.raise_error;
900   When l_object_invalid then
901     --
902     -- The object doesn't exist or is invalid
903     --
904     hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
905     hr_utility.set_message_token('TABLE_NAME', 'ben_vrbl_rt_prfl_f');
906     hr_utility.raise_error;
907 End lck;
908 --
909 -- ----------------------------------------------------------------------------
910 -- |-----------------------------< convert_args >-----------------------------|
911 -- ----------------------------------------------------------------------------
912 Function convert_args
913 	(
914 	p_vrbl_rt_prfl_id               in number,
915 	p_effective_start_date          in date,
916 	p_effective_end_date            in date,
917 	p_pl_typ_opt_typ_id             in number,
918 	p_pl_id                         in number,
919 	p_oipl_id                       in number,
920         p_comp_lvl_fctr_id              in number,
921 	p_business_group_id             in number,
922 	p_acty_typ_cd                   in varchar2,
923 	p_rt_typ_cd                     in varchar2,
924 	p_bnft_rt_typ_cd                in varchar2,
925 	p_tx_typ_cd                     in varchar2,
926 	p_vrbl_rt_trtmt_cd              in varchar2,
927 	p_acty_ref_perd_cd              in varchar2,
928 	p_mlt_cd                        in varchar2,
929 	p_incrmnt_elcn_val              in number,
930 	p_dflt_elcn_val                 in number,
931 	p_mx_elcn_val                   in number,
932 	p_mn_elcn_val                   in number,
933         p_lwr_lmt_val                   in number,
934         p_lwr_lmt_calc_rl               in number,
935         p_upr_lmt_val                   in number,
936         p_upr_lmt_calc_rl               in number,
937         p_ultmt_upr_lmt                 in number,
938         p_ultmt_lwr_lmt                 in number,
939         p_ultmt_upr_lmt_calc_rl         in number,
940         p_ultmt_lwr_lmt_calc_rl         in number,
941         p_ann_mn_elcn_val               in number,
942         p_ann_mx_elcn_val               in number,
943 	p_val                           in number,
944 	p_name                          in varchar2,
945 	p_no_mn_elcn_val_dfnd_flag      in varchar2,
946 	p_no_mx_elcn_val_dfnd_flag      in varchar2,
947         p_alwys_sum_all_cvg_flag        in varchar2,
948         p_alwys_cnt_all_prtts_flag      in varchar2,
949 	p_val_calc_rl                   in number,
950 	p_vrbl_rt_prfl_stat_cd          in varchar2,
951         p_vrbl_usg_cd                   in varchar2,
952         p_asmt_to_use_cd                in varchar2,
953         p_rndg_cd                       in varchar2,
954         p_rndg_rl                       in number,
955         p_rt_hrly_slrd_flag             in varchar2,
956         p_rt_pstl_cd_flag               in varchar2,
957         p_rt_lbr_mmbr_flag              in varchar2,
958         p_rt_lgl_enty_flag              in varchar2,
959         p_rt_benfts_grp_flag            in varchar2,
960         p_rt_wk_loc_flag                in varchar2,
961         p_rt_brgng_unit_flag            in varchar2,
962         p_rt_age_flag                   in varchar2,
963         p_rt_los_flag                   in varchar2,
964         p_rt_per_typ_flag               in varchar2,
965         p_rt_fl_tm_pt_tm_flag           in varchar2,
966         p_rt_ee_stat_flag               in varchar2,
967         p_rt_grd_flag                   in varchar2,
968         p_rt_pct_fl_tm_flag             in varchar2,
969         p_rt_asnt_set_flag              in varchar2,
970         p_rt_hrs_wkd_flag               in varchar2,
971         p_rt_comp_lvl_flag              in varchar2,
972         p_rt_org_unit_flag              in varchar2,
973         p_rt_loa_rsn_flag               in varchar2,
974         p_rt_pyrl_flag                  in varchar2,
975         p_rt_schedd_hrs_flag            in varchar2,
976         p_rt_py_bss_flag                in varchar2,
977         p_rt_prfl_rl_flag               in varchar2,
978         p_rt_cmbn_age_los_flag          in varchar2,
979         p_rt_prtt_pl_flag               in varchar2,
980         p_rt_svc_area_flag              in varchar2,
981         p_rt_ppl_grp_flag               in varchar2,
982         p_rt_dsbld_flag                 in varchar2,
986         p_rt_ttl_prtt_flag              in varchar2,
983         p_rt_hlth_cvg_flag              in varchar2,
984         p_rt_poe_flag                   in varchar2,
985         p_rt_ttl_cvg_vol_flag           in varchar2,
987         p_rt_gndr_flag                  in varchar2,
988         p_rt_tbco_use_flag              in varchar2,
989 	p_vpf_attribute_category        in varchar2,
990 	p_vpf_attribute1                in varchar2,
991 	p_vpf_attribute2                in varchar2,
992 	p_vpf_attribute3                in varchar2,
993 	p_vpf_attribute4                in varchar2,
994 	p_vpf_attribute5                in varchar2,
995 	p_vpf_attribute6                in varchar2,
996 	p_vpf_attribute7                in varchar2,
997 	p_vpf_attribute8                in varchar2,
998 	p_vpf_attribute9                in varchar2,
999 	p_vpf_attribute10               in varchar2,
1000 	p_vpf_attribute11               in varchar2,
1001 	p_vpf_attribute12               in varchar2,
1002 	p_vpf_attribute13               in varchar2,
1003 	p_vpf_attribute14               in varchar2,
1004 	p_vpf_attribute15               in varchar2,
1005 	p_vpf_attribute16               in varchar2,
1006 	p_vpf_attribute17               in varchar2,
1007 	p_vpf_attribute18               in varchar2,
1008 	p_vpf_attribute19               in varchar2,
1009 	p_vpf_attribute20               in varchar2,
1010 	p_vpf_attribute21               in varchar2,
1011 	p_vpf_attribute22               in varchar2,
1012 	p_vpf_attribute23               in varchar2,
1013 	p_vpf_attribute24               in varchar2,
1014 	p_vpf_attribute25               in varchar2,
1015 	p_vpf_attribute26               in varchar2,
1016 	p_vpf_attribute27               in varchar2,
1017 	p_vpf_attribute28               in varchar2,
1018 	p_vpf_attribute29               in varchar2,
1019 	p_vpf_attribute30               in varchar2,
1020 	p_object_version_number         in number,
1021 	p_rt_cntng_prtn_prfl_flag	in varchar2,
1022 	p_rt_cbr_quald_bnf_flag  	in varchar2,
1023 	p_rt_optd_mdcr_flag      	in varchar2,
1024 	p_rt_lvg_rsn_flag        	in varchar2,
1025 	p_rt_pstn_flag           	in varchar2,
1026 	p_rt_comptncy_flag       	in varchar2,
1027 	p_rt_job_flag            	in varchar2,
1028 	p_rt_qual_titl_flag      	in varchar2,
1029 	p_rt_dpnt_cvrd_pl_flag   	in varchar2,
1030 	p_rt_dpnt_cvrd_plip_flag 	in varchar2,
1031 	p_rt_dpnt_cvrd_ptip_flag 	in varchar2,
1032 	p_rt_dpnt_cvrd_pgm_flag  	in varchar2,
1033 	p_rt_enrld_oipl_flag     	in varchar2,
1034 	p_rt_enrld_pl_flag       	in varchar2,
1035 	p_rt_enrld_plip_flag     	in varchar2,
1036 	p_rt_enrld_ptip_flag     	in varchar2,
1037 	p_rt_enrld_pgm_flag      	in varchar2,
1038 	p_rt_prtt_anthr_pl_flag  	in varchar2,
1039 	p_rt_othr_ptip_flag      	in varchar2,
1040 	p_rt_no_othr_cvg_flag    	in varchar2,
1041 	p_rt_dpnt_othr_ptip_flag 	in varchar2,
1042 	p_rt_qua_in_gr_flag    	    	in varchar2,
1043         p_rt_perf_rtng_flag    	    	in varchar2,
1044         p_rt_elig_prfl_flag    	    	in varchar2)
1045 	Return g_rec_type is
1046 --
1047   l_rec	  g_rec_type;
1048   l_proc  varchar2(72) := g_package||'convert_args';
1049 --
1050 Begin
1051   --
1052   hr_utility.set_location('Entering:'||l_proc, 5);
1053   --
1054   -- Convert arguments into local l_rec structure.
1055   --
1056   l_rec.vrbl_rt_prfl_id                  := p_vrbl_rt_prfl_id;
1057   l_rec.effective_start_date             := p_effective_start_date;
1058   l_rec.effective_end_date               := p_effective_end_date;
1059   l_rec.pl_typ_opt_typ_id                := p_pl_typ_opt_typ_id;
1060   l_rec.pl_id                            := p_pl_id;
1061   l_rec.oipl_id                          := p_oipl_id;
1062   l_rec.comp_lvl_fctr_id                 := p_comp_lvl_fctr_id;
1063   l_rec.business_group_id                := p_business_group_id;
1064   l_rec.acty_typ_cd                      := p_acty_typ_cd;
1065   l_rec.rt_typ_cd                        := p_rt_typ_cd;
1066   l_rec.bnft_rt_typ_cd                   := p_bnft_rt_typ_cd;
1067   l_rec.tx_typ_cd                        := p_tx_typ_cd;
1068   l_rec.vrbl_rt_trtmt_cd                 := p_vrbl_rt_trtmt_cd;
1069   l_rec.acty_ref_perd_cd                 := p_acty_ref_perd_cd;
1070   l_rec.mlt_cd                           := p_mlt_cd;
1071   l_rec.incrmnt_elcn_val                 := p_incrmnt_elcn_val;
1072   l_rec.dflt_elcn_val                    := p_dflt_elcn_val;
1073   l_rec.mx_elcn_val                      := p_mx_elcn_val;
1074   l_rec.mn_elcn_val                      := p_mn_elcn_val;
1075   l_rec.lwr_lmt_val                      := p_lwr_lmt_val;
1076   l_rec.lwr_lmt_calc_rl                  := p_lwr_lmt_calc_rl;
1077   l_rec.upr_lmt_val                      := p_upr_lmt_val;
1078   l_rec.upr_lmt_calc_rl                  := p_upr_lmt_calc_rl;
1079   l_rec.ultmt_upr_lmt                    := p_ultmt_upr_lmt;
1080   l_rec.ultmt_lwr_lmt                    := p_ultmt_lwr_lmt;
1081   l_rec.ultmt_upr_lmt_calc_rl            := p_ultmt_upr_lmt_calc_rl;
1082   l_rec.ultmt_lwr_lmt_calc_rl            := p_ultmt_lwr_lmt_calc_rl;
1083   l_rec.ann_mn_elcn_val                  := p_ann_mn_elcn_val;
1084   l_rec.ann_mx_elcn_val                  := p_ann_mx_elcn_val;
1085   l_rec.val                              := p_val;
1086   l_rec.name                             := p_name;
1087   l_rec.no_mn_elcn_val_dfnd_flag         := p_no_mn_elcn_val_dfnd_flag;
1088   l_rec.no_mx_elcn_val_dfnd_flag         := p_no_mx_elcn_val_dfnd_flag;
1089   l_rec.alwys_sum_all_cvg_flag           := p_alwys_sum_all_cvg_flag;
1093   l_rec.vrbl_usg_cd                      := p_vrbl_usg_cd;
1090   l_rec.alwys_cnt_all_prtts_flag         := p_alwys_cnt_all_prtts_flag;
1091   l_rec.val_calc_rl                      := p_val_calc_rl;
1092   l_rec.vrbl_rt_prfl_stat_cd             := p_vrbl_rt_prfl_stat_cd;
1094   l_rec.asmt_to_use_cd                   := p_asmt_to_use_cd;
1095   l_rec.rndg_cd                          := p_rndg_cd;
1096   l_rec.rndg_rl                          := p_rndg_rl;
1097   l_rec.rt_hrly_slrd_flag                := p_rt_hrly_slrd_flag;
1098   l_rec.rt_pstl_cd_flag                  := p_rt_pstl_cd_flag;
1099   l_rec.rt_lbr_mmbr_flag                 := p_rt_lbr_mmbr_flag;
1100   l_rec.rt_lgl_enty_flag                 := p_rt_lgl_enty_flag;
1101   l_rec.rt_benfts_grp_flag               := p_rt_benfts_grp_flag;
1102   l_rec.rt_wk_loc_flag                   := p_rt_wk_loc_flag;
1103   l_rec.rt_brgng_unit_flag               := p_rt_brgng_unit_flag;
1104   l_rec.rt_age_flag                      := p_rt_age_flag;
1105   l_rec.rt_los_flag                      := p_rt_los_flag;
1106   l_rec.rt_per_typ_flag                  := p_rt_per_typ_flag;
1107   l_rec.rt_fl_tm_pt_tm_flag              := p_rt_fl_tm_pt_tm_flag;
1108   l_rec.rt_ee_stat_flag                  := p_rt_ee_stat_flag;
1109   l_rec.rt_grd_flag                      := p_rt_grd_flag;
1110   l_rec.rt_pct_fl_tm_flag                := p_rt_pct_fl_tm_flag;
1111   l_rec.rt_asnt_set_flag                 := p_rt_asnt_set_flag;
1112   l_rec.rt_hrs_wkd_flag                  := p_rt_hrs_wkd_flag;
1113   l_rec.rt_comp_lvl_flag                 := p_rt_comp_lvl_flag;
1114   l_rec.rt_org_unit_flag                 := p_rt_org_unit_flag;
1115   l_rec.rt_loa_rsn_flag                  := p_rt_loa_rsn_flag;
1116   l_rec.rt_pyrl_flag                     := p_rt_pyrl_flag;
1117   l_rec.rt_schedd_hrs_flag               := p_rt_schedd_hrs_flag;
1118   l_rec.rt_py_bss_flag                   := p_rt_py_bss_flag;
1119   l_rec.rt_prfl_rl_flag                  := p_rt_prfl_rl_flag;
1120   l_rec.rt_cmbn_age_los_flag             := p_rt_cmbn_age_los_flag;
1121   l_rec.rt_prtt_pl_flag                  := p_rt_prtt_pl_flag;
1122   l_rec.rt_svc_area_flag                 := p_rt_svc_area_flag;
1123   l_rec.rt_ppl_grp_flag                  := p_rt_ppl_grp_flag;
1124   l_rec.rt_dsbld_flag                    := p_rt_dsbld_flag;
1125   l_rec.rt_hlth_cvg_flag                 := p_rt_hlth_cvg_flag;
1126   l_rec.rt_poe_flag                      := p_rt_poe_flag;
1127   l_rec.rt_ttl_cvg_vol_flag              := p_rt_ttl_cvg_vol_flag;
1128   l_rec.rt_ttl_prtt_flag                 := p_rt_ttl_prtt_flag;
1129   l_rec.rt_gndr_flag                     := p_rt_gndr_flag;
1130   l_rec.rt_tbco_use_flag                 := p_rt_tbco_use_flag;
1131   l_rec.vpf_attribute_category           := p_vpf_attribute_category;
1132   l_rec.vpf_attribute1                   := p_vpf_attribute1;
1133   l_rec.vpf_attribute2                   := p_vpf_attribute2;
1134   l_rec.vpf_attribute3                   := p_vpf_attribute3;
1135   l_rec.vpf_attribute4                   := p_vpf_attribute4;
1136   l_rec.vpf_attribute5                   := p_vpf_attribute5;
1137   l_rec.vpf_attribute6                   := p_vpf_attribute6;
1138   l_rec.vpf_attribute7                   := p_vpf_attribute7;
1139   l_rec.vpf_attribute8                   := p_vpf_attribute8;
1140   l_rec.vpf_attribute9                   := p_vpf_attribute9;
1141   l_rec.vpf_attribute10                  := p_vpf_attribute10;
1142   l_rec.vpf_attribute11                  := p_vpf_attribute11;
1143   l_rec.vpf_attribute12                  := p_vpf_attribute12;
1144   l_rec.vpf_attribute13                  := p_vpf_attribute13;
1145   l_rec.vpf_attribute14                  := p_vpf_attribute14;
1146   l_rec.vpf_attribute15                  := p_vpf_attribute15;
1147   l_rec.vpf_attribute16                  := p_vpf_attribute16;
1148   l_rec.vpf_attribute17                  := p_vpf_attribute17;
1149   l_rec.vpf_attribute18                  := p_vpf_attribute18;
1150   l_rec.vpf_attribute19                  := p_vpf_attribute19;
1151   l_rec.vpf_attribute20                  := p_vpf_attribute20;
1152   l_rec.vpf_attribute21                  := p_vpf_attribute21;
1153   l_rec.vpf_attribute22                  := p_vpf_attribute22;
1154   l_rec.vpf_attribute23                  := p_vpf_attribute23;
1155   l_rec.vpf_attribute24                  := p_vpf_attribute24;
1156   l_rec.vpf_attribute25                  := p_vpf_attribute25;
1157   l_rec.vpf_attribute26                  := p_vpf_attribute26;
1158   l_rec.vpf_attribute27                  := p_vpf_attribute27;
1159   l_rec.vpf_attribute28                  := p_vpf_attribute28;
1160   l_rec.vpf_attribute29                  := p_vpf_attribute29;
1161   l_rec.vpf_attribute30                  := p_vpf_attribute30;
1162   l_rec.object_version_number            := p_object_version_number;
1163   l_rec.rt_cntng_prtn_prfl_flag		 := p_rt_cntng_prtn_prfl_flag;
1164   l_rec.rt_cbr_quald_bnf_flag  		 := p_rt_cbr_quald_bnf_flag;
1165   l_rec.rt_optd_mdcr_flag      		 := p_rt_optd_mdcr_flag;
1166   l_rec.rt_lvg_rsn_flag        		 := p_rt_lvg_rsn_flag;
1167   l_rec.rt_pstn_flag           		 := p_rt_pstn_flag;
1168   l_rec.rt_comptncy_flag       		 := p_rt_comptncy_flag ;
1169   l_rec.rt_job_flag            		 := p_rt_job_flag;
1170   l_rec.rt_qual_titl_flag      		 := p_rt_qual_titl_flag ;
1171   l_rec.rt_dpnt_cvrd_pl_flag   		 := p_rt_dpnt_cvrd_pl_flag;
1172   l_rec.rt_dpnt_cvrd_plip_flag 		 := p_rt_dpnt_cvrd_plip_flag ;
1173   l_rec.rt_dpnt_cvrd_ptip_flag 		 := p_rt_dpnt_cvrd_ptip_flag ;
1174   l_rec.rt_dpnt_cvrd_pgm_flag  		 := p_rt_dpnt_cvrd_pgm_flag;
1175   l_rec.rt_enrld_oipl_flag     		 := p_rt_enrld_oipl_flag ;
1176   l_rec.rt_enrld_pl_flag       		 := p_rt_enrld_pl_flag  ;
1177   l_rec.rt_enrld_plip_flag     		 := p_rt_enrld_plip_flag ;
1178   l_rec.rt_enrld_ptip_flag     		 := p_rt_enrld_ptip_flag ;
1179   l_rec.rt_enrld_pgm_flag      		 := p_rt_enrld_pgm_flag  ;
1180   l_rec.rt_prtt_anthr_pl_flag  		 := p_rt_prtt_anthr_pl_flag ;
1181   l_rec.rt_othr_ptip_flag      		 := p_rt_othr_ptip_flag  ;
1182   l_rec.rt_no_othr_cvg_flag    		 := p_rt_no_othr_cvg_flag;
1183   l_rec.rt_dpnt_othr_ptip_flag 		 := p_rt_dpnt_othr_ptip_flag ;
1184   l_rec.rt_qua_in_gr_flag 		 := p_rt_qua_in_gr_flag;
1185   l_rec.rt_perf_rtng_flag 		 := p_rt_perf_rtng_flag;
1186   l_rec.rt_elig_prfl_flag 		 := p_rt_elig_prfl_flag;
1187 
1188   --
1189   -- Return the plsql record structure.
1190   --
1191   hr_utility.set_location(' Leaving:'||l_proc, 10);
1192   Return(l_rec);
1193 --
1194 End convert_args;
1195 --
1196 end ben_vpf_shd;