DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_PEP_UPD

Source


1 Package Body ben_pep_upd 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_upd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |----------------------------< dt_update_dml >-----------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 --   This procedure controls the execution of dml from the datetrack mode
17 --   of CORRECTION only. It is important to note that the object version
18 --   number is only increment by 1 because the datetrack correction is
19 --   soley for one datetracked row.
20 --   This procedure controls the actual dml update logic. The functions of this
21 --   procedure are as follows:
22 --   1) Get the next object_version_number.
23 --   2) To set and unset the g_api_dml status as required (as we are about to
24 --      perform dml).
25 --   3) To update the specified row in the schema using the primary key in
26 --      the predicates.
27 --   4) To trap any constraint violations that may have occurred.
28 --   5) To raise any other errors.
29 --
30 -- Prerequisites:
31 --   This is an internal private procedure which must be called from the
32 --   update_dml procedure.
33 --
34 -- In Parameters:
35 --   A Pl/Sql record structre.
36 --
37 -- Post Success:
38 --   The specified row will be updated in the schema.
39 --
40 -- Post Failure:
41 --   On the update dml failure it is important to note that we always reset the
42 --   g_api_dml status to false.
43 --   If a check or unique integrity constraint violation is raised the
44 --   constraint_error procedure will be called.
45 --   If any other error is reported, the error will be raised after the
46 --   g_api_dml status is reset.
47 --
48 -- Developer Implementation Notes:
49 --   The update 'set' arguments list should be modified if any of your
50 --   attributes are not updateable.
51 --
52 -- Access Status:
53 --   Internal Row Handler Use Only.
54 --
55 -- {End Of Comments}
56 -- ----------------------------------------------------------------------------
57 Procedure dt_update_dml
58     (p_rec              in out nocopy ben_pep_shd.g_rec_type,
59      p_effective_date     in    date,
60      p_datetrack_mode     in    varchar2,
61      p_validation_start_date in    date,
62      p_validation_end_date     in    date) is
63 --
64   l_proc    varchar2(72) := g_package||'dt_update_dml';
65 --
66 Begin
67   hr_utility.set_location('Entering:'||l_proc, 5);
68   --
69   If (p_datetrack_mode = 'CORRECTION') then
70     hr_utility.set_location(l_proc, 10);
71     --
72     -- Because we are updating a row we must get the next object
73     -- version number.
74     --
75     p_rec.object_version_number :=
76       dt_api.get_object_version_number
77       (p_base_table_name    => 'ben_elig_per_f',
78        p_base_key_column    => 'elig_per_id',
79        p_base_key_value    => p_rec.elig_per_id);
80     --
81     ben_pep_shd.g_api_dml := true;  -- Set the api dml status
82     --
83     -- Update the ben_elig_per_f Row
84     --
85     update  ben_elig_per_f
86     set
87     elig_per_id                     = p_rec.elig_per_id,
88     business_group_id               = p_rec.business_group_id,
89     pl_id                           = p_rec.pl_id,
90     pgm_id                          = p_rec.pgm_id,
91     plip_id                         = p_rec.plip_id,
92     ptip_id                         = p_rec.ptip_id,
93     ler_id                          = p_rec.ler_id,
94     person_id                       = p_rec.person_id,
95     per_in_ler_id                       = p_rec.per_in_ler_id,
96     dpnt_othr_pl_cvrd_rl_flag       = p_rec.dpnt_othr_pl_cvrd_rl_flag,
97     prtn_ovridn_thru_dt             = p_rec.prtn_ovridn_thru_dt,
98     pl_key_ee_flag                  = p_rec.pl_key_ee_flag,
99     pl_hghly_compd_flag             = p_rec.pl_hghly_compd_flag,
100     elig_flag                       = p_rec.elig_flag,
101     comp_ref_amt                    = p_rec.comp_ref_amt,
102     cmbn_age_n_los_val              = p_rec.cmbn_age_n_los_val,
103     comp_ref_uom                    = p_rec.comp_ref_uom,
104     age_val                         = p_rec.age_val,
105     los_val                         = p_rec.los_val,
106     prtn_end_dt                     = p_rec.prtn_end_dt,
107     prtn_strt_dt                    = p_rec.prtn_strt_dt,
108     wait_perd_cmpltn_dt             = p_rec.wait_perd_cmpltn_dt,
109     wait_perd_strt_dt               = p_rec.wait_perd_strt_dt,
110     wv_ctfn_typ_cd                  = p_rec.wv_ctfn_typ_cd,
111     hrs_wkd_val                     = p_rec.hrs_wkd_val,
112     hrs_wkd_bndry_perd_cd           = p_rec.hrs_wkd_bndry_perd_cd,
113     prtn_ovridn_flag                = p_rec.prtn_ovridn_flag,
114     no_mx_prtn_ovrid_thru_flag      = p_rec.no_mx_prtn_ovrid_thru_flag,
115     prtn_ovridn_rsn_cd              = p_rec.prtn_ovridn_rsn_cd,
116     age_uom                         = p_rec.age_uom,
117     los_uom                         = p_rec.los_uom,
118     ovrid_svc_dt                    = p_rec.ovrid_svc_dt,
119     inelg_rsn_cd                    = p_rec.inelg_rsn_cd,
120     frz_los_flag                    = p_rec.frz_los_flag,
121     frz_age_flag                    = p_rec.frz_age_flag,
122     frz_cmp_lvl_flag                = p_rec.frz_cmp_lvl_flag,
123     frz_pct_fl_tm_flag              = p_rec.frz_pct_fl_tm_flag,
124     frz_hrs_wkd_flag                = p_rec.frz_hrs_wkd_flag,
125     frz_comb_age_and_los_flag       = p_rec.frz_comb_age_and_los_flag,
126     dstr_rstcn_flag                 = p_rec.dstr_rstcn_flag,
127     pct_fl_tm_val                   = p_rec.pct_fl_tm_val,
128     wv_prtn_rsn_cd                  = p_rec.wv_prtn_rsn_cd,
129     pl_wvd_flag                     = p_rec.pl_wvd_flag,
130     rt_comp_ref_amt                 = p_rec.rt_comp_ref_amt,
131     rt_cmbn_age_n_los_val           = p_rec.rt_cmbn_age_n_los_val,
132     rt_comp_ref_uom                 = p_rec.rt_comp_ref_uom,
133     rt_age_val                      = p_rec.rt_age_val,
134     rt_los_val                      = p_rec.rt_los_val,
135     rt_hrs_wkd_val                  = p_rec.rt_hrs_wkd_val,
136     rt_hrs_wkd_bndry_perd_cd        = p_rec.rt_hrs_wkd_bndry_perd_cd,
137     rt_age_uom                      = p_rec.rt_age_uom,
138     rt_los_uom                      = p_rec.rt_los_uom,
139     rt_pct_fl_tm_val                = p_rec.rt_pct_fl_tm_val,
140     rt_frz_los_flag                 = p_rec.rt_frz_los_flag,
141     rt_frz_age_flag                 = p_rec.rt_frz_age_flag,
142     rt_frz_cmp_lvl_flag             = p_rec.rt_frz_cmp_lvl_flag,
143     rt_frz_pct_fl_tm_flag           = p_rec.rt_frz_pct_fl_tm_flag,
144     rt_frz_hrs_wkd_flag             = p_rec.rt_frz_hrs_wkd_flag,
145     rt_frz_comb_age_and_los_flag    = p_rec.rt_frz_comb_age_and_los_flag,
146     once_r_cntug_cd                 = p_rec.once_r_cntug_cd,
147     pl_ordr_num                     = p_rec.pl_ordr_num,
148     plip_ordr_num                   = p_rec.plip_ordr_num,
149     ptip_ordr_num                   = p_rec.ptip_ordr_num,
150     pep_attribute_category          = p_rec.pep_attribute_category,
151     pep_attribute1                  = p_rec.pep_attribute1,
152     pep_attribute2                  = p_rec.pep_attribute2,
153     pep_attribute3                  = p_rec.pep_attribute3,
154     pep_attribute4                  = p_rec.pep_attribute4,
155     pep_attribute5                  = p_rec.pep_attribute5,
156     pep_attribute6                  = p_rec.pep_attribute6,
157     pep_attribute7                  = p_rec.pep_attribute7,
158     pep_attribute8                  = p_rec.pep_attribute8,
159     pep_attribute9                  = p_rec.pep_attribute9,
160     pep_attribute10                 = p_rec.pep_attribute10,
161     pep_attribute11                 = p_rec.pep_attribute11,
162     pep_attribute12                 = p_rec.pep_attribute12,
163     pep_attribute13                 = p_rec.pep_attribute13,
164     pep_attribute14                 = p_rec.pep_attribute14,
165     pep_attribute15                 = p_rec.pep_attribute15,
166     pep_attribute16                 = p_rec.pep_attribute16,
167     pep_attribute17                 = p_rec.pep_attribute17,
168     pep_attribute18                 = p_rec.pep_attribute18,
169     pep_attribute19                 = p_rec.pep_attribute19,
170     pep_attribute20                 = p_rec.pep_attribute20,
171     pep_attribute21                 = p_rec.pep_attribute21,
172     pep_attribute22                 = p_rec.pep_attribute22,
173     pep_attribute23                 = p_rec.pep_attribute23,
174     pep_attribute24                 = p_rec.pep_attribute24,
175     pep_attribute25                 = p_rec.pep_attribute25,
176     pep_attribute26                 = p_rec.pep_attribute26,
177     pep_attribute27                 = p_rec.pep_attribute27,
178     pep_attribute28                 = p_rec.pep_attribute28,
179     pep_attribute29                 = p_rec.pep_attribute29,
180     pep_attribute30                 = p_rec.pep_attribute30,
181     request_id                      = p_rec.request_id,
182     program_application_id          = p_rec.program_application_id,
183     program_id                      = p_rec.program_id,
184     program_update_date             = p_rec.program_update_date,
185     object_version_number           = p_rec.object_version_number
186     where   elig_per_id = p_rec.elig_per_id
187     and     effective_start_date = p_validation_start_date
188     and     effective_end_date   = p_validation_end_date;
189     --
190     ben_pep_shd.g_api_dml := false;   -- Unset the api dml status
191     --
192     -- Set the effective start and end dates
193     --
194     p_rec.effective_start_date := p_validation_start_date;
195     p_rec.effective_end_date   := p_validation_end_date;
196   End If;
197 --
198 hr_utility.set_location(' Leaving:'||l_proc, 15);
199 Exception
200   When hr_api.check_integrity_violated Then
201     -- A check constraint has been violated
202     ben_pep_shd.g_api_dml := false;   -- Unset the api dml status
203     ben_pep_shd.constraint_error
204       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
205   When hr_api.unique_integrity_violated Then
206     -- Unique integrity has been violated
207     ben_pep_shd.g_api_dml := false;   -- Unset the api dml status
208     ben_pep_shd.constraint_error
209       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
210   When Others Then
211     ben_pep_shd.g_api_dml := false;   -- Unset the api dml status
212     Raise;
213 End dt_update_dml;
214 --
215 -- ----------------------------------------------------------------------------
216 -- |------------------------------< update_dml >------------------------------|
217 -- ----------------------------------------------------------------------------
218 -- {Start Of Comments}
219 --
220 -- Description:
221 --   This procedure calls the dt_update_dml control logic which handles
222 --   the actual datetrack dml.
223 --
224 -- Prerequisites:
225 --   This is an internal private procedure which must be called from the upd
226 --   procedure.
227 --
228 -- In Parameters:
229 --   A Pl/Sql record structre.
230 --
231 -- Post Success:
232 --   Processing contines.
233 --
234 -- Post Failure:
235 --   No specific error handling is required within this procedure.
236 --
237 -- Developer Implementation Notes:
238 --   The update 'set' arguments list should be modified if any of your
239 --   attributes are not updateable.
240 --
241 -- Access Status:
242 --   Internal Row Handler Use Only.
243 --
244 -- {End Of Comments}
245 -- ----------------------------------------------------------------------------
246 Procedure update_dml
247     (p_rec              in out nocopy ben_pep_shd.g_rec_type,
248      p_effective_date     in    date,
249      p_datetrack_mode     in    varchar2,
250      p_validation_start_date in    date,
251      p_validation_end_date     in    date) is
252 --
253   l_proc    varchar2(72) := g_package||'update_dml';
254 --
255 Begin
256   hr_utility.set_location('Entering:'||l_proc, 5);
257   --
258   dt_update_dml(p_rec            => p_rec,
259         p_effective_date    => p_effective_date,
260         p_datetrack_mode    => p_datetrack_mode,
261                p_validation_start_date    => p_validation_start_date,
262         p_validation_end_date    => p_validation_end_date);
263   --
264   hr_utility.set_location(' Leaving:'||l_proc, 10);
265 End update_dml;
266 --
267 -- ----------------------------------------------------------------------------
268 -- |----------------------------< dt_pre_update >-----------------------------|
269 -- ----------------------------------------------------------------------------
270 -- {Start Of Comments}
271 --
272 -- Description:
273 --   The dt_pre_update procedure controls the execution
274 --   of dml for the datetrack modes of: UPDATE, UPDATE_OVERRIDE
275 --   and UPDATE_CHANGE_INSERT only. The execution required is as
276 --   follows:
277 --
278 --   1) Providing the datetrack update mode is not 'CORRECTION'
279 --      then set the effective end date of the current row (this
280 --      will be the validation_start_date - 1).
281 --   2) If the datetrack mode is 'UPDATE_OVERRIDE' then call the
282 --      corresponding delete_dml process to delete any future rows
283 --      where the effective_start_date is greater than or equal to
284 --    the validation_start_date.
285 --   3) Call the insert_dml process to insert the new updated row
286 --      details.
287 --
288 -- Prerequisites:
289 --   This is an internal procedure which is called from the
290 --   pre_update procedure.
291 --
292 -- In Parameters:
293 --
294 -- Post Success:
295 --   Processing continues.
296 --
297 -- Post Failure:
298 --   If an error has occurred, an error message and exception will be raised
299 --   but not handled.
300 --
301 -- Developer Implementation Notes:
302 --   This is an internal procedure which is required by Datetrack. Don't
303 --   remove or modify.
304 --
305 -- Access Status:
306 --   Internal Row Handler Use Only.
307 --
308 -- {End Of Comments}
309 -- ----------------------------------------------------------------------------
310 Procedure dt_pre_update
311     (p_rec              in out nocopy    ben_pep_shd.g_rec_type,
312      p_effective_date     in    date,
313      p_datetrack_mode     in    varchar2,
314      p_validation_start_date in    date,
315      p_validation_end_date     in    date) is
316 --
317   l_proc             varchar2(72) := g_package||'dt_pre_update';
318   l_dummy_version_number number;
319 --
320 Begin
321   hr_utility.set_location('Entering:'||l_proc, 5);
322   If (p_datetrack_mode <> 'CORRECTION') then
323     hr_utility.set_location(l_proc, 10);
324     --
325     -- Update the current effective end date
326     --
327     ben_pep_shd.upd_effective_end_date
328      (p_effective_date           => p_effective_date,
329       p_base_key_value           => p_rec.elig_per_id,
330       p_new_effective_end_date => (p_validation_start_date - 1),
331       p_validation_start_date  => p_validation_start_date,
332       p_validation_end_date    => p_validation_end_date,
333       p_object_version_number  => l_dummy_version_number);
334     --
335     If (p_datetrack_mode = 'UPDATE_OVERRIDE') then
336       hr_utility.set_location(l_proc, 15);
337       --
338       -- As the datetrack mode is 'UPDATE_OVERRIDE' then we must
339       -- delete any future rows
340       --
341       ben_pep_del.delete_dml
342         (p_rec             => p_rec,
343      p_effective_date     => p_effective_date,
344      p_datetrack_mode     => p_datetrack_mode,
345      p_validation_start_date => p_validation_start_date,
346      p_validation_end_date   => p_validation_end_date);
347     End If;
348     hr_utility.set_location(l_proc, 20);
349     --
350     -- We must now insert the updated row
351     --
352     ben_pep_ins.insert_dml
353       (p_rec            => p_rec,
354        p_effective_date        => p_effective_date,
355        p_datetrack_mode        => p_datetrack_mode,
356        p_validation_start_date    => p_validation_start_date,
357        p_validation_end_date    => p_validation_end_date);
358   End If;
359   hr_utility.set_location(' Leaving:'||l_proc, 20);
360 End dt_pre_update;
361 --
362 -- ----------------------------------------------------------------------------
363 -- |------------------------------< pre_update >------------------------------|
364 -- ----------------------------------------------------------------------------
365 -- {Start Of Comments}
366 --
367 -- Description:
368 --   This private procedure contains any processing which is required before
369 --   the update dml.
370 --
371 -- Prerequisites:
372 --   This is an internal procedure which is called from the upd procedure.
373 --
374 -- In Parameters:
375 --   A Pl/Sql record structre.
376 --
377 -- Post Success:
378 --   Processing continues.
379 --
380 -- Post Failure:
381 --   If an error has occurred, an error message and exception will be raised
382 --   but not handled.
383 --
384 -- Developer Implementation Notes:
385 --   Any pre-processing required before the update dml is issued should be
386 --   coded within this procedure. It is important to note that any 3rd party
387 --   maintenance should be reviewed before placing in this procedure. The call
388 --   to the dt_update_dml procedure should NOT be removed.
389 --
390 -- Access Status:
391 --   Internal Row Handler Use Only.
392 --
393 -- {End Of Comments}
394 -- ----------------------------------------------------------------------------
395 Procedure pre_update
396     (p_rec              in out nocopy    ben_pep_shd.g_rec_type,
397      p_effective_date     in    date,
398      p_datetrack_mode     in    varchar2,
399      p_validation_start_date in    date,
400      p_validation_end_date     in    date) is
401 --
402   l_proc    varchar2(72) := g_package||'pre_update';
403 --
404 Begin
405   hr_utility.set_location('Entering:'||l_proc, 5);
406   --
407   --
408   --
409   dt_pre_update
410     (p_rec              => p_rec,
411      p_effective_date         => p_effective_date,
412      p_datetrack_mode         => p_datetrack_mode,
413      p_validation_start_date => p_validation_start_date,
414      p_validation_end_date   => p_validation_end_date);
415   --
416   hr_utility.set_location(' Leaving:'||l_proc, 10);
417 End pre_update;
418 --
419 -- ----------------------------------------------------------------------------
420 -- |-----------------------------< post_update >------------------------------|
421 -- ----------------------------------------------------------------------------
422 -- {Start Of Comments}
423 --
424 -- Description:
425 --   This private procedure contains any processing which is required after the
426 --   update dml.
427 --
428 -- Prerequisites:
429 --   This is an internal procedure which is called from the upd procedure.
430 --
431 -- In Parameters:
432 --   A Pl/Sql record structre.
433 --
434 -- Post Success:
435 --   Processing continues.
436 --
437 -- Post Failure:
438 --   If an error has occurred, an error message and exception will be raised
439 --   but not handled.
440 --
441 -- Developer Implementation Notes:
442 --   Any post-processing required after the update dml is issued should be
443 --   coded within this procedure. It is important to note that any 3rd party
444 --   maintenance should be reviewed before placing in this procedure.
445 --
446 -- Access Status:
447 --   Internal Row Handler Use Only.
448 --
449 -- {End Of Comments}
450 -- ----------------------------------------------------------------------------
451 Procedure post_update
452     (p_rec              in ben_pep_shd.g_rec_type,
453      p_effective_date     in date,
454      p_datetrack_mode     in varchar2,
455      p_validation_start_date in date,
456      p_validation_end_date     in date) is
457 --
458   l_proc    varchar2(72) := g_package||'post_update';
459 --
460 Begin
461   hr_utility.set_location('Entering:'||l_proc, 5);
462 
463 ben_pep_rku.after_update
464   (
465  p_elig_per_id                    => p_rec.elig_per_id,
466  p_effective_start_date           => p_rec.effective_start_date,
467  p_effective_end_date             => p_rec.effective_end_date,
468  p_business_group_id              => p_rec.business_group_id,
469  p_pl_id                          => p_rec.pl_id,
470  p_pgm_id                         => p_rec.pgm_id,
471  p_plip_id                        => p_rec.plip_id,
472  p_ptip_id                        => p_rec.ptip_id,
473  p_ler_id                         => p_rec.ler_id,
474  p_person_id                      => p_rec.person_id,
475  p_per_in_ler_id                      => p_rec.per_in_ler_id,
476  p_dpnt_othr_pl_cvrd_rl_flag      => p_rec.dpnt_othr_pl_cvrd_rl_flag,
477  p_prtn_ovridn_thru_dt            => p_rec.prtn_ovridn_thru_dt,
478  p_pl_key_ee_flag                 => p_rec.pl_key_ee_flag,
479  p_pl_hghly_compd_flag            => p_rec.pl_hghly_compd_flag,
480  p_elig_flag                      => p_rec.elig_flag,
481  p_comp_ref_amt                   => p_rec.comp_ref_amt,
482  p_cmbn_age_n_los_val             => p_rec.cmbn_age_n_los_val,
483  p_comp_ref_uom                   => p_rec.comp_ref_uom,
484  p_age_val                        => p_rec.age_val,
485  p_los_val                        => p_rec.los_val,
486  p_prtn_end_dt                    => p_rec.prtn_end_dt,
487  p_prtn_strt_dt                   => p_rec.prtn_strt_dt,
488  p_wait_perd_cmpltn_dt            => p_rec.wait_perd_cmpltn_dt,
489  p_wait_perd_strt_dt              => p_rec.wait_perd_strt_dt,
490  p_wv_ctfn_typ_cd                 => p_rec.wv_ctfn_typ_cd,
491  p_hrs_wkd_val                    => p_rec.hrs_wkd_val,
492  p_hrs_wkd_bndry_perd_cd          => p_rec.hrs_wkd_bndry_perd_cd,
493  p_prtn_ovridn_flag               => p_rec.prtn_ovridn_flag,
494  p_no_mx_prtn_ovrid_thru_flag     => p_rec.no_mx_prtn_ovrid_thru_flag,
495  p_prtn_ovridn_rsn_cd             => p_rec.prtn_ovridn_rsn_cd,
496  p_age_uom                        => p_rec.age_uom,
497  p_los_uom                        => p_rec.los_uom,
498  p_ovrid_svc_dt                   => p_rec.ovrid_svc_dt,
499  p_inelg_rsn_cd                   => p_rec.inelg_rsn_cd,
500  p_frz_los_flag                   => p_rec.frz_los_flag,
501  p_frz_age_flag                   => p_rec.frz_age_flag,
502  p_frz_cmp_lvl_flag               => p_rec.frz_cmp_lvl_flag,
503  p_frz_pct_fl_tm_flag             => p_rec.frz_pct_fl_tm_flag,
504  p_frz_hrs_wkd_flag               => p_rec.frz_hrs_wkd_flag,
505  p_frz_comb_age_and_los_flag      => p_rec.frz_comb_age_and_los_flag,
506  p_dstr_rstcn_flag                => p_rec.dstr_rstcn_flag,
507  p_pct_fl_tm_val                  => p_rec.pct_fl_tm_val,
508  p_wv_prtn_rsn_cd                 => p_rec.wv_prtn_rsn_cd,
509  p_pl_wvd_flag                    => p_rec.pl_wvd_flag,
510  p_rt_comp_ref_amt                => p_rec.rt_comp_ref_amt,
511  p_rt_cmbn_age_n_los_val          => p_rec.rt_cmbn_age_n_los_val,
512  p_rt_comp_ref_uom                => p_rec.rt_comp_ref_uom,
513  p_rt_age_val                     => p_rec.rt_age_val,
514  p_rt_los_val                     => p_rec.rt_los_val,
515  p_rt_hrs_wkd_val                 => p_rec.rt_hrs_wkd_val,
516  p_rt_hrs_wkd_bndry_perd_cd       => p_rec.rt_hrs_wkd_bndry_perd_cd,
517  p_rt_age_uom                     => p_rec.rt_age_uom,
518  p_rt_los_uom                     => p_rec.rt_los_uom,
519  p_rt_pct_fl_tm_val               => p_rec.rt_pct_fl_tm_val,
520  p_rt_frz_los_flag                => p_rec.rt_frz_los_flag,
521  p_rt_frz_age_flag                => p_rec.rt_frz_age_flag,
522  p_rt_frz_cmp_lvl_flag            => p_rec.rt_frz_cmp_lvl_flag,
523  p_rt_frz_pct_fl_tm_flag          => p_rec.rt_frz_pct_fl_tm_flag,
524  p_rt_frz_hrs_wkd_flag            => p_rec.rt_frz_hrs_wkd_flag,
525  p_rt_frz_comb_age_and_los_flag   => p_rec.rt_frz_comb_age_and_los_flag,
526  p_once_r_cntug_cd                => p_rec.once_r_cntug_cd,
527  p_pl_ordr_num                    => p_rec.pl_ordr_num,
528  p_plip_ordr_num                  => p_rec.plip_ordr_num,
529  p_ptip_ordr_num                  => p_rec.ptip_ordr_num,
530  p_pep_attribute_category         => p_rec.pep_attribute_category,
531  p_pep_attribute1                 => p_rec.pep_attribute1,
532  p_pep_attribute2                 => p_rec.pep_attribute2,
533  p_pep_attribute3                 => p_rec.pep_attribute3,
534  p_pep_attribute4                 => p_rec.pep_attribute4,
535  p_pep_attribute5                 => p_rec.pep_attribute5,
536  p_pep_attribute6                 => p_rec.pep_attribute6,
537  p_pep_attribute7                 => p_rec.pep_attribute7,
538  p_pep_attribute8                 => p_rec.pep_attribute8,
539  p_pep_attribute9                 => p_rec.pep_attribute9,
540  p_pep_attribute10                => p_rec.pep_attribute10,
541  p_pep_attribute11                => p_rec.pep_attribute11,
542  p_pep_attribute12                => p_rec.pep_attribute12,
543  p_pep_attribute13                => p_rec.pep_attribute13,
544  p_pep_attribute14                => p_rec.pep_attribute14,
545  p_pep_attribute15                => p_rec.pep_attribute15,
546  p_pep_attribute16                => p_rec.pep_attribute16,
547  p_pep_attribute17                => p_rec.pep_attribute17,
548  p_pep_attribute18                => p_rec.pep_attribute18,
549  p_pep_attribute19                => p_rec.pep_attribute19,
550  p_pep_attribute20                => p_rec.pep_attribute20,
551  p_pep_attribute21                => p_rec.pep_attribute21,
552  p_pep_attribute22                => p_rec.pep_attribute22,
553  p_pep_attribute23                => p_rec.pep_attribute23,
554  p_pep_attribute24                => p_rec.pep_attribute24,
555  p_pep_attribute25                => p_rec.pep_attribute25,
556  p_pep_attribute26                => p_rec.pep_attribute26,
557  p_pep_attribute27                => p_rec.pep_attribute27,
558  p_pep_attribute28                => p_rec.pep_attribute28,
559  p_pep_attribute29                => p_rec.pep_attribute29,
560  p_pep_attribute30                => p_rec.pep_attribute30,
561  p_request_id                     => p_rec.request_id,
562  p_program_application_id         => p_rec.program_application_id,
563  p_program_id                     => p_rec.program_id,
564  p_program_update_date            => p_rec.program_update_date,
565  p_object_version_number          => p_rec.object_version_number,
566  p_effective_date                 => p_effective_date,
567  p_datetrack_mode                 => p_datetrack_mode,
568  p_validation_start_date          => p_validation_start_date,
569  p_validation_end_date            => p_validation_end_date,
570  p_effective_start_date_o         => ben_pep_shd.g_old_rec.effective_start_date,
571  p_effective_end_date_o           => ben_pep_shd.g_old_rec.effective_end_date,
572  p_business_group_id_o            => ben_pep_shd.g_old_rec.business_group_id,
573  p_pl_id_o                        => ben_pep_shd.g_old_rec.pl_id,
574  p_pgm_id_o                       => ben_pep_shd.g_old_rec.pgm_id,
575  p_plip_id_o                      => ben_pep_shd.g_old_rec.plip_id,
576  p_ptip_id_o                      => ben_pep_shd.g_old_rec.ptip_id,
577  p_ler_id_o                       => ben_pep_shd.g_old_rec.ler_id,
578  p_person_id_o                    => ben_pep_shd.g_old_rec.person_id,
579  p_per_in_ler_id_o                    => ben_pep_shd.g_old_rec.per_in_ler_id,
580  p_dpnt_othr_pl_cvrd_rl_flag_o    => ben_pep_shd.g_old_rec.dpnt_othr_pl_cvrd_rl_flag,
581  p_prtn_ovridn_thru_dt_o          => ben_pep_shd.g_old_rec.prtn_ovridn_thru_dt,
582  p_pl_key_ee_flag_o               => ben_pep_shd.g_old_rec. pl_key_ee_flag,
583  p_pl_hghly_compd_flag_o          => ben_pep_shd.g_old_rec.pl_hghly_compd_flag,
584  p_elig_flag_o                    => ben_pep_shd.g_old_rec.elig_flag,
585  p_comp_ref_amt_o                 => ben_pep_shd.g_old_rec. comp_ref_amt,
586  p_cmbn_age_n_los_val_o           => ben_pep_shd.g_old_rec. cmbn_age_n_los_val,
587  p_comp_ref_uom_o                 => ben_pep_shd.g_old_rec. comp_ref_uom,
588  p_age_val_o                      => ben_pep_shd.g_old_rec.age_val,
589  p_los_val_o                      => ben_pep_shd.g_old_rec.los_val,
590  p_prtn_end_dt_o                  => ben_pep_shd.g_old_rec.prtn_end_dt,
591  p_prtn_strt_dt_o                 => ben_pep_shd.g_old_rec.prtn_strt_dt,
592  p_wait_perd_cmpltn_dt_o          => ben_pep_shd.g_old_rec.wait_perd_cmpltn_dt,
593  p_wait_perd_strt_dt_o            => ben_pep_shd.g_old_rec.wait_perd_strt_dt,
594  p_wv_ctfn_typ_cd_o               => ben_pep_shd.g_old_rec. wv_ctfn_typ_cd,
595  p_hrs_wkd_val_o                  => ben_pep_shd.g_old_rec.hrs_wkd_val,
596  p_hrs_wkd_bndry_perd_cd_o        => ben_pep_shd.g_old_rec.hrs_wkd_bndry_perd_cd,
597  p_prtn_ovridn_flag_o             => ben_pep_shd.g_old_rec. prtn_ovridn_flag,
598  p_no_mx_prtn_ovrid_thru_flag_o   => ben_pep_shd.g_old_rec.no_mx_prtn_ovrid_thru_flag,
599  p_prtn_ovridn_rsn_cd_o           => ben_pep_shd.g_old_rec.prtn_ovridn_rsn_cd,
600  p_age_uom_o                      => ben_pep_shd.g_old_rec.age_uom,
601  p_los_uom_o                      => ben_pep_shd.g_old_rec.los_uom,
602  p_ovrid_svc_dt_o                 => ben_pep_shd.g_old_rec.ovrid_svc_dt,
603  p_inelg_rsn_cd_o                 => ben_pep_shd.g_old_rec.inelg_rsn_cd,
604  p_frz_los_flag_o                 => ben_pep_shd.g_old_rec.frz_los_flag,
605  p_frz_age_flag_o                 => ben_pep_shd.g_old_rec.frz_age_flag,
606  p_frz_cmp_lvl_flag_o             => ben_pep_shd.g_old_rec.frz_cmp_lvl_flag,
607  p_frz_pct_fl_tm_flag_o           => ben_pep_shd.g_old_rec.frz_pct_fl_tm_flag,
608  p_frz_hrs_wkd_flag_o             => ben_pep_shd.g_old_rec.frz_hrs_wkd_flag,
609  p_frz_comb_age_and_los_flag_o    => ben_pep_shd.g_old_rec.frz_comb_age_and_los_flag,
610  p_dstr_rstcn_flag_o              => ben_pep_shd.g_old_rec.dstr_rstcn_flag,
611  p_pct_fl_tm_val_o                => ben_pep_shd.g_old_rec.pct_fl_tm_val,
612  p_wv_prtn_rsn_cd_o               => ben_pep_shd.g_old_rec.wv_prtn_rsn_cd,
613  p_pl_wvd_flag_o                  => ben_pep_shd.g_old_rec.pl_wvd_flag,
614  p_rt_comp_ref_amt_o              => ben_pep_shd.g_old_rec.comp_ref_amt,
615  p_rt_cmbn_age_n_los_val_o        => ben_pep_shd.g_old_rec.cmbn_age_n_los_val,
616  p_rt_comp_ref_uom_o              => ben_pep_shd.g_old_rec.comp_ref_uom,
617  p_rt_age_val_o                   => ben_pep_shd.g_old_rec.rt_age_val,
618  p_rt_los_val_o                   => ben_pep_shd.g_old_rec.rt_los_val,
619  p_rt_hrs_wkd_val_o               => ben_pep_shd.g_old_rec.rt_hrs_wkd_val,
620  p_rt_hrs_wkd_bndry_perd_cd_o     => ben_pep_shd.g_old_rec.rt_hrs_wkd_bndry_perd_cd,
621  p_rt_age_uom_o                   => ben_pep_shd.g_old_rec.rt_age_uom,
622  p_rt_los_uom_o                   => ben_pep_shd.g_old_rec.rt_los_uom,
623  p_rt_pct_fl_tm_val_o             => ben_pep_shd.g_old_rec.rt_pct_fl_tm_val,
624  p_rt_frz_los_flag_o              => ben_pep_shd.g_old_rec.rt_frz_los_flag,
625  p_rt_frz_age_flag_o              => ben_pep_shd.g_old_rec.rt_frz_age_flag,
626  p_rt_frz_cmp_lvl_flag_o          => ben_pep_shd.g_old_rec.rt_frz_cmp_lvl_flag,
627  p_rt_frz_pct_fl_tm_flag_o        => ben_pep_shd.g_old_rec.rt_frz_pct_fl_tm_flag,
628  p_rt_frz_hrs_wkd_flag_o          => ben_pep_shd.g_old_rec.rt_frz_hrs_wkd_flag,
629  p_rt_frz_comb_age_and_los_fl_o   => ben_pep_shd.g_old_rec.rt_frz_comb_age_and_los_flag,
630  p_once_r_cntug_cd_o              => ben_pep_shd.g_old_rec.once_r_cntug_cd,
631  p_pl_ordr_num_o                  => ben_pep_shd.g_old_rec.pl_ordr_num,
632  p_plip_ordr_num_o                => ben_pep_shd.g_old_rec.plip_ordr_num,
633  p_ptip_ordr_num_o                => ben_pep_shd.g_old_rec.ptip_ordr_num,
634  p_pep_attribute_category_o       => ben_pep_shd.g_old_rec.pep_attribute_category,
635  p_pep_attribute1_o               => ben_pep_shd.g_old_rec.pep_attribute1,
636  p_pep_attribute2_o               => ben_pep_shd.g_old_rec.pep_attribute2,
637  p_pep_attribute3_o               => ben_pep_shd.g_old_rec.pep_attribute3,
638  p_pep_attribute4_o               => ben_pep_shd.g_old_rec.pep_attribute4,
639  p_pep_attribute5_o               => ben_pep_shd.g_old_rec.pep_attribute5,
640  p_pep_attribute6_o               => ben_pep_shd.g_old_rec.pep_attribute6,
641  p_pep_attribute7_o               => ben_pep_shd.g_old_rec.pep_attribute7,
642  p_pep_attribute8_o               => ben_pep_shd.g_old_rec.pep_attribute8,
643  p_pep_attribute9_o               => ben_pep_shd.g_old_rec.pep_attribute9,
644  p_pep_attribute10_o              => ben_pep_shd.g_old_rec.pep_attribute10,
645  p_pep_attribute11_o              => ben_pep_shd.g_old_rec.pep_attribute11,
646  p_pep_attribute12_o              => ben_pep_shd.g_old_rec.pep_attribute12,
647  p_pep_attribute13_o              => ben_pep_shd.g_old_rec.pep_attribute13,
648  p_pep_attribute14_o              => ben_pep_shd.g_old_rec.pep_attribute14,
649  p_pep_attribute15_o              => ben_pep_shd.g_old_rec.pep_attribute15,
650  p_pep_attribute16_o              => ben_pep_shd.g_old_rec.pep_attribute16,
651  p_pep_attribute17_o              => ben_pep_shd.g_old_rec.pep_attribute17,
652  p_pep_attribute18_o              => ben_pep_shd.g_old_rec.pep_attribute18,
653  p_pep_attribute19_o              => ben_pep_shd.g_old_rec.pep_attribute19,
654  p_pep_attribute20_o              => ben_pep_shd.g_old_rec.pep_attribute20,
655  p_pep_attribute21_o              => ben_pep_shd.g_old_rec.pep_attribute21,
656  p_pep_attribute22_o              => ben_pep_shd.g_old_rec.pep_attribute22,
657  p_pep_attribute23_o              => ben_pep_shd.g_old_rec.pep_attribute23,
658  p_pep_attribute24_o              => ben_pep_shd.g_old_rec.pep_attribute24,
659  p_pep_attribute25_o              => ben_pep_shd.g_old_rec.pep_attribute25,
660  p_pep_attribute26_o              => ben_pep_shd.g_old_rec.pep_attribute26,
661  p_pep_attribute27_o              => ben_pep_shd.g_old_rec.pep_attribute27,
662  p_pep_attribute28_o              => ben_pep_shd.g_old_rec.pep_attribute28,
663  p_pep_attribute29_o              => ben_pep_shd.g_old_rec.pep_attribute29,
664  p_pep_attribute30_o              => ben_pep_shd.g_old_rec.pep_attribute30,
665  p_request_id_o                   => ben_pep_shd.g_old_rec.request_id,
666  p_program_application_id_o       => ben_pep_shd.g_old_rec.program_application_id,
667  p_program_id_o                   => ben_pep_shd.g_old_rec.program_id,
668  p_program_update_date_o          => ben_pep_shd.g_old_rec.program_update_date,
669  p_object_version_number_o        => ben_pep_shd.g_old_rec.object_version_number);
670 
671 exception
672   when hr_api.cannot_find_prog_unit then
673     --
674     hr_api.cannot_find_prog_unit_error
675              (p_module_name => 'ben_elig_per_f',
676               p_hook_type => 'AU');
677 
678 End post_update;
679 --
680 -- ----------------------------------------------------------------------------
681 -- |-----------------------------< convert_defs >-----------------------------|
682 -- ----------------------------------------------------------------------------
683 -- {Start Of Comments}
684 --
685 -- Description:
686 --   The Convert_Defs procedure has one very important function:
687 --   It must return the record structure for the row with all system defaulted
688 --   values converted into its corresponding parameter value for update. When
689 --   we attempt to update a row through the Upd process , certain
690 --   parameters can be defaulted which enables flexibility in the calling of
691 --   the upd process (e.g. only attributes which need to be updated need to be
692 --   specified). For the upd process to determine which attributes
693 --   have NOT been specified we need to check if the parameter has a reserved
694 --   system default value. Therefore, for all parameters which have a
695 --   corresponding reserved system default mechanism specified we need to
696 --   check if a system default is being used. If a system default is being
697 --   used then we convert the defaulted value into its corresponding attribute
698 --   value held in the g_old_rec data structure.
699 --
700 -- Prerequisites:
701 --   This private function can only be called from the upd process.
702 --
703 -- In Parameters:
704 --   A Pl/Sql record structre.
705 --
706 -- Post Success:
707 --   The record structure will be returned with all system defaulted parameter
708 --   values converted into its current row attribute value.
709 --
710 -- Post Failure:
711 --   No direct error handling is required within this function. Any possible
712 --   errors within this procedure will be a PL/SQL value error due to conversion
713 
714 --   of datatypes or data lengths.
715 --
716 -- Developer Implementation Notes:
717 --   None.
718 --
719 -- Access Status:
720 --   Internal Row Handler Use Only.
721 --
722 -- {End Of Comments}
723 -- ----------------------------------------------------------------------------
724 Procedure convert_defs(p_rec in out nocopy ben_pep_shd.g_rec_type) is
725 --
726   l_proc  varchar2(72) := g_package||'convert_defs';
727 --
728 Begin
729   --
730   hr_utility.set_location('Entering:'||l_proc, 5);
731   --
732   -- We must now examine each argument value in the
733   -- p_rec plsql record structure
734   -- to see if a system default is being used. If a system default
735   -- is being used then we must set to the 'current' argument value.
736   --
737   If (p_rec.business_group_id = hr_api.g_number) then
738     p_rec.business_group_id :=
739     ben_pep_shd.g_old_rec.business_group_id;
740   End If;
741   If (p_rec.pl_id = hr_api.g_number) then
742     p_rec.pl_id :=
743     ben_pep_shd.g_old_rec.pl_id;
744   End If;
745   If (p_rec.pgm_id = hr_api.g_number) then
746     p_rec.pgm_id :=
747     ben_pep_shd.g_old_rec.pgm_id;
748   End If;
749   If (p_rec.plip_id = hr_api.g_number) then
750     p_rec.plip_id :=
751     ben_pep_shd.g_old_rec.plip_id;
752   End If;
753   If (p_rec.ptip_id = hr_api.g_number) then
754     p_rec.ptip_id :=
755     ben_pep_shd.g_old_rec.ptip_id;
756   End If;
757   If (p_rec.ler_id = hr_api.g_number) then
758     p_rec.ler_id :=
759     ben_pep_shd.g_old_rec.ler_id;
760   End If;
761   If (p_rec.person_id = hr_api.g_number) then
762     p_rec.person_id :=
763     ben_pep_shd.g_old_rec.person_id;
764   End If;
765   If (p_rec.per_in_ler_id = hr_api.g_number) then
766     p_rec.per_in_ler_id :=
767     ben_pep_shd.g_old_rec.per_in_ler_id;
768   End If;
769   If (p_rec.dpnt_othr_pl_cvrd_rl_flag = hr_api.g_varchar2) then
770     p_rec.dpnt_othr_pl_cvrd_rl_flag :=
771     ben_pep_shd.g_old_rec.dpnt_othr_pl_cvrd_rl_flag;
772   End If;
773   If (p_rec.prtn_ovridn_thru_dt = hr_api.g_date) then
774     p_rec.prtn_ovridn_thru_dt :=
775     ben_pep_shd.g_old_rec.prtn_ovridn_thru_dt;
776   End If;
777   If (p_rec.pl_key_ee_flag = hr_api.g_varchar2) then
778     p_rec.pl_key_ee_flag :=
779     ben_pep_shd.g_old_rec.pl_key_ee_flag;
780   End If;
781   If (p_rec.pl_hghly_compd_flag = hr_api.g_varchar2) then
782     p_rec.pl_hghly_compd_flag :=
783     ben_pep_shd.g_old_rec.pl_hghly_compd_flag;
784   End If;
785   If (p_rec.elig_flag = hr_api.g_varchar2) then
786     p_rec.elig_flag :=
787     ben_pep_shd.g_old_rec.elig_flag;
788   End If;
789   If (p_rec.comp_ref_amt = hr_api.g_number) then
790     p_rec.comp_ref_amt :=
791     ben_pep_shd.g_old_rec.comp_ref_amt;
792   End If;
793   If (p_rec.cmbn_age_n_los_val = hr_api.g_number) then
794     p_rec.cmbn_age_n_los_val :=
795     ben_pep_shd.g_old_rec.cmbn_age_n_los_val;
796   End If;
797   If (p_rec.comp_ref_uom = hr_api.g_varchar2) then
798     p_rec.comp_ref_uom :=
799     ben_pep_shd.g_old_rec.comp_ref_uom;
800   End If;
801   If (p_rec.age_val = hr_api.g_number) then
802     p_rec.age_val :=
803     ben_pep_shd.g_old_rec.age_val;
804   End If;
805   If (p_rec.los_val = hr_api.g_number) then
806     p_rec.los_val :=
807     ben_pep_shd.g_old_rec.los_val;
808   End If;
809   If (p_rec.prtn_end_dt = hr_api.g_date) then
810     p_rec.prtn_end_dt :=
811     ben_pep_shd.g_old_rec.prtn_end_dt;
812   End If;
813   If (p_rec.prtn_strt_dt = hr_api.g_date) then
814     p_rec.prtn_strt_dt :=
815     ben_pep_shd.g_old_rec.prtn_strt_dt;
816   End If;
817   If (p_rec.wait_perd_cmpltn_dt = hr_api.g_date) then
818     p_rec.wait_perd_cmpltn_dt :=
819     ben_pep_shd.g_old_rec.wait_perd_cmpltn_dt;
820   End If;
821 
822   If (p_rec.wait_perd_strt_dt  = hr_api.g_date) then
823     p_rec.wait_perd_strt_dt :=
824     ben_pep_shd.g_old_rec.wait_perd_strt_dt;
825   End If;
826   If (p_rec.wv_ctfn_typ_cd = hr_api.g_varchar2) then
827     p_rec.wv_ctfn_typ_cd :=
828     ben_pep_shd.g_old_rec.wv_ctfn_typ_cd;
829   End If;
830   If (p_rec.hrs_wkd_val = hr_api.g_number) then
831     p_rec.hrs_wkd_val :=
832     ben_pep_shd.g_old_rec.hrs_wkd_val;
833   End If;
834   If (p_rec.hrs_wkd_bndry_perd_cd = hr_api.g_varchar2) then
835     p_rec.hrs_wkd_bndry_perd_cd :=
836     ben_pep_shd.g_old_rec.hrs_wkd_bndry_perd_cd;
837   End If;
838   If (p_rec.prtn_ovridn_flag = hr_api.g_varchar2) then
839     p_rec.prtn_ovridn_flag :=
840     ben_pep_shd.g_old_rec.prtn_ovridn_flag;
841   End If;
842   If (p_rec.no_mx_prtn_ovrid_thru_flag = hr_api.g_varchar2) then
843     p_rec.no_mx_prtn_ovrid_thru_flag :=
844     ben_pep_shd.g_old_rec.no_mx_prtn_ovrid_thru_flag;
845   End If;
846   If (p_rec.prtn_ovridn_rsn_cd = hr_api.g_varchar2) then
847     p_rec.prtn_ovridn_rsn_cd :=
848     ben_pep_shd.g_old_rec.prtn_ovridn_rsn_cd;
849   End If;
850   If (p_rec.age_uom = hr_api.g_varchar2) then
851     p_rec.age_uom :=
852     ben_pep_shd.g_old_rec.age_uom;
853   End If;
854   If (p_rec.los_uom = hr_api.g_varchar2) then
855     p_rec.los_uom :=
856     ben_pep_shd.g_old_rec.los_uom;
857   End If;
858   If (p_rec.ovrid_svc_dt = hr_api.g_date) then
859     p_rec.ovrid_svc_dt :=
860     ben_pep_shd.g_old_rec.ovrid_svc_dt;
861   End If;
862   If (p_rec.inelg_rsn_cd = hr_api.g_varchar2) then
863     p_rec.inelg_rsn_cd :=
864     ben_pep_shd.g_old_rec.inelg_rsn_cd;
865   End If;
866   If (p_rec.frz_los_flag = hr_api.g_varchar2) then
867     p_rec.frz_los_flag :=
868     ben_pep_shd.g_old_rec.frz_los_flag;
869   End If;
870   If (p_rec.frz_age_flag = hr_api.g_varchar2) then
871     p_rec.frz_age_flag :=
872     ben_pep_shd.g_old_rec.frz_age_flag;
873   End If;
874   If (p_rec.frz_cmp_lvl_flag = hr_api.g_varchar2) then
875     p_rec.frz_cmp_lvl_flag :=
876     ben_pep_shd.g_old_rec.frz_cmp_lvl_flag;
877   End If;
878   If (p_rec.frz_pct_fl_tm_flag = hr_api.g_varchar2) then
879     p_rec.frz_pct_fl_tm_flag :=
880     ben_pep_shd.g_old_rec.frz_pct_fl_tm_flag;
881   End If;
882   If (p_rec.frz_hrs_wkd_flag = hr_api.g_varchar2) then
883     p_rec.frz_hrs_wkd_flag :=
884     ben_pep_shd.g_old_rec.frz_hrs_wkd_flag;
885   End If;
886   If (p_rec.frz_comb_age_and_los_flag = hr_api.g_varchar2) then
887     p_rec.frz_comb_age_and_los_flag :=
888     ben_pep_shd.g_old_rec.frz_comb_age_and_los_flag;
889   End If;
890   If (p_rec.dstr_rstcn_flag = hr_api.g_varchar2) then
891     p_rec.dstr_rstcn_flag :=
892     ben_pep_shd.g_old_rec.dstr_rstcn_flag;
893   End If;
894   If (p_rec.pct_fl_tm_val = hr_api.g_number) then
895     p_rec.pct_fl_tm_val :=
896     ben_pep_shd.g_old_rec.pct_fl_tm_val;
897   End If;
898   If (p_rec.wv_prtn_rsn_cd = hr_api.g_varchar2) then
899     p_rec.wv_prtn_rsn_cd :=
900     ben_pep_shd.g_old_rec.wv_prtn_rsn_cd;
901   End If;
902   If (p_rec.pl_wvd_flag = hr_api.g_varchar2) then
903     p_rec.pl_wvd_flag :=
904     ben_pep_shd.g_old_rec.pl_wvd_flag;
905   End If;
906   If (p_rec.rt_comp_ref_amt = hr_api.g_number) then
907     p_rec.rt_comp_ref_amt :=
908     ben_pep_shd.g_old_rec.rt_comp_ref_amt;
909   End If;
910   If (p_rec.rt_cmbn_age_n_los_val = hr_api.g_number) then
911     p_rec.rt_cmbn_age_n_los_val :=
912     ben_pep_shd.g_old_rec.rt_cmbn_age_n_los_val;
913   End If;
914   If (p_rec.rt_comp_ref_uom = hr_api.g_varchar2) then
915     p_rec.rt_comp_ref_uom :=
916     ben_pep_shd.g_old_rec.rt_comp_ref_uom;
917   End If;
918   If (p_rec.rt_age_val = hr_api.g_number) then
919     p_rec.rt_age_val :=
920     ben_pep_shd.g_old_rec.rt_age_val;
921   End If;
922   If (p_rec.rt_los_val = hr_api.g_number) then
923     p_rec.rt_los_val :=
924     ben_pep_shd.g_old_rec.rt_los_val;
925   End If;
926   If (p_rec.rt_hrs_wkd_val = hr_api.g_number) then
927     p_rec.rt_hrs_wkd_val :=
928     ben_pep_shd.g_old_rec.rt_hrs_wkd_val;
929   End If;
930   If (p_rec.rt_hrs_wkd_bndry_perd_cd = hr_api.g_varchar2) then
931     p_rec.rt_hrs_wkd_bndry_perd_cd :=
932     ben_pep_shd.g_old_rec.rt_hrs_wkd_bndry_perd_cd;
933   End If;
934   If (p_rec.rt_age_uom = hr_api.g_varchar2) then
935     p_rec.rt_age_uom :=
936     ben_pep_shd.g_old_rec.rt_age_uom;
937   End If;
938   If (p_rec.rt_los_uom = hr_api.g_varchar2) then
939     p_rec.rt_los_uom :=
940     ben_pep_shd.g_old_rec.rt_los_uom;
941   End If;
942   If (p_rec.rt_pct_fl_tm_val = hr_api.g_number) then
943     p_rec.rt_pct_fl_tm_val :=
944     ben_pep_shd.g_old_rec.rt_pct_fl_tm_val;
945   End If;
946   If (p_rec.rt_frz_los_flag = hr_api.g_varchar2) then
947     p_rec.rt_frz_los_flag :=
948     ben_pep_shd.g_old_rec.rt_frz_los_flag;
949   End If;
950   If (p_rec.rt_frz_age_flag = hr_api.g_varchar2) then
951     p_rec.rt_frz_age_flag :=
952     ben_pep_shd.g_old_rec.rt_frz_age_flag;
953   End If;
954   If (p_rec.rt_frz_cmp_lvl_flag = hr_api.g_varchar2) then
955     p_rec.rt_frz_cmp_lvl_flag :=
956     ben_pep_shd.g_old_rec.rt_frz_cmp_lvl_flag;
957   End If;
958   If (p_rec.rt_frz_pct_fl_tm_flag = hr_api.g_varchar2) then
959     p_rec.rt_frz_pct_fl_tm_flag :=
960     ben_pep_shd.g_old_rec.rt_frz_pct_fl_tm_flag;
961   End If;
962   If (p_rec.rt_frz_hrs_wkd_flag = hr_api.g_varchar2) then
963     p_rec.rt_frz_hrs_wkd_flag :=
964     ben_pep_shd.g_old_rec.rt_frz_hrs_wkd_flag;
965   End If;
966   If (p_rec.rt_frz_comb_age_and_los_flag = hr_api.g_varchar2) then
967     p_rec.rt_frz_comb_age_and_los_flag :=
968     ben_pep_shd.g_old_rec.rt_frz_comb_age_and_los_flag;
969   End If;
970   If (p_rec.once_r_cntug_cd = hr_api.g_varchar2) then
971     p_rec.once_r_cntug_cd :=
972     ben_pep_shd.g_old_rec.once_r_cntug_cd;
973   End If;
974   If (p_rec.pl_ordr_num = hr_api.g_number) then
975     p_rec.pl_ordr_num :=
976     ben_pep_shd.g_old_rec.pl_ordr_num;
977   End If;
978   If (p_rec.plip_ordr_num = hr_api.g_number) then
979     p_rec.plip_ordr_num :=
980     ben_pep_shd.g_old_rec.plip_ordr_num;
981   End If;
982   If (p_rec.ptip_ordr_num = hr_api.g_number) then
983     p_rec.ptip_ordr_num :=
984     ben_pep_shd.g_old_rec.ptip_ordr_num;
985   End If;
986   If (p_rec.pep_attribute_category = hr_api.g_varchar2) then
987     p_rec.pep_attribute_category :=
988     ben_pep_shd.g_old_rec.pep_attribute_category;
989   End If;
990   If (p_rec.pep_attribute1 = hr_api.g_varchar2) then
991     p_rec.pep_attribute1 :=
992     ben_pep_shd.g_old_rec.pep_attribute1;
993   End If;
994   If (p_rec.pep_attribute2 = hr_api.g_varchar2) then
995     p_rec.pep_attribute2 :=
996     ben_pep_shd.g_old_rec.pep_attribute2;
997   End If;
998   If (p_rec.pep_attribute3 = hr_api.g_varchar2) then
999     p_rec.pep_attribute3 :=
1000     ben_pep_shd.g_old_rec.pep_attribute3;
1001   End If;
1002   If (p_rec.pep_attribute4 = hr_api.g_varchar2) then
1003     p_rec.pep_attribute4 :=
1004     ben_pep_shd.g_old_rec.pep_attribute4;
1005   End If;
1006   If (p_rec.pep_attribute5 = hr_api.g_varchar2) then
1007     p_rec.pep_attribute5 :=
1008     ben_pep_shd.g_old_rec.pep_attribute5;
1009   End If;
1010   If (p_rec.pep_attribute6 = hr_api.g_varchar2) then
1011     p_rec.pep_attribute6 :=
1012     ben_pep_shd.g_old_rec.pep_attribute6;
1013   End If;
1014   If (p_rec.pep_attribute7 = hr_api.g_varchar2) then
1015     p_rec.pep_attribute7 :=
1016     ben_pep_shd.g_old_rec.pep_attribute7;
1017   End If;
1018   If (p_rec.pep_attribute8 = hr_api.g_varchar2) then
1019     p_rec.pep_attribute8 :=
1020     ben_pep_shd.g_old_rec.pep_attribute8;
1021   End If;
1022   If (p_rec.pep_attribute9 = hr_api.g_varchar2) then
1023     p_rec.pep_attribute9 :=
1024     ben_pep_shd.g_old_rec.pep_attribute9;
1025   End If;
1026   If (p_rec.pep_attribute10 = hr_api.g_varchar2) then
1027     p_rec.pep_attribute10 :=
1028     ben_pep_shd.g_old_rec.pep_attribute10;
1029   End If;
1030   If (p_rec.pep_attribute11 = hr_api.g_varchar2) then
1031     p_rec.pep_attribute11 :=
1032     ben_pep_shd.g_old_rec.pep_attribute11;
1033   End If;
1034   If (p_rec.pep_attribute12 = hr_api.g_varchar2) then
1035     p_rec.pep_attribute12 :=
1036     ben_pep_shd.g_old_rec.pep_attribute12;
1037   End If;
1038   If (p_rec.pep_attribute13 = hr_api.g_varchar2) then
1039     p_rec.pep_attribute13 :=
1040     ben_pep_shd.g_old_rec.pep_attribute13;
1041   End If;
1042   If (p_rec.pep_attribute14 = hr_api.g_varchar2) then
1043     p_rec.pep_attribute14 :=
1044     ben_pep_shd.g_old_rec.pep_attribute14;
1045   End If;
1046   If (p_rec.pep_attribute15 = hr_api.g_varchar2) then
1047     p_rec.pep_attribute15 :=
1048     ben_pep_shd.g_old_rec.pep_attribute15;
1049   End If;
1050   If (p_rec.pep_attribute16 = hr_api.g_varchar2) then
1051     p_rec.pep_attribute16 :=
1052     ben_pep_shd.g_old_rec.pep_attribute16;
1053   End If;
1054   If (p_rec.pep_attribute17 = hr_api.g_varchar2) then
1055     p_rec.pep_attribute17 :=
1056     ben_pep_shd.g_old_rec.pep_attribute17;
1057   End If;
1058   If (p_rec.pep_attribute18 = hr_api.g_varchar2) then
1059     p_rec.pep_attribute18 :=
1060     ben_pep_shd.g_old_rec.pep_attribute18;
1061   End If;
1062   If (p_rec.pep_attribute19 = hr_api.g_varchar2) then
1063     p_rec.pep_attribute19 :=
1064     ben_pep_shd.g_old_rec.pep_attribute19;
1065   End If;
1066   If (p_rec.pep_attribute20 = hr_api.g_varchar2) then
1067     p_rec.pep_attribute20 :=
1068     ben_pep_shd.g_old_rec.pep_attribute20;
1069   End If;
1070   If (p_rec.pep_attribute21 = hr_api.g_varchar2) then
1071     p_rec.pep_attribute21 :=
1072     ben_pep_shd.g_old_rec.pep_attribute21;
1073   End If;
1074   If (p_rec.pep_attribute22 = hr_api.g_varchar2) then
1075     p_rec.pep_attribute22 :=
1076     ben_pep_shd.g_old_rec.pep_attribute22;
1077   End If;
1078   If (p_rec.pep_attribute23 = hr_api.g_varchar2) then
1079     p_rec.pep_attribute23 :=
1080     ben_pep_shd.g_old_rec.pep_attribute23;
1081   End If;
1082   If (p_rec.pep_attribute24 = hr_api.g_varchar2) then
1083     p_rec.pep_attribute24 :=
1084     ben_pep_shd.g_old_rec.pep_attribute24;
1085   End If;
1086   If (p_rec.pep_attribute25 = hr_api.g_varchar2) then
1087     p_rec.pep_attribute25 :=
1088     ben_pep_shd.g_old_rec.pep_attribute25;
1089   End If;
1090   If (p_rec.pep_attribute26 = hr_api.g_varchar2) then
1091     p_rec.pep_attribute26 :=
1092     ben_pep_shd.g_old_rec.pep_attribute26;
1093   End If;
1094   If (p_rec.pep_attribute27 = hr_api.g_varchar2) then
1095     p_rec.pep_attribute27 :=
1096     ben_pep_shd.g_old_rec.pep_attribute27;
1097   End If;
1098   If (p_rec.pep_attribute28 = hr_api.g_varchar2) then
1099     p_rec.pep_attribute28 :=
1100     ben_pep_shd.g_old_rec.pep_attribute28;
1101   End If;
1102   If (p_rec.pep_attribute29 = hr_api.g_varchar2) then
1103     p_rec.pep_attribute29 :=
1104     ben_pep_shd.g_old_rec.pep_attribute29;
1105   End If;
1106   If (p_rec.pep_attribute30 = hr_api.g_varchar2) then
1107     p_rec.pep_attribute30 :=
1108     ben_pep_shd.g_old_rec.pep_attribute30;
1109   End If;
1110   If (p_rec.request_id = hr_api.g_number) then
1111     p_rec.request_id :=
1112     ben_pep_shd.g_old_rec.request_id;
1113   End If;
1114   If (p_rec.program_application_id = hr_api.g_number) then
1115     p_rec.program_application_id :=
1116     ben_pep_shd.g_old_rec.program_application_id;
1117   End If;
1118   If (p_rec.program_id = hr_api.g_number) then
1119     p_rec.program_id :=
1120     ben_pep_shd.g_old_rec.program_id;
1121   End If;
1122   If (p_rec.program_update_date = hr_api.g_date) then
1123     p_rec.program_update_date :=
1124     ben_pep_shd.g_old_rec.program_update_date;
1125   End If;
1126   --
1127   hr_utility.set_location(' Leaving:'||l_proc, 10);
1128 --
1129 End convert_defs;
1130 --
1131 -- ----------------------------------------------------------------------------
1132 -- |---------------------------------< upd >----------------------------------|
1133 -- ----------------------------------------------------------------------------
1134 Procedure upd
1135   (
1136   p_rec            in out nocopy     ben_pep_shd.g_rec_type,
1137   p_effective_date    in     date,
1138   p_datetrack_mode    in     varchar2
1139   ) is
1140 --
1141   l_proc            varchar2(72) := g_package||'upd';
1142   l_validation_start_date    date;
1143   l_validation_end_date        date;
1144 --
1145 Begin
1146   hr_utility.set_location('Entering:'||l_proc, 5);
1147   --
1148   -- Ensure that the DateTrack update mode is valid
1149   --
1150   dt_api.validate_dt_upd_mode(p_datetrack_mode => p_datetrack_mode);
1151   --
1152   -- We must lock the row which we need to update.
1153   --
1154   ben_pep_shd.lck
1155     (p_effective_date     => p_effective_date,
1156            p_datetrack_mode     => p_datetrack_mode,
1157            p_elig_per_id     => p_rec.elig_per_id,
1158            p_object_version_number => p_rec.object_version_number,
1159            p_validation_start_date => l_validation_start_date,
1160            p_validation_end_date     => l_validation_end_date);
1161   --
1162   -- 1. During an update system defaults are used to determine if
1163   --    arguments have been defaulted or not. We must therefore
1164   --    derive the full record structure values to be updated.
1165   --
1166   -- 2. Call the supporting update validate operations.
1167   --
1168   convert_defs(p_rec);
1169   ben_pep_bus.update_validate
1170     (p_rec             => p_rec,
1171      p_effective_date     => p_effective_date,
1172      p_datetrack_mode       => p_datetrack_mode,
1173      p_validation_start_date => l_validation_start_date,
1174      p_validation_end_date     => l_validation_end_date);
1175   --
1176   -- Call the supporting pre-update operation
1177   --
1178   pre_update
1179     (p_rec             => p_rec,
1180      p_effective_date     => p_effective_date,
1181      p_datetrack_mode     => p_datetrack_mode,
1182      p_validation_start_date => l_validation_start_date,
1183      p_validation_end_date     => l_validation_end_date);
1184   --
1185   -- Update the row.
1186   --
1187   update_dml
1188     (p_rec             => p_rec,
1189      p_effective_date     => p_effective_date,
1190      p_datetrack_mode     => p_datetrack_mode,
1191      p_validation_start_date => l_validation_start_date,
1192      p_validation_end_date     => l_validation_end_date);
1193   --
1194   -- Call the supporting post-update operation
1195   --
1196   post_update
1197     (p_rec             => p_rec,
1198      p_effective_date     => p_effective_date,
1199      p_datetrack_mode     => p_datetrack_mode,
1200      p_validation_start_date => l_validation_start_date,
1201      p_validation_end_date     => l_validation_end_date);
1202 End upd;
1203 --
1204 -- ----------------------------------------------------------------------------
1205 -- |---------------------------------< upd >----------------------------------|
1206 -- ----------------------------------------------------------------------------
1207 Procedure upd
1208   (
1209   p_elig_per_id                  in number,
1210   p_effective_start_date         out nocopy date,
1211   p_effective_end_date           out nocopy date,
1212   p_business_group_id            in number           default hr_api.g_number,
1213   p_pl_id                        in number           default hr_api.g_number,
1214   p_pgm_id                       in number           default hr_api.g_number,
1215   p_plip_id                      in number           default hr_api.g_number,
1216   p_ptip_id                      in number           default hr_api.g_number,
1217   p_ler_id                       in number           default hr_api.g_number,
1218   p_person_id                    in number           default hr_api.g_number,
1219   p_per_in_ler_id                in number           default hr_api.g_number,
1220   p_dpnt_othr_pl_cvrd_rl_flag    in varchar2         default hr_api.g_varchar2,
1221   p_prtn_ovridn_thru_dt          in date             default hr_api.g_date,
1222   p_pl_key_ee_flag               in varchar2         default hr_api.g_varchar2,
1223   p_pl_hghly_compd_flag          in varchar2         default hr_api.g_varchar2,
1224   p_elig_flag                    in varchar2         default hr_api.g_varchar2,
1225   p_comp_ref_amt                 in number           default hr_api.g_number,
1226   p_cmbn_age_n_los_val           in number           default hr_api.g_number,
1227   p_comp_ref_uom                 in varchar2         default hr_api.g_varchar2,
1228   p_age_val                      in number           default hr_api.g_number,
1229   p_los_val                      in number           default hr_api.g_number,
1230   p_prtn_end_dt                  in date             default hr_api.g_date,
1231   p_prtn_strt_dt                 in date             default hr_api.g_date,
1232   p_wait_perd_cmpltn_dt          in date             default hr_api.g_date,
1233   p_wait_perd_strt_dt            in date             default hr_api.g_date,
1234   p_wv_ctfn_typ_cd               in varchar2         default hr_api.g_varchar2,
1235   p_hrs_wkd_val                  in number           default hr_api.g_number,
1236   p_hrs_wkd_bndry_perd_cd        in varchar2         default hr_api.g_varchar2,
1237   p_prtn_ovridn_flag             in varchar2         default hr_api.g_varchar2,
1238   p_no_mx_prtn_ovrid_thru_flag   in varchar2         default hr_api.g_varchar2,
1239   p_prtn_ovridn_rsn_cd           in varchar2         default hr_api.g_varchar2,
1240   p_age_uom                      in varchar2         default hr_api.g_varchar2,
1241   p_los_uom                      in varchar2         default hr_api.g_varchar2,
1242   p_ovrid_svc_dt                 in date             default hr_api.g_date,
1243   p_inelg_rsn_cd                 in varchar2         default hr_api.g_varchar2,
1244   p_frz_los_flag                 in varchar2         default hr_api.g_varchar2,
1245   p_frz_age_flag                 in varchar2         default hr_api.g_varchar2,
1246   p_frz_cmp_lvl_flag             in varchar2         default hr_api.g_varchar2,
1247   p_frz_pct_fl_tm_flag           in varchar2         default hr_api.g_varchar2,
1248   p_frz_hrs_wkd_flag             in varchar2         default hr_api.g_varchar2,
1249   p_frz_comb_age_and_los_flag    in varchar2         default hr_api.g_varchar2,
1250   p_dstr_rstcn_flag              in varchar2         default hr_api.g_varchar2,
1251   p_pct_fl_tm_val                in number           default hr_api.g_number,
1252   p_wv_prtn_rsn_cd               in varchar2         default hr_api.g_varchar2,
1253   p_pl_wvd_flag                  in varchar2         default hr_api.g_varchar2,
1254   p_rt_comp_ref_amt              in number           default hr_api.g_number,
1255   p_rt_cmbn_age_n_los_val        in number           default hr_api.g_number,
1256   p_rt_comp_ref_uom              in varchar2         default hr_api.g_varchar2,
1257   p_rt_age_val                   in number           default hr_api.g_number,
1258   p_rt_los_val                   in number           default hr_api.g_number,
1259   p_rt_hrs_wkd_val               in number           default hr_api.g_number,
1260   p_rt_hrs_wkd_bndry_perd_cd     in varchar2         default hr_api.g_varchar2,
1261   p_rt_age_uom                   in varchar2         default hr_api.g_varchar2,
1262   p_rt_los_uom                   in varchar2         default hr_api.g_varchar2,
1263   p_rt_pct_fl_tm_val             in number           default hr_api.g_number,
1264   p_rt_frz_los_flag              in varchar2         default hr_api.g_varchar2,
1265   p_rt_frz_age_flag              in varchar2         default hr_api.g_varchar2,
1266   p_rt_frz_cmp_lvl_flag          in varchar2         default hr_api.g_varchar2,
1267   p_rt_frz_pct_fl_tm_flag        in varchar2         default hr_api.g_varchar2,
1268   p_rt_frz_hrs_wkd_flag          in varchar2         default hr_api.g_varchar2,
1269   p_rt_frz_comb_age_and_los_flag in varchar2         default hr_api.g_varchar2,
1270   p_once_r_cntug_cd              in varchar2         default hr_api.g_varchar2,
1271   p_pl_ordr_num                  in number           default hr_api.g_number,
1272   p_plip_ordr_num                  in number           default hr_api.g_number,
1273   p_ptip_ordr_num                  in number           default hr_api.g_number,
1274   p_pep_attribute_category       in varchar2         default hr_api.g_varchar2,
1275   p_pep_attribute1               in varchar2         default hr_api.g_varchar2,
1276   p_pep_attribute2               in varchar2         default hr_api.g_varchar2,
1277   p_pep_attribute3               in varchar2         default hr_api.g_varchar2,
1278   p_pep_attribute4               in varchar2         default hr_api.g_varchar2,
1279   p_pep_attribute5               in varchar2         default hr_api.g_varchar2,
1280   p_pep_attribute6               in varchar2         default hr_api.g_varchar2,
1281   p_pep_attribute7               in varchar2         default hr_api.g_varchar2,
1282   p_pep_attribute8               in varchar2         default hr_api.g_varchar2,
1283   p_pep_attribute9               in varchar2         default hr_api.g_varchar2,
1284   p_pep_attribute10              in varchar2         default hr_api.g_varchar2,
1285   p_pep_attribute11              in varchar2         default hr_api.g_varchar2,
1286   p_pep_attribute12              in varchar2         default hr_api.g_varchar2,
1287   p_pep_attribute13              in varchar2         default hr_api.g_varchar2,
1288   p_pep_attribute14              in varchar2         default hr_api.g_varchar2,
1289   p_pep_attribute15              in varchar2         default hr_api.g_varchar2,
1290   p_pep_attribute16              in varchar2         default hr_api.g_varchar2,
1291   p_pep_attribute17              in varchar2         default hr_api.g_varchar2,
1292   p_pep_attribute18              in varchar2         default hr_api.g_varchar2,
1293   p_pep_attribute19              in varchar2         default hr_api.g_varchar2,
1294   p_pep_attribute20              in varchar2         default hr_api.g_varchar2,
1295   p_pep_attribute21              in varchar2         default hr_api.g_varchar2,
1296   p_pep_attribute22              in varchar2         default hr_api.g_varchar2,
1297   p_pep_attribute23              in varchar2         default hr_api.g_varchar2,
1298   p_pep_attribute24              in varchar2         default hr_api.g_varchar2,
1299   p_pep_attribute25              in varchar2         default hr_api.g_varchar2,
1300   p_pep_attribute26              in varchar2         default hr_api.g_varchar2,
1301   p_pep_attribute27              in varchar2         default hr_api.g_varchar2,
1302   p_pep_attribute28              in varchar2         default hr_api.g_varchar2,
1303   p_pep_attribute29              in varchar2         default hr_api.g_varchar2,
1304   p_pep_attribute30              in varchar2         default hr_api.g_varchar2,
1305   p_request_id                   in number           default hr_api.g_number,
1306   p_program_application_id       in number           default hr_api.g_number,
1307   p_program_id                   in number           default hr_api.g_number,
1308   p_program_update_date          in date             default hr_api.g_date,
1309   p_object_version_number        in out nocopy number,
1310   p_effective_date         in date,
1311   p_datetrack_mode         in varchar2
1312   ) is
1313 --
1314   l_rec        ben_pep_shd.g_rec_type;
1315   l_proc    varchar2(72) := g_package||'upd';
1316 --
1317 Begin
1318   hr_utility.set_location('Entering:'||l_proc, 5);
1319   --
1320   -- Call conversion function to turn arguments into the
1321   -- l_rec structure.
1322   --
1323   l_rec :=
1324   ben_pep_shd.convert_args
1325   (
1326   p_elig_per_id,
1327   null,
1328   null,
1329   p_business_group_id,
1330   p_pl_id,
1331   p_pgm_id,
1332   p_plip_id,
1333   p_ptip_id,
1334   p_ler_id,
1335   p_person_id,
1336   p_per_in_ler_id,
1337   p_dpnt_othr_pl_cvrd_rl_flag,
1338   p_prtn_ovridn_thru_dt,
1339   p_pl_key_ee_flag,
1340   p_pl_hghly_compd_flag,
1341   p_elig_flag,
1342   p_comp_ref_amt,
1343   p_cmbn_age_n_los_val,
1344   p_comp_ref_uom,
1345   p_age_val,
1346   p_los_val,
1347   p_prtn_end_dt,
1348   p_prtn_strt_dt,
1349   p_wait_perd_cmpltn_dt,
1350   p_wait_perd_strt_dt  ,
1351   p_wv_ctfn_typ_cd,
1352   p_hrs_wkd_val,
1353   p_hrs_wkd_bndry_perd_cd,
1354   p_prtn_ovridn_flag,
1355   p_no_mx_prtn_ovrid_thru_flag,
1356   p_prtn_ovridn_rsn_cd,
1357   p_age_uom,
1358   p_los_uom,
1359   p_ovrid_svc_dt,
1360   p_inelg_rsn_cd,
1361   p_frz_los_flag,
1362   p_frz_age_flag,
1363   p_frz_cmp_lvl_flag,
1364   p_frz_pct_fl_tm_flag,
1365   p_frz_hrs_wkd_flag,
1366   p_frz_comb_age_and_los_flag,
1367   p_dstr_rstcn_flag,
1368   p_pct_fl_tm_val,
1369   p_wv_prtn_rsn_cd,
1370   p_pl_wvd_flag,
1371   p_rt_comp_ref_amt,
1372   p_rt_cmbn_age_n_los_val,
1373   p_rt_comp_ref_uom,
1374   p_rt_age_val,
1375   p_rt_los_val,
1376   p_rt_hrs_wkd_val,
1377   p_rt_hrs_wkd_bndry_perd_cd,
1378   p_rt_age_uom,
1379   p_rt_los_uom,
1380   p_rt_pct_fl_tm_val,
1381   p_rt_frz_los_flag,
1382   p_rt_frz_age_flag,
1383   p_rt_frz_cmp_lvl_flag,
1384   p_rt_frz_pct_fl_tm_flag,
1385   p_rt_frz_hrs_wkd_flag,
1386   p_rt_frz_comb_age_and_los_flag,
1387   p_once_r_cntug_cd,
1388   p_pl_ordr_num,
1389   p_plip_ordr_num,
1390   p_ptip_ordr_num,
1391   p_pep_attribute_category,
1392   p_pep_attribute1,
1393   p_pep_attribute2,
1394   p_pep_attribute3,
1395   p_pep_attribute4,
1396   p_pep_attribute5,
1397   p_pep_attribute6,
1398   p_pep_attribute7,
1399   p_pep_attribute8,
1400   p_pep_attribute9,
1401   p_pep_attribute10,
1402   p_pep_attribute11,
1403   p_pep_attribute12,
1404   p_pep_attribute13,
1405   p_pep_attribute14,
1406   p_pep_attribute15,
1407   p_pep_attribute16,
1408   p_pep_attribute17,
1409   p_pep_attribute18,
1410   p_pep_attribute19,
1411   p_pep_attribute20,
1412   p_pep_attribute21,
1413   p_pep_attribute22,
1414   p_pep_attribute23,
1415   p_pep_attribute24,
1416   p_pep_attribute25,
1417   p_pep_attribute26,
1418   p_pep_attribute27,
1419   p_pep_attribute28,
1420   p_pep_attribute29,
1421   p_pep_attribute30,
1422   p_request_id,
1423   p_program_application_id,
1424   p_program_id,
1425   p_program_update_date,
1426   p_object_version_number
1427   );
1428   --
1429   -- Having converted the arguments into the
1430   -- plsql record structure we call the corresponding record
1431   -- business process.
1432   --
1433   upd(l_rec, p_effective_date, p_datetrack_mode);
1434   p_object_version_number       := l_rec.object_version_number;
1435   p_effective_start_date        := l_rec.effective_start_date;
1436   p_effective_end_date          := l_rec.effective_end_date;
1437   --
1438   --
1439   hr_utility.set_location(' Leaving:'||l_proc, 10);
1440 End upd;
1441 --
1442 end ben_pep_upd;