DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_ENP_UPD

Source


1 Package Body ben_enp_upd as
2 /* $Header: beenprhi.pkb 120.4.12020000.2 2012/07/03 12:09:48 amnaraya ship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  ben_enp_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_enp_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_enp_shd.g_api_dml := true;  -- Set the api dml status
66   --
67   -- Update the ben_enrt_perd Row
68   --
69   update ben_enrt_perd
70   set
71   enrt_perd_id                      = p_rec.enrt_perd_id,
72   business_group_id                 = p_rec.business_group_id,
73   yr_perd_id                        = p_rec.yr_perd_id,
74   popl_enrt_typ_cycl_id             = p_rec.popl_enrt_typ_cycl_id,
75   end_dt                            = p_rec.end_dt,
76   strt_dt                           = p_rec.strt_dt,
77   asnd_lf_evt_dt                    = p_rec.asnd_lf_evt_dt,
78   cls_enrt_dt_to_use_cd             = p_rec.cls_enrt_dt_to_use_cd,
79   dflt_enrt_dt                      = p_rec.dflt_enrt_dt,
80   enrt_cvg_strt_dt_cd               = p_rec.enrt_cvg_strt_dt_cd,
81   rt_strt_dt_rl                     = p_rec.rt_strt_dt_rl,
82   enrt_cvg_end_dt_cd                = p_rec.enrt_cvg_end_dt_cd,
83   enrt_cvg_strt_dt_rl               = p_rec.enrt_cvg_strt_dt_rl,
84   enrt_cvg_end_dt_rl                = p_rec.enrt_cvg_end_dt_rl,
85   procg_end_dt                      = p_rec.procg_end_dt,
86   rt_strt_dt_cd                     = p_rec.rt_strt_dt_cd,
87   rt_end_dt_cd                      = p_rec.rt_end_dt_cd,
88   rt_end_dt_rl                      = p_rec.rt_end_dt_rl,
89   bdgt_upd_strt_dt                  = p_rec.bdgt_upd_strt_dt,
90   bdgt_upd_end_dt                   = p_rec.bdgt_upd_end_dt,
91   ws_upd_strt_dt                    = p_rec.ws_upd_strt_dt,
92   ws_upd_end_dt                     = p_rec.ws_upd_end_dt,
93   dflt_ws_acc_cd                    = p_rec.dflt_ws_acc_cd,
94   prsvr_bdgt_cd                     = p_rec.prsvr_bdgt_cd,
95   uses_bdgt_flag                    = p_rec.uses_bdgt_flag,
96   auto_distr_flag                   = p_rec.auto_distr_flag,
97   hrchy_to_use_cd                   = p_rec.hrchy_to_use_cd,
98   pos_structure_version_id             = p_rec.pos_structure_version_id,
99   emp_interview_type_cd             = p_rec.emp_interview_type_cd,
100   wthn_yr_perd_id                   = p_rec.wthn_yr_perd_id,
101   ler_id                            = p_rec.ler_id,
102   perf_revw_strt_dt                 = p_rec.perf_revw_strt_dt,
103   asg_updt_eff_date                 = p_rec.asg_updt_eff_date,
104   enp_attribute_category            = p_rec.enp_attribute_category,
105   enp_attribute1                    = p_rec.enp_attribute1,
106   enp_attribute2                    = p_rec.enp_attribute2,
107   enp_attribute3                    = p_rec.enp_attribute3,
108   enp_attribute4                    = p_rec.enp_attribute4,
109   enp_attribute5                    = p_rec.enp_attribute5,
110   enp_attribute6                    = p_rec.enp_attribute6,
111   enp_attribute7                    = p_rec.enp_attribute7,
112   enp_attribute8                    = p_rec.enp_attribute8,
113   enp_attribute9                    = p_rec.enp_attribute9,
114   enp_attribute10                   = p_rec.enp_attribute10,
115   enp_attribute11                   = p_rec.enp_attribute11,
116   enp_attribute12                   = p_rec.enp_attribute12,
117   enp_attribute13                   = p_rec.enp_attribute13,
118   enp_attribute14                   = p_rec.enp_attribute14,
119   enp_attribute15                   = p_rec.enp_attribute15,
120   enp_attribute16                   = p_rec.enp_attribute16,
121   enp_attribute17                   = p_rec.enp_attribute17,
122   enp_attribute18                   = p_rec.enp_attribute18,
123   enp_attribute19                   = p_rec.enp_attribute19,
124   enp_attribute20                   = p_rec.enp_attribute20,
125   enp_attribute21                   = p_rec.enp_attribute21,
126   enp_attribute22                   = p_rec.enp_attribute22,
127   enp_attribute23                   = p_rec.enp_attribute23,
128   enp_attribute24                   = p_rec.enp_attribute24,
129   enp_attribute25                   = p_rec.enp_attribute25,
130   enp_attribute26                   = p_rec.enp_attribute26,
131   enp_attribute27                   = p_rec.enp_attribute27,
132   enp_attribute28                   = p_rec.enp_attribute28,
133   enp_attribute29                   = p_rec.enp_attribute29,
134   enp_attribute30                   = p_rec.enp_attribute30,
135   enrt_perd_det_ovrlp_bckdt_cd      = p_rec.enrt_perd_det_ovrlp_bckdt_cd,
136       --cwb
137   data_freeze_date                = p_rec.data_freeze_date,
138   Sal_chg_reason_cd               = p_rec.Sal_chg_reason_cd,
139   Approval_mode_cd                = p_rec.Approval_mode_cd,
140   hrchy_ame_trn_cd                = p_rec.hrchy_ame_trn_cd,
141   hrchy_rl                        = p_rec.hrchy_rl,
142   hrchy_ame_app_id                = p_rec.hrchy_ame_app_id,
143   --
144   object_version_number           = p_rec.object_version_number ,
145   reinstate_cd			  = p_rec.reinstate_cd,
146   reinstate_ovrdn_cd		  = p_rec.reinstate_ovrdn_cd,
147   reopen_le_on_reprocess          = p_rec.reopen_le_on_reprocess,
148   defer_deenrol_flag		  = p_rec.defer_deenrol_flag
149   where enrt_perd_id = p_rec.enrt_perd_id;
150   --
151   ben_enp_shd.g_api_dml := false;   -- Unset the api dml status
152   --
153   hr_utility.set_location(' Leaving:'||l_proc, 10);
154 --
155 Exception
156   When hr_api.check_integrity_violated Then
157     -- A check constraint has been violated
158     ben_enp_shd.g_api_dml := false;   -- Unset the api dml status
159     ben_enp_shd.constraint_error
160       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
161   When hr_api.parent_integrity_violated Then
162     -- Parent integrity has been violated
163     ben_enp_shd.g_api_dml := false;   -- Unset the api dml status
164     ben_enp_shd.constraint_error
165       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
166   When hr_api.unique_integrity_violated Then
167     -- Unique integrity has been violated
168     ben_enp_shd.g_api_dml := false;   -- Unset the api dml status
169     ben_enp_shd.constraint_error
170       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
171   When Others Then
172     ben_enp_shd.g_api_dml := false;   -- Unset the api dml status
173     Raise;
174 End update_dml;
175 --
176 -- ----------------------------------------------------------------------------
177 -- |------------------------------< pre_update >------------------------------|
178 -- ----------------------------------------------------------------------------
179 -- {Start Of Comments}
180 --
181 -- Description:
182 --   This private procedure contains any processing which is required before
183 --   the update dml.
184 --
185 -- Prerequisites:
186 --   This is an internal procedure which is called from the upd procedure.
187 --
188 -- In Parameters:
189 --   A Pl/Sql record structre.
190 --
191 -- Post Success:
192 --   Processing continues.
193 --
194 -- Post Failure:
195 --   If an error has occurred, an error message and exception will be raised
196 --   but not handled.
197 --
198 -- Developer Implementation Notes:
199 --   Any pre-processing required before the update dml is issued should be
200 --   coded within this procedure. It is important to note that any 3rd party
201 --   maintenance should be reviewed before placing in this procedure.
202 --
203 -- Access Status:
204 --   Internal Row Handler Use Only.
205 --
206 -- {End Of Comments}
207 -- ----------------------------------------------------------------------------
208 Procedure pre_update(p_rec in ben_enp_shd.g_rec_type) is
209 --
210   l_proc  varchar2(72) := g_package||'pre_update';
211 --
212 Begin
213   hr_utility.set_location('Entering:'||l_proc, 5);
214   --
215   hr_utility.set_location(' Leaving:'||l_proc, 10);
216 End pre_update;
217 --
218 -- ----------------------------------------------------------------------------
219 -- |-----------------------------< post_update >------------------------------|
220 -- ----------------------------------------------------------------------------
221 -- {Start Of Comments}
222 --
223 -- Description:
224 --   This private procedure contains any processing which is required after the
225 --   update dml.
226 --
227 -- Prerequisites:
228 --   This is an internal procedure which is called from the upd procedure.
229 --
230 -- In Parameters:
231 --   A Pl/Sql record structre.
232 --
233 -- Post Success:
234 --   Processing continues.
235 --
236 -- Post Failure:
237 --   If an error has occurred, an error message and exception will be raised
238 --   but not handled.
239 --
240 -- Developer Implementation Notes:
241 --   Any post-processing required after the update dml is issued should be
242 --   coded within this procedure. It is important to note that any 3rd party
243 --   maintenance should be reviewed before placing in this procedure.
244 --
245 -- Access Status:
246 --   Internal Row Handler Use Only.
247 --
248 -- {End Of Comments}
249 -- ----------------------------------------------------------------------------
250 Procedure post_update(
251 p_effective_date in date,p_rec in ben_enp_shd.g_rec_type) is
252 --
253   l_proc  varchar2(72) := g_package||'post_update';
254 --
255 Begin
256   hr_utility.set_location('Entering:'||l_proc, 5);
257 --
258   --
259   -- Start of API User Hook for post_update.
260   --
261   begin
262     --
263     ben_enp_rku.after_update
264       (
265   p_enrt_perd_id                  =>p_rec.enrt_perd_id
266  ,p_business_group_id             =>p_rec.business_group_id
267  ,p_yr_perd_id                    =>p_rec.yr_perd_id
268  ,p_popl_enrt_typ_cycl_id         =>p_rec.popl_enrt_typ_cycl_id
269  ,p_end_dt                        =>p_rec.end_dt
270  ,p_strt_dt                       =>p_rec.strt_dt
271  ,p_asnd_lf_evt_dt                =>p_rec.asnd_lf_evt_dt
272  ,p_cls_enrt_dt_to_use_cd         =>p_rec.cls_enrt_dt_to_use_cd
273  ,p_dflt_enrt_dt                  =>p_rec.dflt_enrt_dt
274  ,p_enrt_cvg_strt_dt_cd           =>p_rec.enrt_cvg_strt_dt_cd
275  ,p_rt_strt_dt_rl                 =>p_rec.rt_strt_dt_rl
276  ,p_enrt_cvg_end_dt_cd            =>p_rec.enrt_cvg_end_dt_cd
277  ,p_enrt_cvg_strt_dt_rl           =>p_rec.enrt_cvg_strt_dt_rl
278  ,p_enrt_cvg_end_dt_rl            =>p_rec.enrt_cvg_end_dt_rl
279  ,p_procg_end_dt                  =>p_rec.procg_end_dt
280  ,p_rt_strt_dt_cd                 =>p_rec.rt_strt_dt_cd
281  ,p_rt_end_dt_cd                  =>p_rec.rt_end_dt_cd
282  ,p_rt_end_dt_rl                  =>p_rec.rt_end_dt_rl
283  ,p_bdgt_upd_strt_dt              =>p_rec.bdgt_upd_strt_dt
284  ,p_bdgt_upd_end_dt               =>p_rec.bdgt_upd_end_dt
285  ,p_ws_upd_strt_dt                =>p_rec.ws_upd_strt_dt
286  ,p_ws_upd_end_dt                 =>p_rec.ws_upd_end_dt
287  ,p_dflt_ws_acc_cd                =>p_rec.dflt_ws_acc_cd
288  ,p_prsvr_bdgt_cd                 =>p_rec.prsvr_bdgt_cd
289  ,p_uses_bdgt_flag                =>p_rec.uses_bdgt_flag
290  ,p_auto_distr_flag               =>p_rec.auto_distr_flag
291  ,p_hrchy_to_use_cd               =>p_rec.hrchy_to_use_cd
292  ,p_pos_structure_version_id         =>p_rec.pos_structure_version_id
293  ,p_emp_interview_type_cd         =>p_rec.emp_interview_type_cd
294  ,p_wthn_yr_perd_id               =>p_rec.wthn_yr_perd_id
295  ,p_ler_id                        =>p_rec.ler_id
296  ,p_perf_revw_strt_dt             =>p_rec.perf_revw_strt_dt
297  ,p_asg_updt_eff_date             =>p_rec.asg_updt_eff_date
298  ,p_enp_attribute_category        =>p_rec.enp_attribute_category
299  ,p_enp_attribute1                =>p_rec.enp_attribute1
300  ,p_enp_attribute2                =>p_rec.enp_attribute2
301  ,p_enp_attribute3                =>p_rec.enp_attribute3
302  ,p_enp_attribute4                =>p_rec.enp_attribute4
303  ,p_enp_attribute5                =>p_rec.enp_attribute5
304  ,p_enp_attribute6                =>p_rec.enp_attribute6
305  ,p_enp_attribute7                =>p_rec.enp_attribute7
306  ,p_enp_attribute8                =>p_rec.enp_attribute8
307  ,p_enp_attribute9                =>p_rec.enp_attribute9
308  ,p_enp_attribute10               =>p_rec.enp_attribute10
309  ,p_enp_attribute11               =>p_rec.enp_attribute11
310  ,p_enp_attribute12               =>p_rec.enp_attribute12
311  ,p_enp_attribute13               =>p_rec.enp_attribute13
312  ,p_enp_attribute14               =>p_rec.enp_attribute14
313  ,p_enp_attribute15               =>p_rec.enp_attribute15
314  ,p_enp_attribute16               =>p_rec.enp_attribute16
315  ,p_enp_attribute17               =>p_rec.enp_attribute17
316  ,p_enp_attribute18               =>p_rec.enp_attribute18
317  ,p_enp_attribute19               =>p_rec.enp_attribute19
318  ,p_enp_attribute20               =>p_rec.enp_attribute20
319  ,p_enp_attribute21               =>p_rec.enp_attribute21
320  ,p_enp_attribute22               =>p_rec.enp_attribute22
321  ,p_enp_attribute23               =>p_rec.enp_attribute23
322  ,p_enp_attribute24               =>p_rec.enp_attribute24
323  ,p_enp_attribute25               =>p_rec.enp_attribute25
324  ,p_enp_attribute26               =>p_rec.enp_attribute26
325  ,p_enp_attribute27               =>p_rec.enp_attribute27
326  ,p_enp_attribute28               =>p_rec.enp_attribute28
327  ,p_enp_attribute29               =>p_rec.enp_attribute29
328  ,p_enp_attribute30               =>p_rec.enp_attribute30
329  ,p_enrt_perd_det_ovrlp_bckdt_cd  =>p_rec.enrt_perd_det_ovrlp_bckdt_cd
330   --cwb
331  ,p_data_freeze_date              =>p_rec.data_freeze_date
332  ,p_Sal_chg_reason_cd             =>p_rec.Sal_chg_reason_cd
333  ,p_Approval_mode_cd              =>p_rec.Approval_mode_cd
334  ,p_hrchy_ame_trn_cd              =>p_rec.hrchy_ame_trn_cd
335  ,p_hrchy_rl                      =>p_rec.hrchy_rl
336  ,p_hrchy_ame_app_id              =>p_rec.hrchy_ame_app_id
337   --
338  ,p_object_version_number         =>p_rec.object_version_number
339   ,p_reinstate_cd				=>	p_rec.reinstate_cd
340   ,p_reinstate_ovrdn_cd		=>    p_rec.reinstate_ovrdn_cd
341   ,p_reopen_le_on_reprocess     =>    p_rec.reopen_le_on_reprocess
342  ,p_effective_date                =>p_effective_date
343  ,p_defer_deenrol_flag         => p_rec.defer_deenrol_flag
344  ,p_business_group_id_o           =>ben_enp_shd.g_old_rec.business_group_id
345  ,p_yr_perd_id_o                  =>ben_enp_shd.g_old_rec.yr_perd_id
346  ,p_popl_enrt_typ_cycl_id_o       =>ben_enp_shd.g_old_rec.popl_enrt_typ_cycl_id
347  ,p_end_dt_o                      =>ben_enp_shd.g_old_rec.end_dt
348  ,p_strt_dt_o                     =>ben_enp_shd.g_old_rec.strt_dt
349  ,p_asnd_lf_evt_dt_o                =>ben_enp_shd.g_old_rec.asnd_lf_evt_dt
350  ,p_cls_enrt_dt_to_use_cd_o       =>ben_enp_shd.g_old_rec.cls_enrt_dt_to_use_cd
351  ,p_dflt_enrt_dt_o                =>ben_enp_shd.g_old_rec.dflt_enrt_dt
352  ,p_enrt_cvg_strt_dt_cd_o         =>ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_cd
353  ,p_rt_strt_dt_rl_o               =>ben_enp_shd.g_old_rec.rt_strt_dt_rl
354  ,p_enrt_cvg_end_dt_cd_o          =>ben_enp_shd.g_old_rec.enrt_cvg_end_dt_cd
355  ,p_enrt_cvg_strt_dt_rl_o         =>ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_rl
356  ,p_enrt_cvg_end_dt_rl_o          =>ben_enp_shd.g_old_rec.enrt_cvg_end_dt_rl
357  ,p_procg_end_dt_o                =>ben_enp_shd.g_old_rec.procg_end_dt
358  ,p_rt_strt_dt_cd_o               =>ben_enp_shd.g_old_rec.rt_strt_dt_cd
359  ,p_rt_end_dt_cd_o                =>ben_enp_shd.g_old_rec.rt_end_dt_cd
360  ,p_rt_end_dt_rl_o                =>ben_enp_shd.g_old_rec.rt_end_dt_rl
361  ,p_bdgt_upd_strt_dt_o            =>ben_enp_shd.g_old_rec.bdgt_upd_strt_dt
362  ,p_bdgt_upd_end_dt_o             =>ben_enp_shd.g_old_rec.bdgt_upd_end_dt
363  ,p_ws_upd_strt_dt_o              =>ben_enp_shd.g_old_rec.ws_upd_strt_dt
364  ,p_ws_upd_end_dt_o               =>ben_enp_shd.g_old_rec.ws_upd_end_dt
365  ,p_dflt_ws_acc_cd_o              =>ben_enp_shd.g_old_rec.dflt_ws_acc_cd
366  ,p_prsvr_bdgt_cd_o               =>ben_enp_shd.g_old_rec.prsvr_bdgt_cd
367  ,p_uses_bdgt_flag_o              =>ben_enp_shd.g_old_rec.uses_bdgt_flag
368  ,p_auto_distr_flag_o             =>ben_enp_shd.g_old_rec.auto_distr_flag
369  ,p_hrchy_to_use_cd_o             =>ben_enp_shd.g_old_rec.hrchy_to_use_cd
370  ,p_pos_structure_version_id_o       =>ben_enp_shd.g_old_rec.pos_structure_version_id
371  ,p_emp_interview_type_cd_o       =>ben_enp_shd.g_old_rec.emp_interview_type_cd
372  ,p_wthn_yr_perd_id_o             =>ben_enp_shd.g_old_rec.wthn_yr_perd_id
373  ,p_ler_id_o                      =>ben_enp_shd.g_old_rec.ler_id
374  ,p_perf_revw_strt_dt_o           =>ben_enp_shd.g_old_rec.perf_revw_strt_dt
375  ,p_asg_updt_eff_date_o           =>ben_enp_shd.g_old_rec.asg_updt_eff_date
376  ,p_enp_attribute_category_o      =>ben_enp_shd.g_old_rec.enp_attribute_category
377  ,p_enp_attribute1_o              =>ben_enp_shd.g_old_rec.enp_attribute1
378  ,p_enp_attribute2_o              =>ben_enp_shd.g_old_rec.enp_attribute2
379  ,p_enp_attribute3_o              =>ben_enp_shd.g_old_rec.enp_attribute3
380  ,p_enp_attribute4_o              =>ben_enp_shd.g_old_rec.enp_attribute4
381  ,p_enp_attribute5_o              =>ben_enp_shd.g_old_rec.enp_attribute5
382  ,p_enp_attribute6_o              =>ben_enp_shd.g_old_rec.enp_attribute6
383  ,p_enp_attribute7_o              =>ben_enp_shd.g_old_rec.enp_attribute7
384  ,p_enp_attribute8_o              =>ben_enp_shd.g_old_rec.enp_attribute8
385  ,p_enp_attribute9_o              =>ben_enp_shd.g_old_rec.enp_attribute9
386  ,p_enp_attribute10_o             =>ben_enp_shd.g_old_rec.enp_attribute10
387  ,p_enp_attribute11_o             =>ben_enp_shd.g_old_rec.enp_attribute11
388  ,p_enp_attribute12_o             =>ben_enp_shd.g_old_rec.enp_attribute12
389  ,p_enp_attribute13_o             =>ben_enp_shd.g_old_rec.enp_attribute13
390  ,p_enp_attribute14_o             =>ben_enp_shd.g_old_rec.enp_attribute14
391  ,p_enp_attribute15_o             =>ben_enp_shd.g_old_rec.enp_attribute15
392  ,p_enp_attribute16_o             =>ben_enp_shd.g_old_rec.enp_attribute16
393  ,p_enp_attribute17_o             =>ben_enp_shd.g_old_rec.enp_attribute17
394  ,p_enp_attribute18_o             =>ben_enp_shd.g_old_rec.enp_attribute18
395  ,p_enp_attribute19_o             =>ben_enp_shd.g_old_rec.enp_attribute19
396  ,p_enp_attribute20_o             =>ben_enp_shd.g_old_rec.enp_attribute20
397  ,p_enp_attribute21_o             =>ben_enp_shd.g_old_rec.enp_attribute21
398  ,p_enp_attribute22_o             =>ben_enp_shd.g_old_rec.enp_attribute22
399  ,p_enp_attribute23_o             =>ben_enp_shd.g_old_rec.enp_attribute23
400  ,p_enp_attribute24_o             =>ben_enp_shd.g_old_rec.enp_attribute24
401  ,p_enp_attribute25_o             =>ben_enp_shd.g_old_rec.enp_attribute25
402  ,p_enp_attribute26_o             =>ben_enp_shd.g_old_rec.enp_attribute26
403  ,p_enp_attribute27_o             =>ben_enp_shd.g_old_rec.enp_attribute27
404  ,p_enp_attribute28_o             =>ben_enp_shd.g_old_rec.enp_attribute28
405  ,p_enp_attribute29_o             =>ben_enp_shd.g_old_rec.enp_attribute29
406  ,p_enp_attribute30_o             =>ben_enp_shd.g_old_rec.enp_attribute30
407  --,p_enrt_perd_det_ovrlp_bckdt_cd_o             =>ben_enp_shd.g_old_rec.enrt_perd_det_ovrlp_bckdt_cd
408  ,p_enrt_perd_det_ovrlp_cd_o             =>ben_enp_shd.g_old_rec.enrt_perd_det_ovrlp_bckdt_cd
409    --cwb
410  ,p_data_freeze_date_o             =>ben_enp_shd.g_old_rec.data_freeze_date
411  ,p_Sal_chg_reason_cd_o            =>ben_enp_shd.g_old_rec.Sal_chg_reason_cd
412  ,p_Approval_mode_cd_o             =>ben_enp_shd.g_old_rec.Approval_mode_cd
413  ,p_hrchy_ame_trn_cd_o             =>ben_enp_shd.g_old_rec.hrchy_ame_trn_cd
414  ,p_hrchy_rl_o                     =>ben_enp_shd.g_old_rec.hrchy_rl
415  ,p_hrchy_ame_app_id_o             =>ben_enp_shd.g_old_rec.hrchy_ame_app_id
416   --
417  ,p_object_version_number_o       =>ben_enp_shd.g_old_rec.object_version_number
418   ,p_reinstate_cd_o				=>	ben_enp_shd.g_old_rec.reinstate_cd
419   ,p_reinstate_ovrdn_cd_o		=>    ben_enp_shd.g_old_rec.reinstate_ovrdn_cd
420   ,p_reopen_le_on_reprocess_o             =>    ben_enp_shd.g_old_rec.reopen_le_on_reprocess
421  ,p_defer_deenrol_flag_o                => ben_enp_shd.g_old_rec.defer_deenrol_flag
422 
423       );
424     --
425   exception
426     --
427     when hr_api.cannot_find_prog_unit then
428       --
429       hr_api.cannot_find_prog_unit_error
430         (p_module_name => 'ben_enrt_perd'
431         ,p_hook_type   => 'AU');
432       --
433   end;
434   --
435   -- End of API User Hook for post_update.
436   --
437   --
438   hr_utility.set_location(' Leaving:'||l_proc, 10);
439 End post_update;
440 --
441 -- ----------------------------------------------------------------------------
442 -- |-----------------------------< convert_defs >-----------------------------|
443 -- ----------------------------------------------------------------------------
444 -- {Start Of Comments}
445 --
446 -- Description:
447 --   The Convert_Defs procedure has one very important function:
448 --   It must return the record structure for the row with all system defaulted
449 --   values converted into its corresponding parameter value for update. When
450 --   we attempt to update a row through the Upd process , certain
451 --   parameters can be defaulted which enables flexibility in the calling of
452 --   the upd process (e.g. only attributes which need to be updated need to be
453 --   specified). For the upd process to determine which attributes
454 --   have NOT been specified we need to check if the parameter has a reserved
455 --   system default value. Therefore, for all parameters which have a
456 --   corresponding reserved system default mechanism specified we need to
457 --   check if a system default is being used. If a system default is being
458 --   used then we convert the defaulted value into its corresponding attribute
459 --   value held in the g_old_rec data structure.
460 --
461 -- Prerequisites:
462 --   This private function can only be called from the upd process.
463 --
464 -- In Parameters:
465 --   A Pl/Sql record structre.
466 --
467 -- Post Success:
468 --   The record structure will be returned with all system defaulted parameter
469 --   values converted into its current row attribute value.
470 --
471 -- Post Failure:
472 --   No direct error handling is required within this function. Any possible
473 --   errors within this procedure will be a PL/SQL value error due to conversion
474 --   of datatypes or data lengths.
475 --
476 -- Developer Implementation Notes:
477 --   None.
478 --
479 -- Access Status:
480 --   Internal Row Handler Use Only.
481 --
482 -- {End Of Comments}
483 -- ----------------------------------------------------------------------------
484 Procedure convert_defs(p_rec in out nocopy ben_enp_shd.g_rec_type) is
485 --
486   l_proc  varchar2(72) := g_package||'convert_defs';
487 --
488 Begin
489   --
490   hr_utility.set_location('Entering:'||l_proc, 5);
491   --
492   -- We must now examine each argument value in the
493   -- p_rec plsql record structure
494   -- to see if a system default is being used. If a system default
495   -- is being used then we must set to the 'current' argument value.
496   --
497   If (p_rec.business_group_id = hr_api.g_number) then
498     p_rec.business_group_id :=
499     ben_enp_shd.g_old_rec.business_group_id;
500   End If;
501   If (p_rec.yr_perd_id = hr_api.g_number) then
502     p_rec.yr_perd_id :=
503     ben_enp_shd.g_old_rec.yr_perd_id;
504   End If;
505   If (p_rec.popl_enrt_typ_cycl_id = hr_api.g_number) then
506     p_rec.popl_enrt_typ_cycl_id :=
507     ben_enp_shd.g_old_rec.popl_enrt_typ_cycl_id;
508   End If;
509   If (p_rec.end_dt = hr_api.g_date) then
510     p_rec.end_dt :=
511     ben_enp_shd.g_old_rec.end_dt;
512   End If;
513   If (p_rec.strt_dt = hr_api.g_date) then
514     p_rec.strt_dt :=
515     ben_enp_shd.g_old_rec.strt_dt;
516   End If;
517   If (p_rec.asnd_lf_evt_dt = hr_api.g_date) then
518     p_rec.asnd_lf_evt_dt :=
519     ben_enp_shd.g_old_rec.asnd_lf_evt_dt;
520   End If;
521   If (p_rec.cls_enrt_dt_to_use_cd = hr_api.g_varchar2) then
522     p_rec.cls_enrt_dt_to_use_cd :=
523     ben_enp_shd.g_old_rec.cls_enrt_dt_to_use_cd;
524   End If;
525   If (p_rec.dflt_enrt_dt = hr_api.g_date) then
526     p_rec.dflt_enrt_dt :=
527     ben_enp_shd.g_old_rec.dflt_enrt_dt;
528   End If;
529   If (p_rec.enrt_cvg_strt_dt_cd = hr_api.g_varchar2) then
530     p_rec.enrt_cvg_strt_dt_cd :=
531     ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_cd;
532   End If;
533   If (p_rec.rt_strt_dt_rl = hr_api.g_number) then
534     p_rec.rt_strt_dt_rl :=
535     ben_enp_shd.g_old_rec.rt_strt_dt_rl;
536   End If;
537   If (p_rec.enrt_cvg_end_dt_cd = hr_api.g_varchar2) then
538     p_rec.enrt_cvg_end_dt_cd :=
539     ben_enp_shd.g_old_rec.enrt_cvg_end_dt_cd;
540   End If;
541   If (p_rec.enrt_cvg_strt_dt_rl = hr_api.g_number) then
542     p_rec.enrt_cvg_strt_dt_rl :=
543     ben_enp_shd.g_old_rec.enrt_cvg_strt_dt_rl;
544   End If;
545   If (p_rec.enrt_cvg_end_dt_rl = hr_api.g_number) then
546     p_rec.enrt_cvg_end_dt_rl :=
547     ben_enp_shd.g_old_rec.enrt_cvg_end_dt_rl;
548   End If;
549   If (p_rec.procg_end_dt = hr_api.g_date) then
550     p_rec.procg_end_dt :=
551     ben_enp_shd.g_old_rec.procg_end_dt;
552   End If;
553   If (p_rec.rt_strt_dt_cd = hr_api.g_varchar2) then
554     p_rec.rt_strt_dt_cd :=
555     ben_enp_shd.g_old_rec.rt_strt_dt_cd;
556   End If;
557   If (p_rec.rt_end_dt_cd = hr_api.g_varchar2) then
558     p_rec.rt_end_dt_cd :=
559     ben_enp_shd.g_old_rec.rt_end_dt_cd;
560   End If;
561   If (p_rec.rt_end_dt_rl = hr_api.g_number) then
562     p_rec.rt_end_dt_rl :=
563     ben_enp_shd.g_old_rec.rt_end_dt_rl;
564   End If;
565 -- CompWorkBench Additions
566     If (p_rec.bdgt_upd_strt_dt = hr_api.g_date) then
567       p_rec.bdgt_upd_strt_dt :=
568       ben_enp_shd.g_old_rec.bdgt_upd_strt_dt;
569     End If;
570     If (p_rec.bdgt_upd_end_dt= hr_api.g_date) then
571       p_rec.bdgt_upd_end_dt :=
572       ben_enp_shd.g_old_rec.bdgt_upd_end_dt;
573     End If;
574     If (p_rec.ws_upd_strt_dt= hr_api.g_date) then
575       p_rec.ws_upd_strt_dt :=
576       ben_enp_shd.g_old_rec.ws_upd_strt_dt;
577     End If;
578     If (p_rec.ws_upd_end_dt = hr_api.g_date) then
579       p_rec.ws_upd_end_dt :=
580       ben_enp_shd.g_old_rec.ws_upd_end_dt;
581     End If;
582     If (p_rec.dflt_ws_acc_cd= hr_api.g_varchar2) then
583       p_rec.dflt_ws_acc_cd :=
584       ben_enp_shd.g_old_rec.dflt_ws_acc_cd;
585     End If;
586     If (p_rec.prsvr_bdgt_cd = hr_api.g_varchar2) then
587       p_rec.prsvr_bdgt_cd :=
588       ben_enp_shd.g_old_rec.prsvr_bdgt_cd;
589     End If;
590     If (p_rec.uses_bdgt_flag = hr_api.g_varchar2) then
591       p_rec.uses_bdgt_flag :=
592       ben_enp_shd.g_old_rec.uses_bdgt_flag;
593     End If;
594     If (p_rec.auto_distr_flag = hr_api.g_varchar2) then
595       p_rec.auto_distr_flag :=
596       ben_enp_shd.g_old_rec.auto_distr_flag;
597     End If;
598     If (p_rec.hrchy_to_use_cd = hr_api.g_varchar2) then
599       p_rec.hrchy_to_use_cd :=
600       ben_enp_shd.g_old_rec.hrchy_to_use_cd;
601     End If;
602     If (p_rec.pos_structure_version_id = hr_api.g_number) then
603       p_rec.pos_structure_version_id :=
604       ben_enp_shd.g_old_rec.pos_structure_version_id;
605     End If;
606     If (p_rec.emp_interview_type_cd = hr_api.g_varchar2) then
607       p_rec.emp_interview_type_cd :=
608       ben_enp_shd.g_old_rec.emp_interview_type_cd;
609     End If;
610     If (p_rec.wthn_yr_perd_id = hr_api.g_number) then
611       p_rec.wthn_yr_perd_id :=
612       ben_enp_shd.g_old_rec.wthn_yr_perd_id;
613     End If;
614     If (p_rec.ler_id = hr_api.g_number) then
615       p_rec.ler_id :=
616       ben_enp_shd.g_old_rec.ler_id;
617     End If;
618     If (p_rec.perf_revw_strt_dt = hr_api.g_date) then
619       p_rec.perf_revw_strt_dt :=
620       ben_enp_shd.g_old_rec.perf_revw_strt_dt;
621     End If;
622     If (p_rec.asg_updt_eff_date = hr_api.g_date) then
623       p_rec.asg_updt_eff_date :=
624       ben_enp_shd.g_old_rec.asg_updt_eff_date;
625     End If;
626 -- end CompWorkBench additions
627   If (p_rec.enp_attribute_category = hr_api.g_varchar2) then
628     p_rec.enp_attribute_category :=
629     ben_enp_shd.g_old_rec.enp_attribute_category;
630   End If;
631   If (p_rec.enp_attribute1 = hr_api.g_varchar2) then
632     p_rec.enp_attribute1 :=
633     ben_enp_shd.g_old_rec.enp_attribute1;
634   End If;
635   If (p_rec.enp_attribute2 = hr_api.g_varchar2) then
636     p_rec.enp_attribute2 :=
637     ben_enp_shd.g_old_rec.enp_attribute2;
638   End If;
639   If (p_rec.enp_attribute3 = hr_api.g_varchar2) then
640     p_rec.enp_attribute3 :=
641     ben_enp_shd.g_old_rec.enp_attribute3;
642   End If;
643   If (p_rec.enp_attribute4 = hr_api.g_varchar2) then
644     p_rec.enp_attribute4 :=
645     ben_enp_shd.g_old_rec.enp_attribute4;
646   End If;
647   If (p_rec.enp_attribute5 = hr_api.g_varchar2) then
648     p_rec.enp_attribute5 :=
649     ben_enp_shd.g_old_rec.enp_attribute5;
650   End If;
651   If (p_rec.enp_attribute6 = hr_api.g_varchar2) then
652     p_rec.enp_attribute6 :=
653     ben_enp_shd.g_old_rec.enp_attribute6;
654   End If;
655   If (p_rec.enp_attribute7 = hr_api.g_varchar2) then
656     p_rec.enp_attribute7 :=
657     ben_enp_shd.g_old_rec.enp_attribute7;
658   End If;
659   If (p_rec.enp_attribute8 = hr_api.g_varchar2) then
660     p_rec.enp_attribute8 :=
661     ben_enp_shd.g_old_rec.enp_attribute8;
662   End If;
663   If (p_rec.enp_attribute9 = hr_api.g_varchar2) then
664     p_rec.enp_attribute9 :=
665     ben_enp_shd.g_old_rec.enp_attribute9;
666   End If;
667   If (p_rec.enp_attribute10 = hr_api.g_varchar2) then
668     p_rec.enp_attribute10 :=
669     ben_enp_shd.g_old_rec.enp_attribute10;
670   End If;
671   If (p_rec.enp_attribute11 = hr_api.g_varchar2) then
672     p_rec.enp_attribute11 :=
673     ben_enp_shd.g_old_rec.enp_attribute11;
674   End If;
675   If (p_rec.enp_attribute12 = hr_api.g_varchar2) then
676     p_rec.enp_attribute12 :=
677     ben_enp_shd.g_old_rec.enp_attribute12;
678   End If;
679   If (p_rec.enp_attribute13 = hr_api.g_varchar2) then
680     p_rec.enp_attribute13 :=
681     ben_enp_shd.g_old_rec.enp_attribute13;
682   End If;
683   If (p_rec.enp_attribute14 = hr_api.g_varchar2) then
684     p_rec.enp_attribute14 :=
685     ben_enp_shd.g_old_rec.enp_attribute14;
686   End If;
687   If (p_rec.enp_attribute15 = hr_api.g_varchar2) then
688     p_rec.enp_attribute15 :=
689     ben_enp_shd.g_old_rec.enp_attribute15;
690   End If;
691   If (p_rec.enp_attribute16 = hr_api.g_varchar2) then
692     p_rec.enp_attribute16 :=
693     ben_enp_shd.g_old_rec.enp_attribute16;
694   End If;
695   If (p_rec.enp_attribute17 = hr_api.g_varchar2) then
696     p_rec.enp_attribute17 :=
697     ben_enp_shd.g_old_rec.enp_attribute17;
698   End If;
699   If (p_rec.enp_attribute18 = hr_api.g_varchar2) then
700     p_rec.enp_attribute18 :=
701     ben_enp_shd.g_old_rec.enp_attribute18;
702   End If;
703   If (p_rec.enp_attribute19 = hr_api.g_varchar2) then
704     p_rec.enp_attribute19 :=
705     ben_enp_shd.g_old_rec.enp_attribute19;
706   End If;
707   If (p_rec.enp_attribute20 = hr_api.g_varchar2) then
708     p_rec.enp_attribute20 :=
709     ben_enp_shd.g_old_rec.enp_attribute20;
710   End If;
711   If (p_rec.enp_attribute21 = hr_api.g_varchar2) then
712     p_rec.enp_attribute21 :=
713     ben_enp_shd.g_old_rec.enp_attribute21;
714   End If;
715   If (p_rec.enp_attribute22 = hr_api.g_varchar2) then
716     p_rec.enp_attribute22 :=
717     ben_enp_shd.g_old_rec.enp_attribute22;
718   End If;
719   If (p_rec.enp_attribute23 = hr_api.g_varchar2) then
720     p_rec.enp_attribute23 :=
721     ben_enp_shd.g_old_rec.enp_attribute23;
722   End If;
723   If (p_rec.enp_attribute24 = hr_api.g_varchar2) then
724     p_rec.enp_attribute24 :=
725     ben_enp_shd.g_old_rec.enp_attribute24;
726   End If;
727   If (p_rec.enp_attribute25 = hr_api.g_varchar2) then
728     p_rec.enp_attribute25 :=
729     ben_enp_shd.g_old_rec.enp_attribute25;
730   End If;
731   If (p_rec.enp_attribute26 = hr_api.g_varchar2) then
732     p_rec.enp_attribute26 :=
733     ben_enp_shd.g_old_rec.enp_attribute26;
734   End If;
735   If (p_rec.enp_attribute27 = hr_api.g_varchar2) then
736     p_rec.enp_attribute27 :=
737     ben_enp_shd.g_old_rec.enp_attribute27;
738   End If;
739   If (p_rec.enp_attribute28 = hr_api.g_varchar2) then
740     p_rec.enp_attribute28 :=
741     ben_enp_shd.g_old_rec.enp_attribute28;
742   End If;
743   If (p_rec.enp_attribute29 = hr_api.g_varchar2) then
744     p_rec.enp_attribute29 :=
745     ben_enp_shd.g_old_rec.enp_attribute29;
746   End If;
747   If (p_rec.enp_attribute30 = hr_api.g_varchar2) then
748     p_rec.enp_attribute30 :=
749     ben_enp_shd.g_old_rec.enp_attribute30;
750   End If;
751   --
752   If (p_rec.enrt_perd_det_ovrlp_bckdt_cd = hr_api.g_varchar2) then
753     p_rec.enrt_perd_det_ovrlp_bckdt_cd :=
754     ben_enp_shd.g_old_rec.enrt_perd_det_ovrlp_bckdt_cd;
755   End if;
756 
757  --- cwb
758   If (p_rec.data_freeze_date = hr_api.g_date) then
759       p_rec.data_freeze_date :=
760       ben_enp_shd.g_old_rec.data_freeze_date;
761   End If;
762 
763   If (p_rec.Sal_chg_reason_cd = hr_api.g_varchar2) then
764     p_rec.Sal_chg_reason_cd :=
765     ben_enp_shd.g_old_rec.Sal_chg_reason_cd;
766   End if;
767 
768   If (p_rec.Approval_mode_cd = hr_api.g_varchar2) then
769     p_rec.Approval_mode_cd :=
770     ben_enp_shd.g_old_rec.Approval_mode_cd;
771   End if;
772 
773   If (p_rec.hrchy_ame_trn_cd = hr_api.g_varchar2) then
774     p_rec.hrchy_ame_trn_cd :=
775     ben_enp_shd.g_old_rec.hrchy_ame_trn_cd;
776   End if;
777 
778   If (p_rec.hrchy_rl = hr_api.g_number) then
779       p_rec.hrchy_rl :=
780       ben_enp_shd.g_old_rec.hrchy_rl;
781   End If;
782 
783   If (p_rec.hrchy_ame_app_id = hr_api.g_number) then
784       p_rec.hrchy_ame_app_id :=
785       ben_enp_shd.g_old_rec.hrchy_ame_app_id;
786   End If;
787 
788   If (p_rec.reinstate_cd = hr_api.g_varchar2) then
789     p_rec.reinstate_cd :=
790     ben_enp_shd.g_old_rec.reinstate_cd;
791   End if;
792 
793 If (p_rec.reinstate_ovrdn_cd = hr_api.g_varchar2) then
794     p_rec.reinstate_ovrdn_cd :=
795     ben_enp_shd.g_old_rec.reinstate_ovrdn_cd;
796   End if;
797 
798 If (p_rec.defer_deenrol_flag = hr_api.g_varchar2) then
799     p_rec.defer_deenrol_flag :=
800     ben_enp_shd.g_old_rec.defer_deenrol_flag;
801   End if;
802 
803   If (p_rec.reopen_le_on_reprocess = hr_api.g_varchar2) then
804     p_rec.reopen_le_on_reprocess :=
805     ben_enp_shd.g_old_rec.reopen_le_on_reprocess;
806   End if;
807 
808   --
809   hr_utility.set_location(' Leaving:'||l_proc, 10);
810 --
811 End convert_defs;
812 --
813 -- ----------------------------------------------------------------------------
814 -- |---------------------------------< upd >----------------------------------|
815 -- ----------------------------------------------------------------------------
816 Procedure upd
817   (
818   p_effective_date in date,
819   p_rec        in out nocopy ben_enp_shd.g_rec_type
820   ) is
821 --
822   l_proc  varchar2(72) := g_package||'upd';
823 --
824 Begin
825   hr_utility.set_location('Entering:'||l_proc, 5);
826   --
827   -- We must lock the row which we need to update.
828   --
829   ben_enp_shd.lck
830 	(
831 	p_rec.enrt_perd_id,
832 	p_rec.object_version_number
833 	);
834   --
835   -- 1. During an update system defaults are used to determine if
836   --    arguments have been defaulted or not. We must therefore
837   --    derive the full record structure values to be updated.
838   --
839   -- 2. Call the supporting update validate operations.
840   --
841   convert_defs(p_rec);
842   ben_enp_bus.update_validate(p_rec
843   ,p_effective_date);
844   --
845   -- Call the supporting pre-update operation
846   --
847   pre_update(p_rec);
848   --
849   -- Update the row.
850   --
851   update_dml(p_rec);
852   --
853   -- Call the supporting post-update operation
854   --
855   post_update(
856 p_effective_date,p_rec);
857 End upd;
858 --
859 -- ----------------------------------------------------------------------------
860 -- |---------------------------------< upd >----------------------------------|
861 -- ----------------------------------------------------------------------------
862 Procedure upd
863   (
864   p_effective_date in date,
865   p_enrt_perd_id                 in number,
866   p_business_group_id            in number           ,
867   p_yr_perd_id                   in number           ,
868   p_popl_enrt_typ_cycl_id        in number           ,
869   p_end_dt                       in date             ,
870   p_strt_dt                      in date             ,
871   p_asnd_lf_evt_dt               in date             ,
872   p_cls_enrt_dt_to_use_cd        in varchar2         ,
873   p_dflt_enrt_dt                 in date             ,
874   p_enrt_cvg_strt_dt_cd          in varchar2         ,
875   p_rt_strt_dt_rl                in number           ,
876   p_enrt_cvg_end_dt_cd           in varchar2         ,
877   p_enrt_cvg_strt_dt_rl          in number           ,
878   p_enrt_cvg_end_dt_rl           in number           ,
879   p_procg_end_dt                 in date             ,
880   p_rt_strt_dt_cd                in varchar2         ,
881   p_rt_end_dt_cd                 in varchar2         ,
882   p_rt_end_dt_rl                 in number           ,
883   p_bdgt_upd_strt_dt             in  date            ,
884   p_bdgt_upd_end_dt              in  date            ,
885   p_ws_upd_strt_dt               in  date            ,
886   p_ws_upd_end_dt                in  date            ,
887   p_dflt_ws_acc_cd               in  varchar2        ,
888   p_prsvr_bdgt_cd                in  varchar2        ,
889   p_uses_bdgt_flag               in  varchar2        ,
890   p_auto_distr_flag              in  varchar2        ,
891   p_hrchy_to_use_cd              in  varchar2        ,
892   p_pos_structure_version_id        in  number       ,
893   p_emp_interview_type_cd        in  varchar2        ,
894   p_wthn_yr_perd_id              in  number          ,
895   p_ler_id                       in  number          ,
896   p_perf_revw_strt_dt            in date             ,
897   p_asg_updt_eff_date            in date             ,
898   p_enp_attribute_category       in varchar2         ,
899   p_enp_attribute1               in varchar2         ,
900   p_enp_attribute2               in varchar2         ,
901   p_enp_attribute3               in varchar2         ,
902   p_enp_attribute4               in varchar2         ,
903   p_enp_attribute5               in varchar2         ,
904   p_enp_attribute6               in varchar2         ,
905   p_enp_attribute7               in varchar2         ,
906   p_enp_attribute8               in varchar2         ,
907   p_enp_attribute9               in varchar2         ,
908   p_enp_attribute10              in varchar2         ,
909   p_enp_attribute11              in varchar2         ,
910   p_enp_attribute12              in varchar2         ,
911   p_enp_attribute13              in varchar2         ,
912   p_enp_attribute14              in varchar2         ,
913   p_enp_attribute15              in varchar2         ,
914   p_enp_attribute16              in varchar2         ,
915   p_enp_attribute17              in varchar2         ,
916   p_enp_attribute18              in varchar2         ,
917   p_enp_attribute19              in varchar2         ,
918   p_enp_attribute20              in varchar2         ,
919   p_enp_attribute21              in varchar2         ,
920   p_enp_attribute22              in varchar2         ,
921   p_enp_attribute23              in varchar2         ,
922   p_enp_attribute24              in varchar2         ,
923   p_enp_attribute25              in varchar2         ,
924   p_enp_attribute26              in varchar2         ,
925   p_enp_attribute27              in varchar2         ,
926   p_enp_attribute28              in varchar2         ,
927   p_enp_attribute29              in varchar2         ,
928   p_enp_attribute30              in varchar2         ,
929   p_enrt_perd_det_ovrlp_bckdt_cd in varchar2         ,
930     --cwb
931   p_data_freeze_date             in  date    ,
932   p_Sal_chg_reason_cd            in  varchar2,
933   p_Approval_mode_cd             in  varchar2,
934   p_hrchy_ame_trn_cd             in  varchar2,
935   p_hrchy_rl                     in  number,
936   p_hrchy_ame_app_id             in  number ,
937   ---
938   p_object_version_number        in out nocopy number ,
939   p_reinstate_cd			in varchar2,
940   p_reinstate_ovrdn_cd		in varchar2,
941   p_reopen_le_on_reprocess      in varchar2,
942   p_defer_deenrol_flag          in varchar2
943   ) is
944 --
945   l_rec	  ben_enp_shd.g_rec_type;
946   l_proc  varchar2(72) := g_package||'upd';
947 --
948 Begin
949   hr_utility.set_location('Entering:'||l_proc, 5);
950   --
951   -- Call conversion function to turn arguments into the
952   -- l_rec structure.
953   --
954   l_rec :=
955   ben_enp_shd.convert_args
956   (
957   p_enrt_perd_id,
958   p_business_group_id,
959   p_yr_perd_id,
960   p_popl_enrt_typ_cycl_id,
961   p_end_dt,
962   p_strt_dt,
963   p_asnd_lf_evt_dt,
964   p_cls_enrt_dt_to_use_cd,
965   p_dflt_enrt_dt,
966   p_enrt_cvg_strt_dt_cd,
967   p_rt_strt_dt_rl,
968   p_enrt_cvg_end_dt_cd,
969   p_enrt_cvg_strt_dt_rl,
970   p_enrt_cvg_end_dt_rl,
971   p_procg_end_dt,
972   p_rt_strt_dt_cd,
973   p_rt_end_dt_cd,
974   p_rt_end_dt_rl,
975   p_bdgt_upd_strt_dt,
976   p_bdgt_upd_end_dt,
977   p_ws_upd_strt_dt,
978   p_ws_upd_end_dt,
979   p_dflt_ws_acc_cd,
980   p_prsvr_bdgt_cd,
981   p_uses_bdgt_flag,
982   p_auto_distr_flag,
983   p_hrchy_to_use_cd,
984   p_pos_structure_version_id,
985   p_emp_interview_type_cd,
986   p_wthn_yr_perd_id,
987   p_ler_id,
988   p_perf_revw_strt_dt,
989   p_asg_updt_eff_date,
990   p_enp_attribute_category,
991   p_enp_attribute1,
992   p_enp_attribute2,
993   p_enp_attribute3,
994   p_enp_attribute4,
995   p_enp_attribute5,
996   p_enp_attribute6,
997   p_enp_attribute7,
998   p_enp_attribute8,
999   p_enp_attribute9,
1000   p_enp_attribute10,
1001   p_enp_attribute11,
1002   p_enp_attribute12,
1003   p_enp_attribute13,
1004   p_enp_attribute14,
1005   p_enp_attribute15,
1006   p_enp_attribute16,
1007   p_enp_attribute17,
1008   p_enp_attribute18,
1009   p_enp_attribute19,
1010   p_enp_attribute20,
1011   p_enp_attribute21,
1012   p_enp_attribute22,
1013   p_enp_attribute23,
1014   p_enp_attribute24,
1015   p_enp_attribute25,
1016   p_enp_attribute26,
1017   p_enp_attribute27,
1018   p_enp_attribute28,
1019   p_enp_attribute29,
1020   p_enp_attribute30,
1021   p_enrt_perd_det_ovrlp_bckdt_cd,
1022   --cwb
1023   p_data_freeze_date,
1024   p_Sal_chg_reason_cd,
1025   p_Approval_mode_cd,
1026   p_hrchy_ame_trn_cd,
1027   p_hrchy_rl        ,
1028   p_hrchy_ame_app_id,
1029   --
1030   p_object_version_number ,
1031   p_reinstate_cd,
1032   p_reinstate_ovrdn_cd,
1033   p_reopen_le_on_reprocess,
1034   p_defer_deenrol_flag
1035   );
1036   --
1037   -- Having converted the arguments into the
1038   -- plsql record structure we call the corresponding record
1039   -- business process.
1040   --
1041   upd(
1042     p_effective_date,l_rec);
1043   p_object_version_number := l_rec.object_version_number;
1044   --
1045   hr_utility.set_location(' Leaving:'||l_proc, 10);
1046 End upd;
1047 --
1048 end ben_enp_upd;