DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_PEP_SHD

Source


1 Package Body ben_pep_shd as
2 /* $Header: bepeprhi.pkb 120.0 2005/05/28 10:39:57 appldev noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)    := '  ben_pep_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_ELIG_PER_F_PK') Then
37     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
38     fnd_message.set_token('PROCEDURE', l_proc);
39     fnd_message.set_token('STEP','5');
40     fnd_message.raise_error;
41   ElsIf (p_constraint_name = 'BEN_ELIG_PER_FK2') Then
42     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
43     fnd_message.set_token('PROCEDURE', l_proc);
44     fnd_message.set_token('STEP','10');
45     fnd_message.raise_error;
46   ElsIf (p_constraint_name = 'BEN_ELIG_PER_HL1') Then
47     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
48     fnd_message.set_token('PROCEDURE', l_proc);
49     fnd_message.set_token('STEP','15');
50     fnd_message.raise_error;
51   ElsIf (p_constraint_name = 'BEN_ELIG_PER_FK_LER') Then
52     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
53     fnd_message.set_token('PROCEDURE', l_proc);
54     fnd_message.set_token('STEP','20');
55     fnd_message.raise_error;
56   ElsIf (p_constraint_name = 'BEN_ELIG_PER_FK_PL') Then
57     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
58     fnd_message.set_token('PROCEDURE', l_proc);
59     fnd_message.set_token('STEP','25');
60     fnd_message.raise_error;
61   ElsIf (p_constraint_name = 'BEN_ELIG_PER_FK_PGM') Then
62     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
63     fnd_message.set_token('PROCEDURE', l_proc);
64     fnd_message.set_token('STEP','30');
65     fnd_message.raise_error;
66   ElsIf (p_constraint_name = 'BEN_ELIG_PER_FK_PERSON') Then
67     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
68     fnd_message.set_token('PROCEDURE', l_proc);
69     fnd_message.set_token('STEP','35');
70     fnd_message.raise_error;
71   Else
72     fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
73     fnd_message.set_token('PROCEDURE', l_proc);
74     fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
75     fnd_message.raise_error;
76   End If;
77   --
78   hr_utility.set_location(' Leaving:'||l_proc, 10);
79 End constraint_error;
80 --
81 -- ----------------------------------------------------------------------------
82 -- |-----------------------------< api_updating >-----------------------------|
83 -- ----------------------------------------------------------------------------
84 Function api_updating
85   (p_effective_date        in date,
86    p_elig_per_id        in number,
87    p_object_version_number    in number
88   ) Return Boolean Is
89 --
90   --
91   -- Cursor selects the 'current' row from the HR Schema
92   --
93   Cursor C_Sel1 is
94     select
95     elig_per_id,
96     effective_start_date,
97     effective_end_date,
98     business_group_id,
99     pl_id,
100     pgm_id,
101     plip_id,
102     ptip_id,
103     ler_id,
104     person_id,
105     per_in_ler_id,
106     dpnt_othr_pl_cvrd_rl_flag,
107     prtn_ovridn_thru_dt,
108     pl_key_ee_flag,
109     pl_hghly_compd_flag,
110     elig_flag,
111     comp_ref_amt,
112     cmbn_age_n_los_val,
113     comp_ref_uom,
114     age_val,
115     los_val,
116     prtn_end_dt,
117     prtn_strt_dt,
118     wait_perd_cmpltn_dt,
119     wait_perd_strt_dt,
120     wv_ctfn_typ_cd,
121     hrs_wkd_val,
122     hrs_wkd_bndry_perd_cd,
123     prtn_ovridn_flag,
124     no_mx_prtn_ovrid_thru_flag,
125     prtn_ovridn_rsn_cd,
126     age_uom,
127     los_uom,
128     ovrid_svc_dt,
129     inelg_rsn_cd,
130     frz_los_flag,
131     frz_age_flag,
132     frz_cmp_lvl_flag,
133     frz_pct_fl_tm_flag,
134     frz_hrs_wkd_flag,
135     frz_comb_age_and_los_flag,
136     dstr_rstcn_flag,
137     pct_fl_tm_val,
138     wv_prtn_rsn_cd,
139     pl_wvd_flag,
140     rt_comp_ref_amt,
141     rt_cmbn_age_n_los_val,
142     rt_comp_ref_uom,
143     rt_age_val,
144     rt_los_val,
145     rt_hrs_wkd_val,
146     rt_hrs_wkd_bndry_perd_cd,
147     rt_age_uom,
148     rt_los_uom,
149     rt_pct_fl_tm_val,
150     rt_frz_los_flag,
151     rt_frz_age_flag,
152     rt_frz_cmp_lvl_flag,
153     rt_frz_pct_fl_tm_flag,
154     rt_frz_hrs_wkd_flag,
155     rt_frz_comb_age_and_los_flag,
156     once_r_cntug_cd,
157     pl_ordr_num,
158     plip_ordr_num,
159     ptip_ordr_num,
160     pep_attribute_category,
161     pep_attribute1,
162     pep_attribute2,
163     pep_attribute3,
164     pep_attribute4,
165     pep_attribute5,
166     pep_attribute6,
167     pep_attribute7,
168     pep_attribute8,
169     pep_attribute9,
170     pep_attribute10,
171     pep_attribute11,
172     pep_attribute12,
173     pep_attribute13,
174     pep_attribute14,
175     pep_attribute15,
176     pep_attribute16,
177     pep_attribute17,
178     pep_attribute18,
179     pep_attribute19,
180     pep_attribute20,
181     pep_attribute21,
182     pep_attribute22,
183     pep_attribute23,
184     pep_attribute24,
185     pep_attribute25,
186     pep_attribute26,
187     pep_attribute27,
188     pep_attribute28,
189     pep_attribute29,
190     pep_attribute30,
191     request_id,
192     program_application_id,
193     program_id,
194     program_update_date,
195     object_version_number
196     from    ben_elig_per_f
197     where    elig_per_id = p_elig_per_id
198     and        p_effective_date
199     between    effective_start_date and effective_end_date;
200 --
201   l_proc    varchar2(72)    := g_package||'api_updating';
202   l_fct_ret    boolean;
203 --
204 Begin
205 /*
206   hr_utility.set_location('Entering:'||l_proc, 5);
207 */
208   --
209   If (p_effective_date is null or
210       p_elig_per_id is null or
211       p_object_version_number is null) Then
212     --
213     -- One of the primary key arguments is null therefore we must
214     -- set the returning function value to false
215     --
216     l_fct_ret := false;
217   Else
218     If (p_elig_per_id = g_old_rec.elig_per_id and
219         p_object_version_number = g_old_rec.object_version_number) Then
220 /*
221       hr_utility.set_location(l_proc, 10);
222 */
223       --
224       -- The g_old_rec is current therefore we must
225       -- set the returning function to true
226       --
227       l_fct_ret := true;
228     Else
229       --
230       -- Select the current row
231       --
232       Open C_Sel1;
233       Fetch C_Sel1 Into g_old_rec;
234       If C_Sel1%notfound Then
235         Close C_Sel1;
236         --
237         -- The primary key is invalid therefore we must error
238         --
239         fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
240         fnd_message.raise_error;
241       End If;
242       Close C_Sel1;
243       If (p_object_version_number <> g_old_rec.object_version_number) Then
244         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
245         fnd_message.raise_error;
246       End If;
247 /*
248       hr_utility.set_location(l_proc, 15);
249 */
250       l_fct_ret := true;
251     End If;
252   End If;
253 /*
254   hr_utility.set_location(' Leaving:'||l_proc, 20);
255 */
256   Return (l_fct_ret);
257 --
258 End api_updating;
259 --
260 -- ----------------------------------------------------------------------------
261 -- |--------------------------< find_dt_del_modes >---------------------------|
262 -- ----------------------------------------------------------------------------
263 Procedure find_dt_del_modes
264     (p_effective_date     in  date,
265      p_base_key_value     in  number,
266      p_zap                out nocopy boolean,
267      p_delete             out nocopy boolean,
268      p_future_change      out nocopy boolean,
269      p_delete_next_change out nocopy boolean) is
270 --
271   l_proc         varchar2(72)     := g_package||'find_dt_del_modes';
272 --
273   l_parent_key_value1    number;
274   l_parent_key_value2    number;
275   l_parent_key_value3    number;
276   l_parent_key_value4    number;
277   l_parent_key_value5    number;
278   --
279   Cursor C_Sel1
280   Is
281   select t.ler_id,
282          t.pgm_id,
283          t.pl_id,
284          t.plip_id,
285          t.ptip_id
286     from ben_elig_per_f t
287    where t.elig_per_id = p_base_key_value
288      and p_effective_date between t.effective_start_date
289                               and t.effective_end_date;
290 --
291 Begin
292   hr_utility.set_location('Entering:'||l_proc, 5);
293   Open  C_Sel1;
294   Fetch C_Sel1 Into l_parent_key_value1,
295             l_parent_key_value2,
296             l_parent_key_value3,
297             l_parent_key_value4,
298             l_parent_key_value5;
299   If C_Sel1%notfound then
300     Close C_Sel1;
301     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
302     fnd_message.set_token('PROCEDURE', l_proc);
303     fnd_message.set_token('STEP','10');
304     fnd_message.raise_error;
305   End If;
306   Close C_Sel1;
307   --
308   -- Call the corresponding datetrack api
309   --
310   dt_api.find_dt_del_modes
311     (p_effective_date    => p_effective_date,
312      p_base_table_name    => 'ben_elig_per_f',
313      p_base_key_column    => 'elig_per_id',
314      p_base_key_value    => p_base_key_value,
315      p_parent_table_name1    => 'ben_ler_f',
316      p_parent_key_column1    => 'ler_id',
317      p_parent_key_value1    => l_parent_key_value1,
318      p_parent_table_name2    => 'ben_pgm_f',
319      p_parent_key_column2    => 'pgm_id',
320      p_parent_key_value2    => l_parent_key_value2,
321      p_parent_table_name3    => 'ben_pl_f',
322      p_parent_key_column3    => 'pl_id',
323      p_parent_key_value3    => l_parent_key_value3,
324      p_parent_table_name4    => 'ben_plip_f',
325      p_parent_key_column4    => 'plip_id',
326      p_parent_key_value4    => l_parent_key_value4,
327      p_parent_table_name5    => 'ben_ptip_f',
328      p_parent_key_column5    => 'ptip_id',
329      p_parent_key_value5    => l_parent_key_value5,
330      p_zap            => p_zap,
331      p_delete        => p_delete,
332      p_future_change    => p_future_change,
333      p_delete_next_change    => p_delete_next_change);
334   --
335   hr_utility.set_location(' Leaving:'||l_proc, 10);
336 End find_dt_del_modes;
337 --
338 -- ----------------------------------------------------------------------------
339 -- |--------------------------< find_dt_upd_modes >---------------------------|
340 -- ----------------------------------------------------------------------------
341 Procedure find_dt_upd_modes
342     (p_effective_date    in  date,
343      p_base_key_value    in  number,
344      p_correction        out nocopy boolean,
345      p_update        out nocopy boolean,
346      p_update_override    out nocopy boolean,
347      p_update_change_insert    out nocopy boolean) is
348 --
349   l_proc     varchar2(72) := g_package||'find_dt_upd_modes';
350 --
351 Begin
352   hr_utility.set_location('Entering:'||l_proc, 5);
353   --
354   -- Call the corresponding datetrack api
355   --
356   dt_api.find_dt_upd_modes
357     (p_effective_date    => p_effective_date,
358      p_base_table_name    => 'ben_elig_per_f',
359      p_base_key_column    => 'elig_per_id',
360      p_base_key_value    => p_base_key_value,
361      p_correction        => p_correction,
362      p_update        => p_update,
363      p_update_override    => p_update_override,
364      p_update_change_insert    => p_update_change_insert);
365   --
366   hr_utility.set_location(' Leaving:'||l_proc, 10);
367 End find_dt_upd_modes;
368 --
369 -- ----------------------------------------------------------------------------
370 -- |------------------------< upd_effective_end_date >------------------------|
371 -- ----------------------------------------------------------------------------
372 Procedure upd_effective_end_date
373     (p_effective_date        in date,
374      p_base_key_value        in number,
375      p_new_effective_end_date    in date,
376      p_validation_start_date    in date,
377      p_validation_end_date        in date,
378          p_object_version_number       out nocopy number) is
379 --
380   l_proc           varchar2(72) := g_package||'upd_effective_end_date';
381   l_object_version_number number;
382 --
383 Begin
384   hr_utility.set_location('Entering:'||l_proc, 5);
385   --
386   -- Because we are updating a row we must get the next object
387   -- version number.
388   --
389   l_object_version_number :=
390     dt_api.get_object_version_number
391     (p_base_table_name    => 'ben_elig_per_f',
392      p_base_key_column    => 'elig_per_id',
393      p_base_key_value    => p_base_key_value);
394   --
395   hr_utility.set_location(l_proc, 10);
396   g_api_dml := true;  -- Set the api dml status
397   --
398   -- Update the specified datetrack row setting the effective
399   -- end date to the specified new effective end date.
400   --
401   update  ben_elig_per_f t
402   set      t.effective_end_date      = p_new_effective_end_date,
403       t.object_version_number = l_object_version_number
404   where      t.elig_per_id      = p_base_key_value
405   and      p_effective_date
406   between t.effective_start_date and t.effective_end_date;
407   --
408   g_api_dml := false;   -- Unset the api dml status
409   p_object_version_number := l_object_version_number;
410   hr_utility.set_location(' Leaving:'||l_proc, 15);
411 --
412 Exception
413   When Others Then
414     g_api_dml := false;   -- Unset the api dml status
415     Raise;
416 End upd_effective_end_date;
417 --
418 -- ----------------------------------------------------------------------------
419 -- |---------------------------------< lck >----------------------------------|
420 -- ----------------------------------------------------------------------------
421 Procedure lck
422     (p_effective_date     in  date,
423      p_datetrack_mode     in  varchar2,
424      p_elig_per_id     in  number,
425      p_object_version_number in  number,
426      p_validation_start_date out nocopy date,
427      p_validation_end_date     out nocopy date) is
428 --
429   l_proc          varchar2(72) := g_package||'lck';
430   l_validation_start_date date;
431   l_validation_end_date      date;
432   l_object_invalid       exception;
433   l_argument          varchar2(30);
434   --
435   -- Cursor C_Sel1 selects the current locked row as of session date
439     select
436   -- ensuring that the object version numbers match.
437   --
438   Cursor C_Sel1 is
440     elig_per_id,
441     effective_start_date,
442     effective_end_date,
443     business_group_id,
444     pl_id,
445     pgm_id,
446     plip_id,
447     ptip_id,
448     ler_id,
449     person_id,
450     per_in_ler_id,
451     dpnt_othr_pl_cvrd_rl_flag,
452     prtn_ovridn_thru_dt,
453     pl_key_ee_flag,
454     pl_hghly_compd_flag,
455     elig_flag,
456     comp_ref_amt,
457     cmbn_age_n_los_val,
458     comp_ref_uom,
459     age_val,
460     los_val,
461     prtn_end_dt,
462     prtn_strt_dt,
463     wait_perd_cmpltn_dt,
464     wait_perd_strt_dt,
465     wv_ctfn_typ_cd,
466     hrs_wkd_val,
467     hrs_wkd_bndry_perd_cd,
468     prtn_ovridn_flag,
469     no_mx_prtn_ovrid_thru_flag,
470     prtn_ovridn_rsn_cd,
471     age_uom,
472     los_uom,
473     ovrid_svc_dt,
474     inelg_rsn_cd,
475     frz_los_flag,
476     frz_age_flag,
477     frz_cmp_lvl_flag,
478     frz_pct_fl_tm_flag,
479     frz_hrs_wkd_flag,
480     frz_comb_age_and_los_flag,
481     dstr_rstcn_flag,
482     pct_fl_tm_val,
483     wv_prtn_rsn_cd,
484     pl_wvd_flag,
485     rt_comp_ref_amt,
486     rt_cmbn_age_n_los_val,
487     rt_comp_ref_uom,
488     rt_age_val,
489     rt_los_val,
490     rt_hrs_wkd_val,
491     rt_hrs_wkd_bndry_perd_cd,
492     rt_age_uom,
493     rt_los_uom,
494     rt_pct_fl_tm_val,
495     rt_frz_los_flag,
496     rt_frz_age_flag,
497     rt_frz_cmp_lvl_flag,
498     rt_frz_pct_fl_tm_flag,
499     rt_frz_hrs_wkd_flag,
500     rt_frz_comb_age_and_los_flag,
501     once_r_cntug_cd,
502     pl_ordr_num,
503     plip_ordr_num,
504     ptip_ordr_num,
505     pep_attribute_category,
506     pep_attribute1,
507     pep_attribute2,
508     pep_attribute3,
509     pep_attribute4,
510     pep_attribute5,
511     pep_attribute6,
512     pep_attribute7,
513     pep_attribute8,
514     pep_attribute9,
515     pep_attribute10,
516     pep_attribute11,
517     pep_attribute12,
518     pep_attribute13,
519     pep_attribute14,
520     pep_attribute15,
521     pep_attribute16,
522     pep_attribute17,
523     pep_attribute18,
524     pep_attribute19,
525     pep_attribute20,
526     pep_attribute21,
527     pep_attribute22,
528     pep_attribute23,
529     pep_attribute24,
530     pep_attribute25,
531     pep_attribute26,
532     pep_attribute27,
533     pep_attribute28,
534     pep_attribute29,
535     pep_attribute30,
536     request_id,
537     program_application_id,
538     program_id,
539     program_update_date,
540     object_version_number
541     from    ben_elig_per_f
542     where   elig_per_id         = p_elig_per_id
543     and        p_effective_date
544     between effective_start_date and effective_end_date
545     for update nowait;
546   --
547   --
548   --
549 Begin
550   hr_utility.set_location('Entering:'||l_proc, 5);
551   --
552   -- Ensure that all the mandatory arguments are not null
553   --
554   hr_api.mandatory_arg_error(p_api_name       => l_proc,
555                              p_argument       => 'effective_date',
556                              p_argument_value => p_effective_date);
557   --
558   hr_api.mandatory_arg_error(p_api_name       => l_proc,
559                              p_argument       => 'datetrack_mode',
560                              p_argument_value => p_datetrack_mode);
561   --
562   hr_api.mandatory_arg_error(p_api_name       => l_proc,
563                              p_argument       => 'elig_per_id',
564                              p_argument_value => p_elig_per_id);
565   --
566   hr_api.mandatory_arg_error(p_api_name       => l_proc,
567                              p_argument       => 'object_version_number',
568                              p_argument_value => p_object_version_number);
569   --
570   -- Check to ensure the datetrack mode is not INSERT.
571   --
572   If (p_datetrack_mode <> 'INSERT') then
573     --
574     -- We must select and lock the current row.
575     --
576     Open  C_Sel1;
577     Fetch C_Sel1 Into g_old_rec;
578     If C_Sel1%notfound then
579       Close C_Sel1;
580       --
581       -- The primary key is invalid therefore we must error
582       --
583       fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
584       fnd_message.raise_error;
585     End If;
586     Close C_Sel1;
587     If (p_object_version_number <> g_old_rec.object_version_number) Then
588         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
589         fnd_message.raise_error;
590       End If;
591     hr_utility.set_location(l_proc, 15);
592     --
593     -- Validate the datetrack mode mode getting the validation start
594     -- and end dates for the specified datetrack operation.
595     --
596     dt_api.validate_dt_mode
600      p_base_key_column       => 'elig_per_id',
597     (p_effective_date       => p_effective_date,
598      p_datetrack_mode       => p_datetrack_mode,
599      p_base_table_name       => 'ben_elig_per_f',
601      p_base_key_value        => p_elig_per_id,
602      p_parent_table_name1      => 'ben_ler_f',
603      p_parent_key_column1      => 'ler_id',
604      p_parent_key_value1       => g_old_rec.ler_id,
605      p_parent_table_name2      => 'ben_pgm_f',
606      p_parent_key_column2      => 'pgm_id',
607      p_parent_key_value2       => g_old_rec.pgm_id,
608      p_parent_table_name3      => 'ben_pl_f',
609      p_parent_key_column3      => 'pl_id',
610      p_parent_key_value3       => g_old_rec.pl_id,
611      p_parent_table_name4      => 'per_all_people_f',
612      p_parent_key_column4      => 'person_id',
613      p_parent_key_value4       => g_old_rec.person_id,
614      p_parent_table_name5      => 'ben_plip_f',
615      p_parent_key_column5      => 'plip_id',
616      p_parent_key_value5       => g_old_rec.plip_id,
617      p_parent_table_name6      => 'ben_ptip_f',
618      p_parent_key_column6      => 'ptip_id',
619      p_parent_key_value6       => g_old_rec.ptip_id,
620      p_child_table_name1       => 'ben_elig_per_opt_f',
621      p_child_key_column1       => 'elig_per_opt_id',
622      p_enforce_foreign_locking => false,
623      p_validation_start_date   => l_validation_start_date,
624      p_validation_end_date       => l_validation_end_date);
625      --
626   Else
627     --
628     -- We are doing a datetrack 'INSERT' which is illegal within this
629     -- procedure therefore we must error (note: to lck on insert the
630     -- private procedure ins_lck should be called).
631     --
632     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
633     fnd_message.set_token('PROCEDURE', l_proc);
634     fnd_message.set_token('STEP','20');
635     fnd_message.raise_error;
636   End If;
637   --
638   -- Set the validation start and end date OUT arguments
639   --
640   p_validation_start_date := l_validation_start_date;
641   p_validation_end_date   := l_validation_end_date;
642   --
643   hr_utility.set_location(' Leaving:'||l_proc, 30);
644 --
645 -- We need to trap the ORA LOCK exception
646 --
647 Exception
648   When HR_Api.Object_Locked then
649     --
650     -- The object is locked therefore we need to supply a meaningful
651     -- error message.
652     --
653     fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
654     fnd_message.set_token('TABLE_NAME', 'ben_elig_per_f');
655     fnd_message.raise_error;
656   When l_object_invalid then
657     --
658     -- The object doesn't exist or is invalid
659     --
660     fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
661     fnd_message.set_token('TABLE_NAME', 'ben_elig_per_f');
662     fnd_message.raise_error;
663 End lck;
664 --
665 -- ----------------------------------------------------------------------------
666 -- |-----------------------------< convert_args >-----------------------------|
667 -- ----------------------------------------------------------------------------
668 Function convert_args
669     (
670     p_elig_per_id                   in number,
671     p_effective_start_date          in date,
672     p_effective_end_date            in date,
673     p_business_group_id             in number,
674     p_pl_id                         in number,
675     p_pgm_id                        in number,
676     p_plip_id                       in number,
677     p_ptip_id                       in number,
678     p_ler_id                        in number,
679     p_person_id                     in number,
680     p_per_in_ler_id                     in number,
681     p_dpnt_othr_pl_cvrd_rl_flag     in varchar2,
682     p_prtn_ovridn_thru_dt           in date,
683     p_pl_key_ee_flag                in varchar2,
684     p_pl_hghly_compd_flag           in varchar2,
685     p_elig_flag                     in varchar2,
686     p_comp_ref_amt                  in number,
687     p_cmbn_age_n_los_val            in number,
688     p_comp_ref_uom                  in varchar2,
689     p_age_val                       in number,
690     p_los_val                       in number,
691     p_prtn_end_dt                   in date,
692     p_prtn_strt_dt                  in date,
693     p_wait_perd_cmpltn_dt           in date,
694     p_wait_perd_strt_dt             in date,
695     p_wv_ctfn_typ_cd                in varchar2,
696     p_hrs_wkd_val                   in number,
697     p_hrs_wkd_bndry_perd_cd         in varchar2,
698     p_prtn_ovridn_flag              in varchar2,
699     p_no_mx_prtn_ovrid_thru_flag    in varchar2,
700     p_prtn_ovridn_rsn_cd            in varchar2,
701     p_age_uom                       in varchar2,
702     p_los_uom                       in varchar2,
703     p_ovrid_svc_dt                  in date,
704     p_inelg_rsn_cd                  in varchar2,
705     p_frz_los_flag                  in varchar2,
706     p_frz_age_flag                  in varchar2,
707     p_frz_cmp_lvl_flag              in varchar2,
708     p_frz_pct_fl_tm_flag            in varchar2,
709     p_frz_hrs_wkd_flag              in varchar2,
710     p_frz_comb_age_and_los_flag     in varchar2,
711     p_dstr_rstcn_flag               in varchar2,
712     p_pct_fl_tm_val                 in number,
716     p_rt_cmbn_age_n_los_val         in number,
713     p_wv_prtn_rsn_cd                in varchar2,
714     p_pl_wvd_flag                   in varchar2,
715     p_rt_comp_ref_amt               in number,
717     p_rt_comp_ref_uom               in varchar2,
718     p_rt_age_val                    in number,
719     p_rt_los_val                    in number,
720     p_rt_hrs_wkd_val                in number,
721     p_rt_hrs_wkd_bndry_perd_cd      in varchar2,
722     p_rt_age_uom                    in varchar2,
723     p_rt_los_uom                    in varchar2,
724     p_rt_pct_fl_tm_val              in number,
725     p_rt_frz_los_flag               in varchar2,
726     p_rt_frz_age_flag               in varchar2,
727     p_rt_frz_cmp_lvl_flag           in varchar2,
728     p_rt_frz_pct_fl_tm_flag         in varchar2,
729     p_rt_frz_hrs_wkd_flag           in varchar2,
730     p_rt_frz_comb_age_and_los_flag  in varchar2,
731     p_once_r_cntug_cd               in varchar2,
732     p_pl_ordr_num                   in number,
733     p_plip_ordr_num                   in number,
734     p_ptip_ordr_num                   in number,
735     p_pep_attribute_category        in varchar2,
736     p_pep_attribute1                in varchar2,
737     p_pep_attribute2                in varchar2,
738     p_pep_attribute3                in varchar2,
739     p_pep_attribute4                in varchar2,
740     p_pep_attribute5                in varchar2,
741     p_pep_attribute6                in varchar2,
742     p_pep_attribute7                in varchar2,
743     p_pep_attribute8                in varchar2,
744     p_pep_attribute9                in varchar2,
745     p_pep_attribute10               in varchar2,
746     p_pep_attribute11               in varchar2,
747     p_pep_attribute12               in varchar2,
748     p_pep_attribute13               in varchar2,
749     p_pep_attribute14               in varchar2,
750     p_pep_attribute15               in varchar2,
751     p_pep_attribute16               in varchar2,
752     p_pep_attribute17               in varchar2,
753     p_pep_attribute18               in varchar2,
754     p_pep_attribute19               in varchar2,
755     p_pep_attribute20               in varchar2,
756     p_pep_attribute21               in varchar2,
757     p_pep_attribute22               in varchar2,
758     p_pep_attribute23               in varchar2,
759     p_pep_attribute24               in varchar2,
760     p_pep_attribute25               in varchar2,
761     p_pep_attribute26               in varchar2,
762     p_pep_attribute27               in varchar2,
763     p_pep_attribute28               in varchar2,
764     p_pep_attribute29               in varchar2,
765     p_pep_attribute30               in varchar2,
766     p_request_id                    in number,
767     p_program_application_id        in number,
768     p_program_id                    in number,
769     p_program_update_date           in date,
770     p_object_version_number         in number
771     )
772     Return g_rec_type is
773 --
774   l_rec      g_rec_type;
775   l_proc  varchar2(72) := g_package||'convert_args';
776 --
777 Begin
778   --
779   hr_utility.set_location('Entering:'||l_proc, 5);
780   --
781   -- Convert arguments into local l_rec structure.
782   --
783   l_rec.elig_per_id                      := p_elig_per_id;
784   l_rec.effective_start_date             := p_effective_start_date;
785   l_rec.effective_end_date               := p_effective_end_date;
786   l_rec.business_group_id                := p_business_group_id;
787   l_rec.pl_id                            := p_pl_id;
788   l_rec.pgm_id                           := p_pgm_id;
789   l_rec.plip_id                          := p_plip_id;
790   l_rec.ptip_id                          := p_ptip_id;
791   l_rec.ler_id                           := p_ler_id;
792   l_rec.person_id                        := p_person_id;
793   l_rec.per_in_ler_id                        := p_per_in_ler_id;
794   l_rec.dpnt_othr_pl_cvrd_rl_flag        := p_dpnt_othr_pl_cvrd_rl_flag;
795   l_rec.prtn_ovridn_thru_dt              := p_prtn_ovridn_thru_dt;
796   l_rec.pl_key_ee_flag                   := p_pl_key_ee_flag;
797   l_rec.pl_hghly_compd_flag              := p_pl_hghly_compd_flag;
798   l_rec.elig_flag                        := p_elig_flag;
799   l_rec.comp_ref_amt                     := p_comp_ref_amt;
800   l_rec.cmbn_age_n_los_val               := p_cmbn_age_n_los_val;
801   l_rec.comp_ref_uom                     := p_comp_ref_uom;
802   l_rec.age_val                          := p_age_val;
803   l_rec.los_val                          := p_los_val;
804   l_rec.prtn_end_dt                      := p_prtn_end_dt;
805   l_rec.prtn_strt_dt                     := p_prtn_strt_dt;
806   l_rec.wait_perd_cmpltn_dt              := p_wait_perd_cmpltn_dt;
807   l_rec.wait_perd_strt_dt                := p_wait_perd_strt_dt ;
808   l_rec.wv_ctfn_typ_cd                   := p_wv_ctfn_typ_cd;
809   l_rec.hrs_wkd_val                      := p_hrs_wkd_val;
810   l_rec.hrs_wkd_bndry_perd_cd            := p_hrs_wkd_bndry_perd_cd;
811   l_rec.prtn_ovridn_flag                 := p_prtn_ovridn_flag;
812   l_rec.no_mx_prtn_ovrid_thru_flag       := p_no_mx_prtn_ovrid_thru_flag;
813   l_rec.prtn_ovridn_rsn_cd               := p_prtn_ovridn_rsn_cd;
814   l_rec.age_uom                          := p_age_uom;
818   l_rec.frz_los_flag                     := p_frz_los_flag;
815   l_rec.los_uom                          := p_los_uom;
816   l_rec.ovrid_svc_dt                     := p_ovrid_svc_dt;
817   l_rec.inelg_rsn_cd                     := p_inelg_rsn_cd;
819   l_rec.frz_age_flag                     := p_frz_age_flag;
820   l_rec.frz_cmp_lvl_flag                 := p_frz_cmp_lvl_flag;
821   l_rec.frz_pct_fl_tm_flag               := p_frz_pct_fl_tm_flag;
822   l_rec.frz_hrs_wkd_flag                 := p_frz_hrs_wkd_flag;
823   l_rec.frz_comb_age_and_los_flag        := p_frz_comb_age_and_los_flag;
824   l_rec.dstr_rstcn_flag                  := p_dstr_rstcn_flag;
825   l_rec.pct_fl_tm_val                    := p_pct_fl_tm_val;
826   l_rec.wv_prtn_rsn_cd                   := p_wv_prtn_rsn_cd;
827   l_rec.pl_wvd_flag                      := p_pl_wvd_flag;
828   l_rec.rt_comp_ref_amt                  := p_rt_comp_ref_amt;
829   l_rec.rt_cmbn_age_n_los_val            := p_rt_cmbn_age_n_los_val;
830   l_rec.rt_comp_ref_uom                  := p_rt_comp_ref_uom;
831   l_rec.rt_age_val                       := p_rt_age_val;
832   l_rec.rt_los_val                       := p_rt_los_val;
833   l_rec.rt_hrs_wkd_val                   := p_rt_hrs_wkd_val;
834   l_rec.rt_hrs_wkd_bndry_perd_cd         := p_rt_hrs_wkd_bndry_perd_cd;
835   l_rec.rt_age_uom                       := p_rt_age_uom;
836   l_rec.rt_los_uom                       := p_rt_los_uom;
837   l_rec.rt_pct_fl_tm_val                 := p_rt_pct_fl_tm_val;
838   l_rec.rt_frz_los_flag                  := p_rt_frz_los_flag;
839   l_rec.rt_frz_age_flag                  := p_rt_frz_age_flag;
840   l_rec.rt_frz_cmp_lvl_flag              := p_rt_frz_cmp_lvl_flag;
841   l_rec.rt_frz_pct_fl_tm_flag            := p_rt_frz_pct_fl_tm_flag;
842   l_rec.rt_frz_hrs_wkd_flag              := p_rt_frz_hrs_wkd_flag;
843   l_rec.rt_frz_comb_age_and_los_flag     := p_rt_frz_comb_age_and_los_flag;
844   l_rec.once_r_cntug_cd                  := p_once_r_cntug_cd;
845   l_rec.pl_ordr_num                      := p_pl_ordr_num;
846   l_rec.plip_ordr_num                    := p_plip_ordr_num;
847   l_rec.ptip_ordr_num                    := p_ptip_ordr_num;
848   l_rec.pep_attribute_category           := p_pep_attribute_category;
849   l_rec.pep_attribute1                   := p_pep_attribute1;
850   l_rec.pep_attribute2                   := p_pep_attribute2;
851   l_rec.pep_attribute3                   := p_pep_attribute3;
852   l_rec.pep_attribute4                   := p_pep_attribute4;
853   l_rec.pep_attribute5                   := p_pep_attribute5;
854   l_rec.pep_attribute6                   := p_pep_attribute6;
855   l_rec.pep_attribute7                   := p_pep_attribute7;
856   l_rec.pep_attribute8                   := p_pep_attribute8;
857   l_rec.pep_attribute9                   := p_pep_attribute9;
858   l_rec.pep_attribute10                  := p_pep_attribute10;
859   l_rec.pep_attribute11                  := p_pep_attribute11;
860   l_rec.pep_attribute12                  := p_pep_attribute12;
861   l_rec.pep_attribute13                  := p_pep_attribute13;
862   l_rec.pep_attribute14                  := p_pep_attribute14;
863   l_rec.pep_attribute15                  := p_pep_attribute15;
864   l_rec.pep_attribute16                  := p_pep_attribute16;
865   l_rec.pep_attribute17                  := p_pep_attribute17;
866   l_rec.pep_attribute18                  := p_pep_attribute18;
867   l_rec.pep_attribute19                  := p_pep_attribute19;
868   l_rec.pep_attribute20                  := p_pep_attribute20;
869   l_rec.pep_attribute21                  := p_pep_attribute21;
870   l_rec.pep_attribute22                  := p_pep_attribute22;
871   l_rec.pep_attribute23                  := p_pep_attribute23;
872   l_rec.pep_attribute24                  := p_pep_attribute24;
873   l_rec.pep_attribute25                  := p_pep_attribute25;
874   l_rec.pep_attribute26                  := p_pep_attribute26;
875   l_rec.pep_attribute27                  := p_pep_attribute27;
876   l_rec.pep_attribute28                  := p_pep_attribute28;
877   l_rec.pep_attribute29                  := p_pep_attribute29;
878   l_rec.pep_attribute30                  := p_pep_attribute30;
879   l_rec.request_id                       := p_request_id;
880   l_rec.program_application_id           := p_program_application_id;
881   l_rec.program_id                       := p_program_id;
882   l_rec.program_update_date              := p_program_update_date;
883   l_rec.object_version_number            := p_object_version_number;
884   --
885   -- Return the plsql record structure.
886   --
887   hr_utility.set_location(' Leaving:'||l_proc, 10);
888   Return(l_rec);
889 --
890 End convert_args;
891 --
892 end ben_pep_shd;