DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_PEL_UPD

Source


1 Package Body ben_pel_upd as
2 /* $Header: bepelrhi.pkb 120.3.12000000.2 2007/05/13 23:02:25 rtagarra noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33) := '  ben_pel_upd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------------< update_dml >------------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 --   This procedure controls the actual dml update logic. The processing of
17 --   this procedure is:
18 --   1) Increment the object_version_number by 1 if the object_version_number
19 --      is defined as an attribute for this entity.
20 --   2) To set and unset the g_api_dml status as required (as we are about to
21 --      perform dml).
22 --   3) To update the specified row in the schema using the primary key in
23 --      the predicates.
24 --   4) To trap any constraint violations that may have occurred.
25 --   5) To raise any other errors.
26 --
27 -- Prerequisites:
28 --   This is an internal private procedure which must be called from the upd
29 --   procedure.
30 --
31 -- In Parameters:
32 --   A Pl/Sql record structre.
33 --
34 -- Post Success:
35 --   The specified row will be updated in the schema.
36 --
37 -- Post Failure:
38 --   On the update dml failure it is important to note that we always reset the
39 --   g_api_dml status to false.
40 --   If a check, unique or parent integrity constraint violation is raised the
41 --   constraint_error procedure will be called.
42 --   If any other error is reported, the error will be raised after the
43 --   g_api_dml status is reset.
44 --
45 -- Developer Implementation Notes:
46 --   The update 'set' attribute list should be modified if any of your
47 --   attributes are not updateable.
48 --
49 -- Access Status:
50 --   Internal Row Handler Use Only.
51 --
52 -- {End Of Comments}
53 -- ----------------------------------------------------------------------------
54 Procedure update_dml(p_rec in out nocopy ben_pel_shd.g_rec_type) is
55 --
56   l_proc  varchar2(72) := g_package||'update_dml';
57 --
58 Begin
59   hr_utility.set_location('Entering:'||l_proc, 5);
60   --
61   -- Increment the object version
62   --
63   p_rec.object_version_number := p_rec.object_version_number + 1;
64   --
65   ben_pel_shd.g_api_dml := true;  -- Set the api dml status
66   --
67   -- Update the ben_pil_elctbl_chc_popl Row
68   --
69   update ben_pil_elctbl_chc_popl
70   set
71   pil_elctbl_chc_popl_id            = p_rec.pil_elctbl_chc_popl_id,
72   dflt_enrt_dt                      = p_rec.dflt_enrt_dt,
73   dflt_asnd_dt                      = p_rec.dflt_asnd_dt,
74   elcns_made_dt                     = p_rec.elcns_made_dt,
75   cls_enrt_dt_to_use_cd             = p_rec.cls_enrt_dt_to_use_cd,
76   enrt_typ_cycl_cd                  = p_rec.enrt_typ_cycl_cd,
77   enrt_perd_end_dt                  = p_rec.enrt_perd_end_dt,
78   enrt_perd_strt_dt                 = p_rec.enrt_perd_strt_dt,
79   procg_end_dt                      = p_rec.procg_end_dt,
80   pil_elctbl_popl_stat_cd           = p_rec.pil_elctbl_popl_stat_cd,
81   acty_ref_perd_cd                  = p_rec.acty_ref_perd_cd,
82   uom                               = p_rec.uom,
83   comments                               = p_rec.comments,
84   mgr_ovrid_dt                               = p_rec.mgr_ovrid_dt,
85   ws_mgr_id                               = p_rec.ws_mgr_id,
86   mgr_ovrid_person_id                               = p_rec.mgr_ovrid_person_id,
87   assignment_id                               = p_rec.assignment_id,
88   --cwb
89   bdgt_acc_cd                       = p_rec.bdgt_acc_cd,
90   pop_cd                            = p_rec.pop_cd,
91   bdgt_due_dt                       = p_rec.bdgt_due_dt,
92   bdgt_export_flag                  = p_rec.bdgt_export_flag,
93   bdgt_iss_dt                       = p_rec.bdgt_iss_dt,
94   bdgt_stat_cd                      = p_rec.bdgt_stat_cd,
95   ws_acc_cd                         = p_rec.ws_acc_cd,
96   ws_due_dt                         = p_rec.ws_due_dt,
97   ws_export_flag                    = p_rec.ws_export_flag,
98   ws_iss_dt                         = p_rec.ws_iss_dt,
99   ws_stat_cd                        = p_rec.ws_stat_cd,
100   --cwb
101   reinstate_cd                      = p_rec.reinstate_cd,
102   reinstate_ovrdn_cd                = p_rec.reinstate_ovrdn_cd,
103   auto_asnd_dt                      = p_rec.auto_asnd_dt,
104   cbr_elig_perd_strt_dt             = p_rec.cbr_elig_perd_strt_dt,
105   cbr_elig_perd_end_dt              = p_rec.cbr_elig_perd_end_dt,
106   lee_rsn_id                        = p_rec.lee_rsn_id,
107   enrt_perd_id                      = p_rec.enrt_perd_id,
108   per_in_ler_id                     = p_rec.per_in_ler_id,
109   pgm_id                            = p_rec.pgm_id,
110   pl_id                             = p_rec.pl_id,
111   business_group_id                 = p_rec.business_group_id,
112   pel_attribute_category            = p_rec.pel_attribute_category,
113   pel_attribute1                    = p_rec.pel_attribute1,
114   pel_attribute2                    = p_rec.pel_attribute2,
115   pel_attribute3                    = p_rec.pel_attribute3,
116   pel_attribute4                    = p_rec.pel_attribute4,
117   pel_attribute5                    = p_rec.pel_attribute5,
118   pel_attribute6                    = p_rec.pel_attribute6,
119   pel_attribute7                    = p_rec.pel_attribute7,
120   pel_attribute8                    = p_rec.pel_attribute8,
121   pel_attribute9                    = p_rec.pel_attribute9,
122   pel_attribute10                   = p_rec.pel_attribute10,
123   pel_attribute11                   = p_rec.pel_attribute11,
124   pel_attribute12                   = p_rec.pel_attribute12,
125   pel_attribute13                   = p_rec.pel_attribute13,
126   pel_attribute14                   = p_rec.pel_attribute14,
127   pel_attribute15                   = p_rec.pel_attribute15,
128   pel_attribute16                   = p_rec.pel_attribute16,
129   pel_attribute17                   = p_rec.pel_attribute17,
130   pel_attribute18                   = p_rec.pel_attribute18,
131   pel_attribute19                   = p_rec.pel_attribute19,
132   pel_attribute20                   = p_rec.pel_attribute20,
133   pel_attribute21                   = p_rec.pel_attribute21,
134   pel_attribute22                   = p_rec.pel_attribute22,
135   pel_attribute23                   = p_rec.pel_attribute23,
136   pel_attribute24                   = p_rec.pel_attribute24,
137   pel_attribute25                   = p_rec.pel_attribute25,
138   pel_attribute26                   = p_rec.pel_attribute26,
139   pel_attribute27                   = p_rec.pel_attribute27,
140   pel_attribute28                   = p_rec.pel_attribute28,
141   pel_attribute29                   = p_rec.pel_attribute29,
142   pel_attribute30                   = p_rec.pel_attribute30,
143   request_id                        = p_rec.request_id,
144   program_application_id            = p_rec.program_application_id,
145   program_id                        = p_rec.program_id,
146   program_update_date               = p_rec.program_update_date,
147   object_version_number             = p_rec.object_version_number,
148   defer_deenrol_flag                = p_rec.defer_deenrol_flag,
149   deenrol_made_dt		    = p_rec.deenrol_made_dt
150   where pil_elctbl_chc_popl_id = p_rec.pil_elctbl_chc_popl_id;
151   --
152   ben_pel_shd.g_api_dml := false;   -- Unset the api dml status
153   --
154   hr_utility.set_location(' Leaving:'||l_proc, 10);
155 --
156 Exception
157   When hr_api.check_integrity_violated Then
158     -- A check constraint has been violated
159     ben_pel_shd.g_api_dml := false;   -- Unset the api dml status
160     ben_pel_shd.constraint_error
161       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
162   When hr_api.parent_integrity_violated Then
163     -- Parent integrity has been violated
164     ben_pel_shd.g_api_dml := false;   -- Unset the api dml status
165     ben_pel_shd.constraint_error
166       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
167   When hr_api.unique_integrity_violated Then
168     -- Unique integrity has been violated
169     ben_pel_shd.g_api_dml := false;   -- Unset the api dml status
170     ben_pel_shd.constraint_error
171       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
172   When Others Then
173     ben_pel_shd.g_api_dml := false;   -- Unset the api dml status
174     Raise;
175 End update_dml;
176 --
177 -- ----------------------------------------------------------------------------
178 -- |------------------------------< pre_update >------------------------------|
179 -- ----------------------------------------------------------------------------
180 -- {Start Of Comments}
181 --
182 -- Description:
183 --   This private procedure contains any processing which is required before
184 --   the update dml.
185 --
186 -- Prerequisites:
187 --   This is an internal procedure which is called from the upd procedure.
188 --
189 -- In Parameters:
190 --   A Pl/Sql record structre.
191 --
192 -- Post Success:
193 --   Processing continues.
194 --
195 -- Post Failure:
196 --   If an error has occurred, an error message and exception will be raised
197 --   but not handled.
198 --
199 -- Developer Implementation Notes:
200 --   Any pre-processing required before the update dml is issued should be
201 --   coded within this procedure. It is important to note that any 3rd party
202 --   maintenance should be reviewed before placing in this procedure.
203 --
204 -- Access Status:
205 --   Internal Row Handler Use Only.
206 --
207 -- {End Of Comments}
208 -- ----------------------------------------------------------------------------
209 Procedure pre_update(p_rec in ben_pel_shd.g_rec_type) is
210 --
211   l_proc  varchar2(72) := g_package||'pre_update';
212 --
213 Begin
214   hr_utility.set_location('Entering:'||l_proc, 5);
215   --
216   hr_utility.set_location(' Leaving:'||l_proc, 10);
217 End pre_update;
218 --
219 -- ----------------------------------------------------------------------------
220 -- |-----------------------------< post_update >------------------------------|
221 -- ----------------------------------------------------------------------------
222 -- {Start Of Comments}
223 --
224 -- Description:
225 --   This private procedure contains any processing which is required after the
226 --   update dml.
227 --
228 -- Prerequisites:
229 --   This is an internal procedure which is called from the upd procedure.
230 --
231 -- In Parameters:
232 --   A Pl/Sql record structre.
233 --
234 -- Post Success:
235 --   Processing continues.
236 --
237 -- Post Failure:
238 --   If an error has occurred, an error message and exception will be raised
239 --   but not handled.
240 --
241 -- Developer Implementation Notes:
242 --   Any post-processing required after the update dml is issued should be
243 --   coded within this procedure. It is important to note that any 3rd party
244 --   maintenance should be reviewed before placing in this procedure.
245 --
246 -- Access Status:
247 --   Internal Row Handler Use Only.
248 --
249 -- {End Of Comments}
250 -- ----------------------------------------------------------------------------
251 Procedure post_update(
252 p_effective_date in date,p_rec in ben_pel_shd.g_rec_type) is
253 --
254   l_proc  varchar2(72) := g_package||'post_update';
255 --
256 Begin
257   hr_utility.set_location('Entering:'||l_proc, 5);
258 --
259   --
260   -- Start of API User Hook for post_update.
261   --
262   begin
263     --
264     ben_pel_rku.after_update
265       (
266   p_pil_elctbl_chc_popl_id        =>p_rec.pil_elctbl_chc_popl_id
267  ,p_dflt_enrt_dt                  =>p_rec.dflt_enrt_dt
268  ,p_dflt_asnd_dt                  =>p_rec.dflt_asnd_dt
269  ,p_elcns_made_dt                 =>p_rec.elcns_made_dt
270  ,p_cls_enrt_dt_to_use_cd         =>p_rec.cls_enrt_dt_to_use_cd
271  ,p_enrt_typ_cycl_cd              =>p_rec.enrt_typ_cycl_cd
272  ,p_enrt_perd_end_dt              =>p_rec.enrt_perd_end_dt
273  ,p_enrt_perd_strt_dt             =>p_rec.enrt_perd_strt_dt
274  ,p_procg_end_dt                  =>p_rec.procg_end_dt
275  ,p_pil_elctbl_popl_stat_cd       =>p_rec.pil_elctbl_popl_stat_cd
276  ,p_acty_ref_perd_cd              =>p_rec.acty_ref_perd_cd
277  ,p_uom                           =>p_rec.uom
278  ,p_comments                           =>p_rec.comments
279  ,p_mgr_ovrid_dt                           =>p_rec.mgr_ovrid_dt
280  ,p_ws_mgr_id                           =>p_rec.ws_mgr_id
281  ,p_mgr_ovrid_person_id                           =>p_rec.mgr_ovrid_person_id
282  ,p_assignment_id                           =>p_rec.assignment_id
283   --cwb
284  ,p_bdgt_acc_cd                     =>p_rec.bdgt_acc_cd
285  ,p_pop_cd                          =>p_rec.pop_cd
286  ,p_bdgt_due_dt                     =>p_rec.bdgt_due_dt
287  ,p_bdgt_export_flag                =>p_rec.bdgt_export_flag
288  ,p_bdgt_iss_dt                     =>p_rec.bdgt_iss_dt
289  ,p_bdgt_stat_cd                    =>p_rec.bdgt_stat_cd
290  ,p_ws_acc_cd                       =>p_rec.ws_acc_cd
291  ,p_ws_due_dt                       =>p_rec.ws_due_dt
292  ,p_ws_export_flag                  =>p_rec.ws_export_flag
293  ,p_ws_iss_dt                       =>p_rec.ws_iss_dt
294  ,p_ws_stat_cd                      =>p_rec.ws_stat_cd
295   --cwb
296  ,p_reinstate_cd                  => p_rec.reinstate_cd
297  ,p_reinstate_ovrdn_cd            => p_rec.reinstate_ovrdn_cd
298  ,p_auto_asnd_dt                  =>p_rec.auto_asnd_dt
299  ,p_cbr_elig_perd_strt_dt         =>p_rec.cbr_elig_perd_strt_dt
300  ,p_cbr_elig_perd_end_dt          =>p_rec.cbr_elig_perd_end_dt
301  ,p_lee_rsn_id                    =>p_rec.lee_rsn_id
302  ,p_enrt_perd_id                  =>p_rec.enrt_perd_id
303  ,p_per_in_ler_id                 =>p_rec.per_in_ler_id
304  ,p_pgm_id                        =>p_rec.pgm_id
305  ,p_pl_id                         =>p_rec.pl_id
306  ,p_business_group_id             =>p_rec.business_group_id
307  ,p_pel_attribute_category        =>p_rec.pel_attribute_category
308  ,p_pel_attribute1                =>p_rec.pel_attribute1
309  ,p_pel_attribute2                =>p_rec.pel_attribute2
310  ,p_pel_attribute3                =>p_rec.pel_attribute3
311  ,p_pel_attribute4                =>p_rec.pel_attribute4
312  ,p_pel_attribute5                =>p_rec.pel_attribute5
313  ,p_pel_attribute6                =>p_rec.pel_attribute6
314  ,p_pel_attribute7                =>p_rec.pel_attribute7
315  ,p_pel_attribute8                =>p_rec.pel_attribute8
316  ,p_pel_attribute9                =>p_rec.pel_attribute9
317  ,p_pel_attribute10               =>p_rec.pel_attribute10
318  ,p_pel_attribute11               =>p_rec.pel_attribute11
319  ,p_pel_attribute12               =>p_rec.pel_attribute12
320  ,p_pel_attribute13               =>p_rec.pel_attribute13
321  ,p_pel_attribute14               =>p_rec.pel_attribute14
322  ,p_pel_attribute15               =>p_rec.pel_attribute15
323  ,p_pel_attribute16               =>p_rec.pel_attribute16
324  ,p_pel_attribute17               =>p_rec.pel_attribute17
325  ,p_pel_attribute18               =>p_rec.pel_attribute18
326  ,p_pel_attribute19               =>p_rec.pel_attribute19
327  ,p_pel_attribute20               =>p_rec.pel_attribute20
328  ,p_pel_attribute21               =>p_rec.pel_attribute21
329  ,p_pel_attribute22               =>p_rec.pel_attribute22
330  ,p_pel_attribute23               =>p_rec.pel_attribute23
331  ,p_pel_attribute24               =>p_rec.pel_attribute24
332  ,p_pel_attribute25               =>p_rec.pel_attribute25
333  ,p_pel_attribute26               =>p_rec.pel_attribute26
334  ,p_pel_attribute27               =>p_rec.pel_attribute27
335  ,p_pel_attribute28               =>p_rec.pel_attribute28
336  ,p_pel_attribute29               =>p_rec.pel_attribute29
337  ,p_pel_attribute30               =>p_rec.pel_attribute30
338  ,p_request_id                    =>p_rec.request_id
339  ,p_program_application_id        =>p_rec.program_application_id
340  ,p_program_id                    =>p_rec.program_id
341  ,p_program_update_date           =>p_rec.program_update_date
342  ,p_object_version_number         =>p_rec.object_version_number
343  ,p_effective_date                =>p_effective_date
344  ,p_defer_deenrol_flag            =>p_rec.defer_deenrol_flag
345  ,p_deenrol_made_dt               =>p_rec.deenrol_made_dt
346  ,p_dflt_enrt_dt_o                =>ben_pel_shd.g_old_rec.dflt_enrt_dt
347  ,p_dflt_asnd_dt_o                =>ben_pel_shd.g_old_rec.dflt_asnd_dt
348  ,p_elcns_made_dt_o               =>ben_pel_shd.g_old_rec.elcns_made_dt
349  ,p_cls_enrt_dt_to_use_cd_o       =>ben_pel_shd.g_old_rec.cls_enrt_dt_to_use_cd
350  ,p_enrt_typ_cycl_cd_o            =>ben_pel_shd.g_old_rec.enrt_typ_cycl_cd
351  ,p_enrt_perd_end_dt_o            =>ben_pel_shd.g_old_rec.enrt_perd_end_dt
352  ,p_enrt_perd_strt_dt_o           =>ben_pel_shd.g_old_rec.enrt_perd_strt_dt
353  ,p_procg_end_dt_o                =>ben_pel_shd.g_old_rec.procg_end_dt
354  ,p_pil_elctbl_popl_stat_cd_o     =>ben_pel_shd.g_old_rec.pil_elctbl_popl_stat_cd
355  ,p_acty_ref_perd_cd_o            =>ben_pel_shd.g_old_rec.acty_ref_perd_cd
356  ,p_uom_o                         =>ben_pel_shd.g_old_rec.uom
357  ,p_comments_o                         =>ben_pel_shd.g_old_rec.comments
358  ,p_mgr_ovrid_dt_o                         =>ben_pel_shd.g_old_rec.mgr_ovrid_dt
359  ,p_ws_mgr_id_o                         =>ben_pel_shd.g_old_rec.ws_mgr_id
360  ,p_mgr_ovrid_person_id_o                         =>ben_pel_shd.g_old_rec.mgr_ovrid_person_id
361  ,p_assignment_id_o                         =>ben_pel_shd.g_old_rec.assignment_id
362   --cwb
363  ,p_bdgt_acc_cd_o                     =>ben_pel_shd.g_old_rec.bdgt_acc_cd
364  ,p_pop_cd_o                          =>ben_pel_shd.g_old_rec.pop_cd
365  ,p_bdgt_due_dt_o                     =>ben_pel_shd.g_old_rec.bdgt_due_dt
366  ,p_bdgt_export_flag_o                =>ben_pel_shd.g_old_rec.bdgt_export_flag
367  ,p_bdgt_iss_dt_o                     =>ben_pel_shd.g_old_rec.bdgt_iss_dt
368  ,p_bdgt_stat_cd_o                    =>ben_pel_shd.g_old_rec.bdgt_stat_cd
369  ,p_ws_acc_cd_o                       =>ben_pel_shd.g_old_rec.ws_acc_cd
370  ,p_ws_due_dt_o                       =>ben_pel_shd.g_old_rec.ws_due_dt
371  ,p_ws_export_flag_o                  =>ben_pel_shd.g_old_rec.ws_export_flag
372  ,p_ws_iss_dt_o                       =>ben_pel_shd.g_old_rec.ws_iss_dt
373  ,p_ws_stat_cd_o                      =>ben_pel_shd.g_old_rec.ws_stat_cd
374   --cwb
375  ,p_reinstate_cd_o                =>ben_pel_shd.g_old_rec.reinstate_cd
376  ,p_reinstate_ovrdn_cd_o          =>ben_pel_shd.g_old_rec.reinstate_ovrdn_cd
377  ,p_auto_asnd_dt_o                =>ben_pel_shd.g_old_rec.auto_asnd_dt
378  ,p_cbr_elig_perd_strt_dt_o       =>ben_pel_shd.g_old_rec.cbr_elig_perd_strt_dt
379  ,p_cbr_elig_perd_end_dt_o        =>ben_pel_shd.g_old_rec.cbr_elig_perd_end_dt
380  ,p_lee_rsn_id_o                  =>ben_pel_shd.g_old_rec.lee_rsn_id
381  ,p_enrt_perd_id_o                =>ben_pel_shd.g_old_rec.enrt_perd_id
382  ,p_per_in_ler_id_o               =>ben_pel_shd.g_old_rec.per_in_ler_id
383  ,p_pgm_id_o                      =>ben_pel_shd.g_old_rec.pgm_id
384  ,p_pl_id_o                       =>ben_pel_shd.g_old_rec.pl_id
385  ,p_business_group_id_o           =>ben_pel_shd.g_old_rec.business_group_id
386  ,p_pel_attribute_category_o      =>ben_pel_shd.g_old_rec.pel_attribute_category
387  ,p_pel_attribute1_o              =>ben_pel_shd.g_old_rec.pel_attribute1
388  ,p_pel_attribute2_o              =>ben_pel_shd.g_old_rec.pel_attribute2
389  ,p_pel_attribute3_o              =>ben_pel_shd.g_old_rec.pel_attribute3
390  ,p_pel_attribute4_o              =>ben_pel_shd.g_old_rec.pel_attribute4
391  ,p_pel_attribute5_o              =>ben_pel_shd.g_old_rec.pel_attribute5
392  ,p_pel_attribute6_o              =>ben_pel_shd.g_old_rec.pel_attribute6
393  ,p_pel_attribute7_o              =>ben_pel_shd.g_old_rec.pel_attribute7
394  ,p_pel_attribute8_o              =>ben_pel_shd.g_old_rec.pel_attribute8
395  ,p_pel_attribute9_o              =>ben_pel_shd.g_old_rec.pel_attribute9
396  ,p_pel_attribute10_o             =>ben_pel_shd.g_old_rec.pel_attribute10
397  ,p_pel_attribute11_o             =>ben_pel_shd.g_old_rec.pel_attribute11
398  ,p_pel_attribute12_o             =>ben_pel_shd.g_old_rec.pel_attribute12
399  ,p_pel_attribute13_o             =>ben_pel_shd.g_old_rec.pel_attribute13
400  ,p_pel_attribute14_o             =>ben_pel_shd.g_old_rec.pel_attribute14
401  ,p_pel_attribute15_o             =>ben_pel_shd.g_old_rec.pel_attribute15
402  ,p_pel_attribute16_o             =>ben_pel_shd.g_old_rec.pel_attribute16
403  ,p_pel_attribute17_o             =>ben_pel_shd.g_old_rec.pel_attribute17
404  ,p_pel_attribute18_o             =>ben_pel_shd.g_old_rec.pel_attribute18
405  ,p_pel_attribute19_o             =>ben_pel_shd.g_old_rec.pel_attribute19
406  ,p_pel_attribute20_o             =>ben_pel_shd.g_old_rec.pel_attribute20
407  ,p_pel_attribute21_o             =>ben_pel_shd.g_old_rec.pel_attribute21
408  ,p_pel_attribute22_o             =>ben_pel_shd.g_old_rec.pel_attribute22
409  ,p_pel_attribute23_o             =>ben_pel_shd.g_old_rec.pel_attribute23
410  ,p_pel_attribute24_o             =>ben_pel_shd.g_old_rec.pel_attribute24
411  ,p_pel_attribute25_o             =>ben_pel_shd.g_old_rec.pel_attribute25
412  ,p_pel_attribute26_o             =>ben_pel_shd.g_old_rec.pel_attribute26
413  ,p_pel_attribute27_o             =>ben_pel_shd.g_old_rec.pel_attribute27
414  ,p_pel_attribute28_o             =>ben_pel_shd.g_old_rec.pel_attribute28
415  ,p_pel_attribute29_o             =>ben_pel_shd.g_old_rec.pel_attribute29
416  ,p_pel_attribute30_o             =>ben_pel_shd.g_old_rec.pel_attribute30
417  ,p_request_id_o                  =>ben_pel_shd.g_old_rec.request_id
418  ,p_program_application_id_o      =>ben_pel_shd.g_old_rec.program_application_id
419  ,p_program_id_o                  =>ben_pel_shd.g_old_rec.program_id
420  ,p_program_update_date_o         =>ben_pel_shd.g_old_rec.program_update_date
421  ,p_object_version_number_o       =>ben_pel_shd.g_old_rec.object_version_number
422  ,p_defer_deenrol_flag_o          =>ben_pel_shd.g_old_rec.defer_deenrol_flag
423  ,p_deenrol_made_dt_o             =>ben_pel_shd.g_old_rec.deenrol_made_dt
424       );
425     --
426   exception
427     --
428     when hr_api.cannot_find_prog_unit then
429       --
430       hr_api.cannot_find_prog_unit_error
431         (p_module_name => 'ben_pil_elctbl_chc_popl'
432         ,p_hook_type   => 'AU');
433       --
434   end;
435   --
436   -- End of API User Hook for post_update.
437   --
438   --
439   hr_utility.set_location(' Leaving:'||l_proc, 10);
440 End post_update;
441 --
442 -- ----------------------------------------------------------------------------
443 -- |-----------------------------< convert_defs >-----------------------------|
444 -- ----------------------------------------------------------------------------
445 -- {Start Of Comments}
446 --
447 -- Description:
448 --   The Convert_Defs procedure has one very important function:
449 --   It must return the record structure for the row with all system defaulted
450 --   values converted into its corresponding parameter value for update. When
451 --   we attempt to update a row through the Upd process , certain
452 --   parameters can be defaulted which enables flexibility in the calling of
453 --   the upd process (e.g. only attributes which need to be updated need to be
454 --   specified). For the upd process to determine which attributes
455 --   have NOT been specified we need to check if the parameter has a reserved
456 --   system default value. Therefore, for all parameters which have a
457 --   corresponding reserved system default mechanism specified we need to
458 --   check if a system default is being used. If a system default is being
459 --   used then we convert the defaulted value into its corresponding attribute
460 --   value held in the g_old_rec data structure.
461 --
462 -- Prerequisites:
463 --   This private function can only be called from the upd process.
464 --
465 -- In Parameters:
466 --   A Pl/Sql record structre.
467 --
468 -- Post Success:
469 --   The record structure will be returned with all system defaulted parameter
470 --   values converted into its current row attribute value.
471 --
472 -- Post Failure:
473 --   No direct error handling is required within this function. Any possible
474 --   errors within this procedure will be a PL/SQL value error due to conversion
475 --   of datatypes or data lengths.
476 --
477 -- Developer Implementation Notes:
478 --   None.
479 --
480 -- Access Status:
481 --   Internal Row Handler Use Only.
482 --
483 -- {End Of Comments}
484 -- ----------------------------------------------------------------------------
485 Procedure convert_defs(p_rec in out nocopy ben_pel_shd.g_rec_type) is
486 --
487   l_proc  varchar2(72) := g_package||'convert_defs';
488 --
489 Begin
490   --
491   hr_utility.set_location('Entering:'||l_proc, 5);
492   --
493   -- We must now examine each argument value in the
494   -- p_rec plsql record structure
495   -- to see if a system default is being used. If a system default
496   -- is being used then we must set to the 'current' argument value.
497   --
498   If (p_rec.dflt_enrt_dt = hr_api.g_date) then
499     p_rec.dflt_enrt_dt :=
500     ben_pel_shd.g_old_rec.dflt_enrt_dt;
501   End If;
502   If (p_rec.dflt_asnd_dt = hr_api.g_date) then
503     p_rec.dflt_asnd_dt :=
504     ben_pel_shd.g_old_rec.dflt_asnd_dt;
505   End If;
506   If (p_rec.elcns_made_dt = hr_api.g_date) then
507     p_rec.elcns_made_dt :=
508     ben_pel_shd.g_old_rec.elcns_made_dt;
509   End If;
510   If (p_rec.cls_enrt_dt_to_use_cd = hr_api.g_varchar2) then
511     p_rec.cls_enrt_dt_to_use_cd :=
512     ben_pel_shd.g_old_rec.cls_enrt_dt_to_use_cd;
513   End If;
514   If (p_rec.enrt_typ_cycl_cd = hr_api.g_varchar2) then
515     p_rec.enrt_typ_cycl_cd :=
516     ben_pel_shd.g_old_rec.enrt_typ_cycl_cd;
517   End If;
518   If (p_rec.enrt_perd_end_dt = hr_api.g_date) then
519     p_rec.enrt_perd_end_dt :=
520     ben_pel_shd.g_old_rec.enrt_perd_end_dt;
521   End If;
522   If (p_rec.enrt_perd_strt_dt = hr_api.g_date) then
523     p_rec.enrt_perd_strt_dt :=
524     ben_pel_shd.g_old_rec.enrt_perd_strt_dt;
525   End If;
526   If (p_rec.procg_end_dt = hr_api.g_date) then
527     p_rec.procg_end_dt :=
528     ben_pel_shd.g_old_rec.procg_end_dt;
529   End If;
530   If (p_rec.pil_elctbl_popl_stat_cd = hr_api.g_varchar2) then
531     p_rec.pil_elctbl_popl_stat_cd :=
532     ben_pel_shd.g_old_rec.pil_elctbl_popl_stat_cd;
533   End If;
534   If (p_rec.acty_ref_perd_cd = hr_api.g_varchar2) then
535     p_rec.acty_ref_perd_cd :=
536     ben_pel_shd.g_old_rec.acty_ref_perd_cd;
537   End If;
538 
539   If (p_rec.uom = hr_api.g_varchar2) then
540     p_rec.uom :=
541     ben_pel_shd.g_old_rec.uom;
542   End If;
543 
544   If (p_rec.comments = hr_api.g_varchar2) then
545     p_rec.comments :=
546     ben_pel_shd.g_old_rec.comments;
547   End If;
548 
549   If (p_rec.mgr_ovrid_dt = hr_api.g_date) then
550     p_rec.mgr_ovrid_dt :=
551     ben_pel_shd.g_old_rec.mgr_ovrid_dt;
552   End If;
553 
554   If (p_rec.ws_mgr_id = hr_api.g_number) then
555     p_rec.ws_mgr_id :=
556     ben_pel_shd.g_old_rec.ws_mgr_id;
557   End If;
558 
559   If (p_rec.mgr_ovrid_person_id = hr_api.g_number) then
560     p_rec.mgr_ovrid_person_id :=
561     ben_pel_shd.g_old_rec.mgr_ovrid_person_id;
562   End If;
563 
564   If (p_rec.assignment_id = hr_api.g_number) then
565     p_rec.assignment_id :=
566     ben_pel_shd.g_old_rec.assignment_id;
567   End If;
568 
569   If (p_rec.mgr_ovrid_person_id = hr_api.g_number) then
570     p_rec.mgr_ovrid_person_id :=
571     ben_pel_shd.g_old_rec.mgr_ovrid_person_id;
572   End If;
573 
574 
575   -- cwb
576   If (p_rec.bdgt_acc_cd = hr_api.g_varchar2) then
577     p_rec.bdgt_acc_cd :=
578     ben_pel_shd.g_old_rec.bdgt_acc_cd;
579   End If;
580   If (p_rec.pop_cd = hr_api.g_varchar2) then
581     p_rec.pop_cd :=
582     ben_pel_shd.g_old_rec.pop_cd;
583   End If;
584   If (p_rec.bdgt_due_dt = hr_api.g_date) then
585     p_rec.bdgt_due_dt :=
586     ben_pel_shd.g_old_rec.bdgt_due_dt;
587   End If;
588   If (p_rec.bdgt_export_flag = hr_api.g_varchar2) then
589     p_rec.bdgt_export_flag :=
590     ben_pel_shd.g_old_rec.bdgt_export_flag;
591   End If;
592   If (p_rec.bdgt_iss_dt = hr_api.g_date) then
593     p_rec.bdgt_iss_dt :=
594     ben_pel_shd.g_old_rec.bdgt_iss_dt;
595   End If;
596   If (p_rec.bdgt_stat_cd = hr_api.g_varchar2) then
597     p_rec.bdgt_stat_cd :=
598     ben_pel_shd.g_old_rec.bdgt_stat_cd;
599   End If;
600   If (p_rec.ws_acc_cd = hr_api.g_varchar2) then
601     p_rec.ws_acc_cd :=
602     ben_pel_shd.g_old_rec.ws_acc_cd;
603   End If;
604   If (p_rec.ws_due_dt = hr_api.g_date) then
605     p_rec.ws_due_dt :=
606     ben_pel_shd.g_old_rec.ws_due_dt;
607   End If;
608   If (p_rec.ws_export_flag = hr_api.g_varchar2) then
609     p_rec.ws_export_flag :=
610     ben_pel_shd.g_old_rec.ws_export_flag;
611   End If;
612   If (p_rec.ws_iss_dt = hr_api.g_date) then
613     p_rec.ws_iss_dt :=
614     ben_pel_shd.g_old_rec.ws_iss_dt;
615   End If;
616   If (p_rec.ws_stat_cd = hr_api.g_varchar2) then
617     p_rec.ws_stat_cd :=
618     ben_pel_shd.g_old_rec.ws_stat_cd;
619   End If;
620   -- cwb
621   If (p_rec.reinstate_cd = hr_api.g_varchar2) then
622     p_rec.reinstate_cd :=
623     ben_pel_shd.g_old_rec.reinstate_cd;
624   End If;
625   If (p_rec.reinstate_ovrdn_cd = hr_api.g_varchar2) then
626     p_rec.reinstate_ovrdn_cd :=
627     ben_pel_shd.g_old_rec.reinstate_ovrdn_cd;
628   End If;
629   If (p_rec.auto_asnd_dt = hr_api.g_date) then
630     p_rec.auto_asnd_dt :=
631     ben_pel_shd.g_old_rec.auto_asnd_dt;
632   End If;
633   If (p_rec.cbr_elig_perd_strt_dt = hr_api.g_date) then
634     p_rec.cbr_elig_perd_strt_dt :=
635     ben_pel_shd.g_old_rec.cbr_elig_perd_strt_dt;
636   End If;
637   If (p_rec.cbr_elig_perd_end_dt = hr_api.g_date) then
638     p_rec.cbr_elig_perd_end_dt :=
639     ben_pel_shd.g_old_rec.cbr_elig_perd_end_dt;
640   End If;
641   If (p_rec.lee_rsn_id = hr_api.g_number) then
642     p_rec.lee_rsn_id :=
643     ben_pel_shd.g_old_rec.lee_rsn_id;
644   End If;
645   If (p_rec.enrt_perd_id = hr_api.g_number) then
646     p_rec.enrt_perd_id :=
647     ben_pel_shd.g_old_rec.enrt_perd_id;
648   End If;
649   If (p_rec.per_in_ler_id = hr_api.g_number) then
650     p_rec.per_in_ler_id :=
651     ben_pel_shd.g_old_rec.per_in_ler_id;
652   End If;
653   If (p_rec.pgm_id = hr_api.g_number) then
654     p_rec.pgm_id :=
655     ben_pel_shd.g_old_rec.pgm_id;
656   End If;
657   If (p_rec.pl_id = hr_api.g_number) then
658     p_rec.pl_id :=
659     ben_pel_shd.g_old_rec.pl_id;
660   End If;
661   If (p_rec.business_group_id = hr_api.g_number) then
662     p_rec.business_group_id :=
663     ben_pel_shd.g_old_rec.business_group_id;
664   End If;
665   If (p_rec.pel_attribute_category = hr_api.g_varchar2) then
666     p_rec.pel_attribute_category :=
667     ben_pel_shd.g_old_rec.pel_attribute_category;
668   End If;
669   If (p_rec.pel_attribute1 = hr_api.g_varchar2) then
670     p_rec.pel_attribute1 :=
671     ben_pel_shd.g_old_rec.pel_attribute1;
672   End If;
673   If (p_rec.pel_attribute2 = hr_api.g_varchar2) then
674     p_rec.pel_attribute2 :=
675     ben_pel_shd.g_old_rec.pel_attribute2;
676   End If;
677   If (p_rec.pel_attribute3 = hr_api.g_varchar2) then
678     p_rec.pel_attribute3 :=
679     ben_pel_shd.g_old_rec.pel_attribute3;
680   End If;
681   If (p_rec.pel_attribute4 = hr_api.g_varchar2) then
682     p_rec.pel_attribute4 :=
683     ben_pel_shd.g_old_rec.pel_attribute4;
684   End If;
685   If (p_rec.pel_attribute5 = hr_api.g_varchar2) then
686     p_rec.pel_attribute5 :=
687     ben_pel_shd.g_old_rec.pel_attribute5;
688   End If;
689   If (p_rec.pel_attribute6 = hr_api.g_varchar2) then
690     p_rec.pel_attribute6 :=
691     ben_pel_shd.g_old_rec.pel_attribute6;
692   End If;
693   If (p_rec.pel_attribute7 = hr_api.g_varchar2) then
694     p_rec.pel_attribute7 :=
695     ben_pel_shd.g_old_rec.pel_attribute7;
696   End If;
697   If (p_rec.pel_attribute8 = hr_api.g_varchar2) then
698     p_rec.pel_attribute8 :=
699     ben_pel_shd.g_old_rec.pel_attribute8;
700   End If;
701   If (p_rec.pel_attribute9 = hr_api.g_varchar2) then
702     p_rec.pel_attribute9 :=
703     ben_pel_shd.g_old_rec.pel_attribute9;
704   End If;
705   If (p_rec.pel_attribute10 = hr_api.g_varchar2) then
706     p_rec.pel_attribute10 :=
707     ben_pel_shd.g_old_rec.pel_attribute10;
708   End If;
709   If (p_rec.pel_attribute11 = hr_api.g_varchar2) then
710     p_rec.pel_attribute11 :=
711     ben_pel_shd.g_old_rec.pel_attribute11;
712   End If;
713   If (p_rec.pel_attribute12 = hr_api.g_varchar2) then
714     p_rec.pel_attribute12 :=
715     ben_pel_shd.g_old_rec.pel_attribute12;
716   End If;
717   If (p_rec.pel_attribute13 = hr_api.g_varchar2) then
718     p_rec.pel_attribute13 :=
719     ben_pel_shd.g_old_rec.pel_attribute13;
720   End If;
721   If (p_rec.pel_attribute14 = hr_api.g_varchar2) then
722     p_rec.pel_attribute14 :=
723     ben_pel_shd.g_old_rec.pel_attribute14;
724   End If;
725   If (p_rec.pel_attribute15 = hr_api.g_varchar2) then
726     p_rec.pel_attribute15 :=
727     ben_pel_shd.g_old_rec.pel_attribute15;
728   End If;
729   If (p_rec.pel_attribute16 = hr_api.g_varchar2) then
730     p_rec.pel_attribute16 :=
731     ben_pel_shd.g_old_rec.pel_attribute16;
732   End If;
733   If (p_rec.pel_attribute17 = hr_api.g_varchar2) then
734     p_rec.pel_attribute17 :=
735     ben_pel_shd.g_old_rec.pel_attribute17;
736   End If;
737   If (p_rec.pel_attribute18 = hr_api.g_varchar2) then
738     p_rec.pel_attribute18 :=
739     ben_pel_shd.g_old_rec.pel_attribute18;
740   End If;
741   If (p_rec.pel_attribute19 = hr_api.g_varchar2) then
742     p_rec.pel_attribute19 :=
743     ben_pel_shd.g_old_rec.pel_attribute19;
744   End If;
745   If (p_rec.pel_attribute20 = hr_api.g_varchar2) then
746     p_rec.pel_attribute20 :=
747     ben_pel_shd.g_old_rec.pel_attribute20;
748   End If;
749   If (p_rec.pel_attribute21 = hr_api.g_varchar2) then
750     p_rec.pel_attribute21 :=
751     ben_pel_shd.g_old_rec.pel_attribute21;
752   End If;
753   If (p_rec.pel_attribute22 = hr_api.g_varchar2) then
754     p_rec.pel_attribute22 :=
755     ben_pel_shd.g_old_rec.pel_attribute22;
756   End If;
757   If (p_rec.pel_attribute23 = hr_api.g_varchar2) then
758     p_rec.pel_attribute23 :=
759     ben_pel_shd.g_old_rec.pel_attribute23;
760   End If;
761   If (p_rec.pel_attribute24 = hr_api.g_varchar2) then
762     p_rec.pel_attribute24 :=
763     ben_pel_shd.g_old_rec.pel_attribute24;
764   End If;
765   If (p_rec.pel_attribute25 = hr_api.g_varchar2) then
766     p_rec.pel_attribute25 :=
767     ben_pel_shd.g_old_rec.pel_attribute25;
768   End If;
769   If (p_rec.pel_attribute26 = hr_api.g_varchar2) then
770     p_rec.pel_attribute26 :=
771     ben_pel_shd.g_old_rec.pel_attribute26;
772   End If;
773   If (p_rec.pel_attribute27 = hr_api.g_varchar2) then
774     p_rec.pel_attribute27 :=
775     ben_pel_shd.g_old_rec.pel_attribute27;
776   End If;
777   If (p_rec.pel_attribute28 = hr_api.g_varchar2) then
778     p_rec.pel_attribute28 :=
779     ben_pel_shd.g_old_rec.pel_attribute28;
780   End If;
781   If (p_rec.pel_attribute29 = hr_api.g_varchar2) then
782     p_rec.pel_attribute29 :=
783     ben_pel_shd.g_old_rec.pel_attribute29;
784   End If;
785   If (p_rec.pel_attribute30 = hr_api.g_varchar2) then
786     p_rec.pel_attribute30 :=
787     ben_pel_shd.g_old_rec.pel_attribute30;
788   End If;
789   If (p_rec.request_id = hr_api.g_number) then
790     p_rec.request_id :=
791     ben_pel_shd.g_old_rec.request_id;
792   End If;
793   If (p_rec.program_application_id = hr_api.g_number) then
794     p_rec.program_application_id :=
795     ben_pel_shd.g_old_rec.program_application_id;
796   End If;
797   If (p_rec.program_id = hr_api.g_number) then
798     p_rec.program_id :=
799     ben_pel_shd.g_old_rec.program_id;
800   End If;
801   If (p_rec.program_update_date = hr_api.g_date) then
802     p_rec.program_update_date :=
803     ben_pel_shd.g_old_rec.program_update_date;
804   End If;
805   If (p_rec.defer_deenrol_flag = hr_api.g_varchar2) then
806     p_rec.defer_deenrol_flag :=
807     ben_pel_shd.g_old_rec.defer_deenrol_flag;
808   End If;
809   If (p_rec.deenrol_made_dt = hr_api.g_date) then
810     p_rec.deenrol_made_dt :=
811     ben_pel_shd.g_old_rec.deenrol_made_dt;
812   End If;
813   --
814   hr_utility.set_location(' Leaving:'||l_proc, 10);
815 --
816 End convert_defs;
817 --
818 -- ----------------------------------------------------------------------------
819 -- |---------------------------------< upd >----------------------------------|
820 -- ----------------------------------------------------------------------------
821 Procedure upd
822   (
823   p_effective_date in date,
824   p_rec        in out nocopy ben_pel_shd.g_rec_type
825   ) is
826 --
827   l_proc  varchar2(72) := g_package||'upd';
828 --
829 Begin
830   hr_utility.set_location('Entering:'||l_proc, 5);
831   --
832   -- We must lock the row which we need to update.
833   --
834   ben_pel_shd.lck
835     (
836     p_rec.pil_elctbl_chc_popl_id,
837     p_rec.object_version_number
838     );
839   --
840   -- 1. During an update system defaults are used to determine if
841   --    arguments have been defaulted or not. We must therefore
842   --    derive the full record structure values to be updated.
843   --
844   -- 2. Call the supporting update validate operations.
845   --
846   convert_defs(p_rec);
847   ben_pel_bus.update_validate(p_rec
848   ,p_effective_date);
849   --
850   -- Call the supporting pre-update operation
851   --
852   pre_update(p_rec);
853   --
854   -- Update the row.
855   --
856   update_dml(p_rec);
857   --
858   -- Call the supporting post-update operation
859   --
860   post_update(
861 p_effective_date,p_rec);
862 
863     -- DBI - Added DBI Event Logging Hooks
864   /* Commented. Need to uncomment when DBI goes into mainline
865   5554590 : Enabled DBI logging into mainline */
866     if HRI_BPL_BEN_UTIL.enable_ben_col_evt_que then
867         HRI_OPL_BEN_ELCTN_EVNTS_EQ.update_event (p_rec => p_rec ,
868                                                  p_pil_rec => null,
869                                                  p_called_from => 'PEL' ,
870                                                  p_effective_date => p_effective_date,
871                                                  p_datetrack_mode => 'UPDATE' );
872     end if;
873 End upd;
874 --
875 -- ----------------------------------------------------------------------------
876 -- |---------------------------------< upd >----------------------------------|
877 -- ----------------------------------------------------------------------------
878 Procedure upd
879   (
880   p_effective_date in date,
881   p_pil_elctbl_chc_popl_id       in number,
882   p_dflt_enrt_dt                 in date             default hr_api.g_date,
883   p_dflt_asnd_dt                 in date             default hr_api.g_date,
884   p_elcns_made_dt                in date             default hr_api.g_date,
885   p_cls_enrt_dt_to_use_cd        in varchar2         default hr_api.g_varchar2,
886   p_enrt_typ_cycl_cd             in varchar2         default hr_api.g_varchar2,
887   p_enrt_perd_end_dt             in date             default hr_api.g_date,
888   p_enrt_perd_strt_dt            in date             default hr_api.g_date,
889   p_procg_end_dt                 in date             default hr_api.g_date,
890   p_pil_elctbl_popl_stat_cd      in varchar2         default hr_api.g_varchar2,
891   p_acty_ref_perd_cd             in varchar2         default hr_api.g_varchar2,
892   p_uom                          in varchar2         default hr_api.g_varchar2,
893   p_comments                          in varchar2         default hr_api.g_varchar2,
894   p_mgr_ovrid_dt                          in date         default hr_api.g_date,
895   p_ws_mgr_id                          in number         default hr_api.g_number,
896   p_mgr_ovrid_person_id                          in number         default hr_api.g_number,
897   p_assignment_id                          in number         default hr_api.g_number,
898   --cwb
899   p_bdgt_acc_cd                in varchar2         default hr_api.g_varchar2,
900   p_pop_cd                     in varchar2         default hr_api.g_varchar2,
901   p_bdgt_due_dt                in date             default hr_api.g_date,
902   p_bdgt_export_flag           in varchar2         default hr_api.g_varchar2,
903   p_bdgt_iss_dt                in date             default hr_api.g_date,
904   p_bdgt_stat_cd               in varchar2         default hr_api.g_varchar2,
905   p_ws_acc_cd                  in varchar2         default hr_api.g_varchar2,
906   p_ws_due_dt                  in date             default hr_api.g_date,
907   p_ws_export_flag             in varchar2         default hr_api.g_varchar2,
908   p_ws_iss_dt                  in date             default hr_api.g_date,
909   p_ws_stat_cd                 in varchar2         default hr_api.g_varchar2,
910   --cwb
911   p_reinstate_cd               in varchar2         default hr_api.g_varchar2,
912   p_reinstate_ovrdn_cd         in varchar2         default hr_api.g_varchar2,
913   p_auto_asnd_dt                 in date             default hr_api.g_date,
914   p_cbr_elig_perd_strt_dt        in date             default hr_api.g_date,
915   p_cbr_elig_perd_end_dt         in date             default hr_api.g_date,
916   p_lee_rsn_id                   in number           default hr_api.g_number,
917   p_enrt_perd_id                 in number           default hr_api.g_number,
918   p_per_in_ler_id                in number           default hr_api.g_number,
919   p_pgm_id                       in number           default hr_api.g_number,
920   p_pl_id                        in number           default hr_api.g_number,
921   p_business_group_id            in number           default hr_api.g_number,
922   p_pel_attribute_category       in varchar2         default hr_api.g_varchar2,
923   p_pel_attribute1               in varchar2         default hr_api.g_varchar2,
924   p_pel_attribute2               in varchar2         default hr_api.g_varchar2,
925   p_pel_attribute3               in varchar2         default hr_api.g_varchar2,
926   p_pel_attribute4               in varchar2         default hr_api.g_varchar2,
927   p_pel_attribute5               in varchar2         default hr_api.g_varchar2,
928   p_pel_attribute6               in varchar2         default hr_api.g_varchar2,
929   p_pel_attribute7               in varchar2         default hr_api.g_varchar2,
930   p_pel_attribute8               in varchar2         default hr_api.g_varchar2,
931   p_pel_attribute9               in varchar2         default hr_api.g_varchar2,
932   p_pel_attribute10              in varchar2         default hr_api.g_varchar2,
933   p_pel_attribute11              in varchar2         default hr_api.g_varchar2,
934   p_pel_attribute12              in varchar2         default hr_api.g_varchar2,
935   p_pel_attribute13              in varchar2         default hr_api.g_varchar2,
936   p_pel_attribute14              in varchar2         default hr_api.g_varchar2,
937   p_pel_attribute15              in varchar2         default hr_api.g_varchar2,
938   p_pel_attribute16              in varchar2         default hr_api.g_varchar2,
939   p_pel_attribute17              in varchar2         default hr_api.g_varchar2,
940   p_pel_attribute18              in varchar2         default hr_api.g_varchar2,
941   p_pel_attribute19              in varchar2         default hr_api.g_varchar2,
942   p_pel_attribute20              in varchar2         default hr_api.g_varchar2,
943   p_pel_attribute21              in varchar2         default hr_api.g_varchar2,
944   p_pel_attribute22              in varchar2         default hr_api.g_varchar2,
945   p_pel_attribute23              in varchar2         default hr_api.g_varchar2,
946   p_pel_attribute24              in varchar2         default hr_api.g_varchar2,
947   p_pel_attribute25              in varchar2         default hr_api.g_varchar2,
948   p_pel_attribute26              in varchar2         default hr_api.g_varchar2,
949   p_pel_attribute27              in varchar2         default hr_api.g_varchar2,
950   p_pel_attribute28              in varchar2         default hr_api.g_varchar2,
951   p_pel_attribute29              in varchar2         default hr_api.g_varchar2,
952   p_pel_attribute30              in varchar2         default hr_api.g_varchar2,
953   p_request_id                   in number           default hr_api.g_number,
954   p_program_application_id       in number           default hr_api.g_number,
955   p_program_id                   in number           default hr_api.g_number,
956   p_program_update_date          in date             default hr_api.g_date,
957   p_object_version_number        in out nocopy number,
958   p_defer_deenrol_flag           in varchar2         default hr_api.g_varchar2,
959   p_deenrol_made_dt              in date             default hr_api.g_date
960   ) is
961 --
962   l_rec   ben_pel_shd.g_rec_type;
963   l_proc  varchar2(72) := g_package||'upd';
964 --
965 Begin
966   hr_utility.set_location('Entering:'||l_proc, 5);
967   --
968   -- Call conversion function to turn arguments into the
969   -- l_rec structure.
970   --
971   l_rec :=
972   ben_pel_shd.convert_args
973   (
974   p_pil_elctbl_chc_popl_id,
975   p_dflt_enrt_dt,
976   p_dflt_asnd_dt,
977   p_elcns_made_dt,
978   p_cls_enrt_dt_to_use_cd,
979   p_enrt_typ_cycl_cd,
980   p_enrt_perd_end_dt,
981   p_enrt_perd_strt_dt,
982   p_procg_end_dt,
983   p_pil_elctbl_popl_stat_cd,
984   p_acty_ref_perd_cd,
985   p_uom,
986   p_comments,
987   p_mgr_ovrid_dt,
988   p_ws_mgr_id,
989   p_mgr_ovrid_person_id,
990   p_assignment_id,
991   --cwb
992   p_bdgt_acc_cd,
993   p_pop_cd,
994   p_bdgt_due_dt,
995   p_bdgt_export_flag,
996   p_bdgt_iss_dt,
997   p_bdgt_stat_cd,
998   p_ws_acc_cd,
999   p_ws_due_dt,
1000   p_ws_export_flag,
1001   p_ws_iss_dt,
1002   p_ws_stat_cd,
1003   --cwb
1004   p_reinstate_cd,
1005   p_reinstate_ovrdn_cd,
1006   p_auto_asnd_dt,
1007   p_cbr_elig_perd_strt_dt,
1008   p_cbr_elig_perd_end_dt,
1009   p_lee_rsn_id,
1010   p_enrt_perd_id,
1011   p_per_in_ler_id,
1012   p_pgm_id,
1013   p_pl_id,
1014   p_business_group_id,
1015   p_pel_attribute_category,
1016   p_pel_attribute1,
1017   p_pel_attribute2,
1018   p_pel_attribute3,
1019   p_pel_attribute4,
1020   p_pel_attribute5,
1021   p_pel_attribute6,
1022   p_pel_attribute7,
1023   p_pel_attribute8,
1024   p_pel_attribute9,
1025   p_pel_attribute10,
1026   p_pel_attribute11,
1027   p_pel_attribute12,
1028   p_pel_attribute13,
1029   p_pel_attribute14,
1030   p_pel_attribute15,
1031   p_pel_attribute16,
1032   p_pel_attribute17,
1033   p_pel_attribute18,
1034   p_pel_attribute19,
1035   p_pel_attribute20,
1036   p_pel_attribute21,
1037   p_pel_attribute22,
1038   p_pel_attribute23,
1039   p_pel_attribute24,
1040   p_pel_attribute25,
1041   p_pel_attribute26,
1042   p_pel_attribute27,
1043   p_pel_attribute28,
1044   p_pel_attribute29,
1045   p_pel_attribute30,
1046   p_request_id,
1047   p_program_application_id,
1048   p_program_id,
1049   p_program_update_date,
1050   p_object_version_number,
1051   p_defer_deenrol_flag,
1052   p_deenrol_made_dt
1053   );
1054   --
1055   -- Having converted the arguments into the
1056   -- plsql record structure we call the corresponding record
1057   -- business process.
1058   --
1059   upd(
1060     p_effective_date,l_rec);
1061   p_object_version_number := l_rec.object_version_number;
1062   --
1063   hr_utility.set_location(' Leaving:'||l_proc, 10);
1064 End upd;
1065 --
1066 end ben_pel_upd;