DBA Data[Home] [Help]

PACKAGE: APPS.BEN_ABR_SHD

Source


1 Package ben_abr_shd AUTHID CURRENT_USER as
2 /* $Header: beabrrhi.pkh 120.7 2008/05/15 06:23:00 pvelvano noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                    Global Record Type Specification                      |
6 -- ----------------------------------------------------------------------------
7 --
8 Type g_rec_type Is Record
9   (
10   acty_base_rt_id                   number(15),
11   effective_start_date              date,
12   effective_end_date                date,
13   ordr_num			    number(15),
14   acty_typ_cd                       varchar2(30),
15   sub_acty_typ_cd                       varchar2(30),
16   name                              varchar2(240),
17   rt_typ_cd                         varchar2(30),
18   bnft_rt_typ_cd                    varchar2(30),
19   tx_typ_cd                         varchar2(30),
20   use_to_calc_net_flx_cr_flag       varchar2(30),
21   asn_on_enrt_flag                  varchar2(30),
22   abv_mx_elcn_val_alwd_flag         varchar2(30),
23   blw_mn_elcn_alwd_flag             varchar2(30),
24   dsply_on_enrt_flag                varchar2(30),
25   parnt_chld_cd                     varchar2(30),
26   use_calc_acty_bs_rt_flag          varchar2(30),
27   uses_ded_sched_flag               varchar2(30),
28   uses_varbl_rt_flag                varchar2(30),
29   vstg_sched_apls_flag              varchar2(30),
30   rt_mlt_cd                         varchar2(30),
31   proc_each_pp_dflt_flag            varchar2(30),
32   prdct_flx_cr_when_elig_flag       varchar2(30),
33   no_std_rt_used_flag               varchar2(30),
34   rcrrg_cd                          varchar2(30),
35   mn_elcn_val                       number,
36   mx_elcn_val                       number,
37   lwr_lmt_val                       number,
38   lwr_lmt_calc_rl                   number(15),
39   upr_lmt_val                       number,
40   upr_lmt_calc_rl                   number(15),
41   ptd_comp_lvl_fctr_id              number(15),
42   clm_comp_lvl_fctr_id              number(15),
43   entr_ann_val_flag                 varchar2(30),
44   ann_mn_elcn_val                   number,
45   ann_mx_elcn_val                   number,
46   wsh_rl_dy_mo_num                  number(15),
47   uses_pymt_sched_flag              varchar2(30),
48   nnmntry_uom                       varchar2(30),
49   val                               number,
50   incrmt_elcn_val                   number,
51   rndg_cd                           varchar2(30),
52   val_ovrid_alwd_flag               varchar2(30),
53   prtl_mo_det_mthd_cd               varchar2(30),
54   acty_base_rt_stat_cd              varchar2(30),
55   procg_src_cd                      varchar2(30),
56   dflt_val                          number,
57   dflt_flag                         varchar2(30),
58   frgn_erg_ded_typ_cd               varchar2(30),
59   frgn_erg_ded_name                 varchar2(240),
60   frgn_erg_ded_ident                varchar2(90),
61   no_mx_elcn_val_dfnd_flag          varchar2(30),
62   prtl_mo_det_mthd_rl               number(15),
63   entr_val_at_enrt_flag             varchar2(30),
64   prtl_mo_eff_dt_det_rl             number(15),
65   rndg_rl                           number(15),
66   val_calc_rl                       number(15),
67   no_mn_elcn_val_dfnd_flag          varchar2(30),
68   prtl_mo_eff_dt_det_cd             varchar2(30),
69   only_one_bal_typ_alwd_flag        varchar2(30),
70   rt_usg_cd                         varchar2(30),
71   prort_mn_ann_elcn_val_cd          varchar2(30),
72   prort_mn_ann_elcn_val_rl          number(15),
73   prort_mx_ann_elcn_val_cd          varchar2(30),
74   prort_mx_ann_elcn_val_rl          number(15),
75   one_ann_pymt_cd                   varchar2(30),
76   det_pl_ytd_cntrs_cd               varchar2(30),
77   asmt_to_use_cd                    varchar2(30),
78   ele_rqd_flag                      varchar2(30),
79   subj_to_imptd_incm_flag           varchar2(30),
80   element_type_id                   number(15),
81   input_value_id                    number(15),
82   input_va_calc_rl                  number(15),
83   comp_lvl_fctr_id                  number(15),
84   parnt_acty_base_rt_id             number(15),
85   pgm_id                            number(15),
86   pl_id                             number(15),
87   oipl_id                           number(15),
88   opt_id                            number(15),
89   oiplip_id                         number(15),
90   plip_id                           number(15),
91   ptip_id                           number(15),
92   cmbn_plip_id                      number(15),
93   cmbn_ptip_id                      number(15),
94   cmbn_ptip_opt_id                  number(15),
95   vstg_for_acty_rt_id               number(15),
96   actl_prem_id                      number(15),
97   TTL_COMP_LVL_FCTR_ID              number(15),
98   COST_ALLOCATION_KEYFLEX_ID        number(15),
99   ALWS_CHG_CD                       varchar2(30),
100   ele_entry_val_cd                  varchar2(30),
101   pay_rate_grade_rule_id            number(15),
102   rate_periodization_cd             varchar2(30),
103   rate_periodization_rl             number(15),
104   mn_mx_elcn_rl			    number,
105   mapping_table_name                varchar2(60),
106   mapping_table_pk_id               number,
107   business_group_id                 number(15),
108   context_pgm_id                    number(15),
109   context_pl_id                     number(15),
110   context_opt_id                    number(15),
111   element_det_rl                    number(15),
112   currency_det_cd                   varchar2(30),
113   abr_attribute_category            varchar2(30),
114   abr_attribute1                    varchar2(150),
115   abr_attribute2                    varchar2(150),
116   abr_attribute3                    varchar2(150),
117   abr_attribute4                    varchar2(150),
118   abr_attribute5                    varchar2(150),
119   abr_attribute6                    varchar2(150),
120   abr_attribute7                    varchar2(150),
121   abr_attribute8                    varchar2(150),
122   abr_attribute9                    varchar2(150),
123   abr_attribute10                   varchar2(150),
124   abr_attribute11                   varchar2(150),
125   abr_attribute12                   varchar2(150),
126   abr_attribute13                   varchar2(150),
127   abr_attribute14                   varchar2(150),
128   abr_attribute15                   varchar2(150),
129   abr_attribute16                   varchar2(150),
130   abr_attribute17                   varchar2(150),
131   abr_attribute18                   varchar2(150),
132   abr_attribute19                   varchar2(150),
133   abr_attribute20                   varchar2(150),
134   abr_attribute21                   varchar2(150),
135   abr_attribute22                   varchar2(150),
136   abr_attribute23                   varchar2(150),
137   abr_attribute24                   varchar2(150),
138   abr_attribute25                   varchar2(150),
139   abr_attribute26                   varchar2(150),
140   abr_attribute27                   varchar2(150),
141   abr_attribute28                   varchar2(150),
142   abr_attribute29                   varchar2(150),
143   abr_attribute30                   varchar2(150),
144   abr_seq_num                       number(15),
145   object_version_number             number(9)
146   );
147 --
148 -- ----------------------------------------------------------------------------
149 -- |           Global Definitions - Internal Development Use Only             |
150 -- ----------------------------------------------------------------------------
151 --
152 g_old_rec  g_rec_type;                            -- Global record definition
153 g_api_dml  boolean;                               -- Global api dml status
154 
155 --
156 -- ----------------------------------------------------------------------------
157 -- |------------------------< return_api_dml_status >-------------------------|
158 -- ----------------------------------------------------------------------------
159 -- {Start Of Comments}
160 --
161 -- Description:
162 --   This function will return the current g_api_dml private global
163 --   boolean status.
164 --   The g_api_dml status determines if at the time of the function
165 --   being executed if a dml statement (i.e. INSERT, UPDATE or DELETE)
166 --   is being issued from within an api.
167 --   If the status is TRUE then a dml statement is being issued from
168 --   within this entity api.
169 --   This function is primarily to support database triggers which
170 --   need to maintain the object_version_number for non-supported
171 --   dml statements (i.e. dml statement issued outside of the api layer).
172 --
173 -- Prerequisites:
174 --   None.
175 --
176 -- In Parameters:
177 --   None.
178 --
179 -- Post Success:
180 --   Processing continues.
181 --   If the function returns a TRUE value then, dml is being executed from
182 --   within this api.
183 --
184 -- Post Failure:
185 --   None.
186 --
187 -- Access Status:
188 --   Internal Row Handler Use Only.
189 --
190 -- {End Of Comments}
191 -- ----------------------------------------------------------------------------
192 Function return_api_dml_status Return Boolean;
193 --
194 -- ----------------------------------------------------------------------------
195 -- |---------------------------< constraint_error >---------------------------|
196 -- ----------------------------------------------------------------------------
197 -- {Start Of Comments}
198 --
199 -- Description:
200 --   This procedure is called when a constraint has been violated (i.e.
201 --   The exception hr_api.check_integrity_violated,
202 --   hr_api.parent_integrity_violated, hr_api.child_integrity_violated or
203 --   hr_api.unique_integrity_violated has been raised).
204 --   The exceptions can only be raised as follows:
205 --   1) A check constraint can only be violated during an INSERT or UPDATE
206 --      dml operation.
207 --   2) A parent integrity constraint can only be violated during an
208 --      INSERT or UPDATE dml operation.
209 --   3) A child integrity constraint can only be violated during an
210 --      DELETE dml operation.
211 --   4) A unique integrity constraint can only be violated during INSERT or
212 --      UPDATE dml operation.
213 --
214 -- Prerequisites:
215 --   1) Either hr_api.check_integrity_violated,
216 --      hr_api.parent_integrity_violated, hr_api.child_integrity_violated or
217 --      hr_api.unique_integrity_violated has been raised with the subsequent
218 --      stripping of the constraint name from the generated error message
219 --      text.
220 --   2) Standalone validation test which corresponds with a constraint error.
221 --
222 -- In Parameter:
223 --   p_constraint_name is in upper format and is just the constraint name
224 --   (e.g. not prefixed by brackets, schema owner etc).
225 --
226 -- Post Success:
227 --   Development dependant.
228 --
229 -- Post Failure:
230 --   Developement dependant.
231 --
232 -- Developer Implementation Notes:
233 --   For each constraint being checked the hr system package failure message
234 --   has been generated as a template only. These system error messages should
235 --   be modified as required (i.e. change the system failure message to a user
236 --   friendly defined error message).
237 --
238 -- Access Status:
239 --   Internal Development Use Only.
240 --
241 -- {End Of Comments}
242 -- ----------------------------------------------------------------------------
243 Procedure constraint_error
244             (p_constraint_name in all_constraints.constraint_name%TYPE);
245 --
246 -- ----------------------------------------------------------------------------
247 -- |-----------------------------< api_updating >-----------------------------|
248 -- ----------------------------------------------------------------------------
249 -- {Start Of Comments}
250 --
251 -- Description:
252 --   This function is used to populate the g_old_rec record with the current
253 --   row from the database for the specified primary key provided that the
254 --   primary key exists, and is valid, and does not already match the current
255 --   g_old_rec.
256 --   The function will always return a TRUE value if the g_old_rec is
257 --   populated with the current row. A FALSE value will be returned if all of
258 --   the primary key arguments are null.
259 --
260 -- Prerequisites:
261 --   None.
262 --
263 -- In Parameters:
264 --
265 -- Post Success:
266 --   A value of TRUE will be returned indiciating that the g_old_rec is
267 --   current.
268 --   A value of FALSE will be returned if all of the primary key arguments
269 --   have a null value (this indicates that the row has not be inserted into
270 --   the Schema), and therefore could never have a corresponding row.
271 --
272 -- Post Failure:
273 --   A failure can only occur under two circumstances:
274 --   1) The primary key is invalid (i.e. a row does not exist for the
275 --      specified primary key values).
276 --   2) If an object_version_number exists but is NOT the same as the current
277 --      g_old_rec value.
278 --
279 -- Developer Implementation Notes:
280 --   None.
281 --
282 -- Access Status:
283 --   Internal Development Use Only.
284 --
285 -- {End Of Comments}
286 -- ----------------------------------------------------------------------------
287 Function api_updating
288   (p_effective_date		in date,
289    p_acty_base_rt_id		in number,
290    p_object_version_number	in number
291   ) Return Boolean;
292 --
293 -- ----------------------------------------------------------------------------
294 -- |--------------------------< find_dt_del_modes >---------------------------|
295 -- ----------------------------------------------------------------------------
296 -- {Start Of Comments}
297 --
298 -- Description:
299 --   This procedure is used to determine what datetrack delete modes are
300 --   allowed as of the effective date for this entity. The procedure will
301 --   return a corresponding Boolean value for each of the delete modes
302 --   available where TRUE indicates that the corresponding delete mode is
303 --   available.
304 --
305 -- Prerequisites:
306 --   None.
307 --
308 -- In Parameters:
309 --   p_effective_date
310 --     Specifies the date at which the datetrack modes will be operated on.
311 --   p_base_key_value
312 --     Specifies the primary key value for this datetrack entity.
313 --     (E.g. For this entity the assignment of the argument would be:
314 --           p_base_key_value = :acty_base_rt_id).
315 --
316 -- Post Success:
317 --   Processing continues.
318 --
319 -- Post Failure:
320 --   Failure might occur if for the specified effective date and primary key
321 --   value a row doesn't exist.
322 --
326 --   For example, this entity might disallow the datetrack delete mode of
323 -- Developer Implementation Notes:
324 --   This procedure could require changes if this entity has any sepcific
325 --   delete restrictions.
327 --   ZAP. To implement this you would have to set and return a Boolean value
328 --   of FALSE after the call to the dt_api.find_dt_del_modes procedure.
329 --
330 -- Access Status:
331 --   Internal Development Use Only.
332 --
333 -- {End Of Comments}
334 -- ----------------------------------------------------------------------------
335 Procedure find_dt_del_modes
336 	(p_effective_date	in  date,
337 	 p_base_key_value	in  number,
338 	 p_zap		 out nocopy boolean,
339 	 p_delete	 out nocopy boolean,
340 	 p_future_change out nocopy boolean,
341 	 p_delete_next_change out nocopy boolean);
342 --
343 -- ----------------------------------------------------------------------------
344 -- |--------------------------< find_dt_upd_modes >---------------------------|
345 -- ----------------------------------------------------------------------------
346 -- {Start Of Comments}
347 --
348 -- Description:
349 --   This procedure is used to determine what datetrack update modes are
350 --   allowed as of the effective date for this entity. The procedure will
351 --   return a corresponding Boolean value for each of the update modes
352 --   available where TRUE indicates that the corresponding update mode
353 --   is available.
354 --
355 -- Prerequisites:
356 --   None.
357 --
358 -- In Parameters:
359 --   p_effective_date
360 --     Specifies the date at which the datetrack modes will be operated on.
361 --   p_base_key_value
362 --     Specifies the primary key value for this datetrack entity.
363 --     (E.g. For this entity the assignment of the argument would be:
364 --           p_base_key_value = :acty_base_rt_id).
365 --
366 -- Post Success:
367 --   Processing continues.
368 --
369 -- Post Failure:
370 --   Failure might occur if for the specified effective date and primary key
371 --   value a row doesn't exist.
372 --
373 -- Developer Implementation Notes:
374 --   This procedure could require changes if this entity has any sepcific
375 --   delete restrictions.
376 --   For example, this entity might disallow the datetrack update mode of
377 --   UPDATE. To implement this you would have to set and return a Boolean
378 --   value of FALSE after the call to the dt_api.find_dt_upd_modes procedure.
379 --
380 -- Access Status:
381 --   Internal Development Use Only.
382 --
383 -- {End Of Comments}
384 -- ----------------------------------------------------------------------------
385 Procedure find_dt_upd_modes
386 	(p_effective_date	in  date,
387 	 p_base_key_value	in  number,
388 	 p_correction	 out nocopy boolean,
389 	 p_update	 out nocopy boolean,
390 	 p_update_override out nocopy boolean,
391 	 p_update_change_insert out nocopy boolean);
392 --
393 -- ----------------------------------------------------------------------------
394 -- |------------------------< upd_effective_end_date >------------------------|
395 -- ----------------------------------------------------------------------------
396 -- {Start Of Comments}
397 --
398 -- Description:
399 --   This procedure will update the specified datetrack row with the
400 --   specified new effective end date. The object version number is also
401 --   set to the next object version number. DateTrack modes which call
402 --   this procedure are: UPDATE, UPDATE_CHANGE_INSERT,
403 --   UPDATE_OVERRIDE, DELETE, FUTURE_CHANGE and DELETE_NEXT_CHANGE.
404 --   This is an internal datetrack maintenance procedure which should
405 --   not be modified in anyway.
406 --
407 -- Prerequisites:
408 --   None.
409 --
410 -- In Parameters:
411 --   p_new_effective_end_date
412 --     Specifies the new effective end date which will be set for the
413 --     row as of the effective date.
414 --   p_base_key_value
415 --     Specifies the primary key value for this datetrack entity.
416 --     (E.g. For this entity the assignment of the argument would be:
417 --           p_base_key_value = :acty_base_rt_id).
418 --
419 -- Post Success:
420 --   The specified row will be updated with the new effective end date and
421 --   object_version_number.
422 --
423 -- Post Failure:
424 --   Failure might occur if for the specified effective date and primary key
425 --   value a row doesn't exist.
426 --
427 -- Developer Implementation Notes:
428 --   This is an internal datetrack maintenance procedure which should
429 --   not be modified in anyway.
430 --
431 -- Access Status:
432 --   Internal Row Handler Use Only.
433 --
434 -- {End Of Comments}
435 -- ----------------------------------------------------------------------------
436 Procedure upd_effective_end_date
437 	(p_effective_date		in date,
438 	 p_base_key_value		in number,
439 	 p_new_effective_end_date	in date,
440 	 p_validation_start_date	in date,
441 	 p_validation_end_date		in date,
442          p_object_version_number       out nocopy number);
443 --
444 -- ----------------------------------------------------------------------------
445 -- |---------------------------------< lck >----------------------------------|
446 -- ----------------------------------------------------------------------------
447 -- {Start Of Comments}
448 --
452 --   The processing steps are as follows:
449 -- Description:
450 --   The Lck process for datetrack is complicated and comprises of the
451 --   following processing
453 --   1) The row to be updated or deleted must be locked.
454 --      By locking this row, the g_old_rec record data type is populated.
455 --   2) If a comment exists the text is selected from hr_comments.
456 --   3) The datetrack mode is then validated to ensure the operation is
457 --      valid. If the mode is valid the validation start and end dates for
458 --      the mode will be derived and returned. Any required locking is
459 --      completed when the datetrack mode is validated.
460 --
461 -- Prerequisites:
462 --   When attempting to call the lck procedure the object version number,
463 --   primary key, effective date and datetrack mode must be specified.
464 --
465 -- In Parameters:
466 --   p_effective_date
467 --     Specifies the date of the datetrack update operation.
468 --   p_datetrack_mode
469 --     Determines the datetrack update or delete mode.
470 --
471 -- Post Success:
472 --   On successful completion of the Lck process the row to be updated or
473 --   deleted will be locked and selected into the global data structure
474 --   g_old_rec.
475 --
476 -- Post Failure:
477 --   The Lck process can fail for three reasons:
478 --   1) When attempting to lock the row the row could already be locked by
479 --      another user. This will raise the HR_Api.Object_Locked exception.
480 --   2) The row which is required to be locked doesn't exist in the HR Schema.
481 --      This error is trapped and reported using the message name
482 --      'HR_7220_INVALID_PRIMARY_KEY'.
483 --   3) The row although existing in the HR Schema has a different object
484 --      version number than the object version number specified.
485 --      This error is trapped and reported using the message name
486 --      'HR_7155_OBJECT_INVALID'.
487 --
488 -- Developer Implementation Notes:
489 --   None.
490 --
491 -- Access Status:
492 --   Internal Development Use Only.
493 --
494 -- {End Of Comments}
495 -- ----------------------------------------------------------------------------
496 Procedure lck
497 	(p_effective_date	 in  date,
498 	 p_datetrack_mode	 in  varchar2,
499 	 p_acty_base_rt_id	 in  number,
500 	 p_object_version_number in  number,
501 	 p_validation_start_date out nocopy date,
502 	 p_validation_end_date	 out nocopy date);
503 --
504 -- ----------------------------------------------------------------------------
505 -- |-----------------------------< convert_args >-----------------------------|
506 -- ----------------------------------------------------------------------------
507 -- {Start Of Comments}
508 --
509 -- Description:
510 --   This function is used to turn attribute parameters into the record
511 --   structure parameter g_rec_type.
512 --
513 -- Prerequisites:
514 --   This is a private function and can only be called from the ins or upd
515 --   attribute processes.
516 --
517 -- In Parameters:
518 --
519 -- Post Success:
520 --   A returning record structure will be returned.
521 --
522 -- Post Failure:
523 --   No direct error handling is required within this function. Any possible
524 --   errors within this function will be a PL/SQL value error due to conversion
525 --   of datatypes or data lengths.
526 --
527 -- Developer Implementation Notes:
528 --   None.
529 --
530 -- Access Status:
531 --   Internal Row Handler Use Only.
532 --
533 -- {End Of Comments}
534 -- ----------------------------------------------------------------------------
535 Function convert_args
536 	(
537 	p_acty_base_rt_id               in number,
538 	p_effective_start_date          in date,
539 	p_effective_end_date            in date,
540 	p_ordr_num			in number,
541 	p_acty_typ_cd                   in varchar2,
542 	p_sub_acty_typ_cd               in varchar2,
543 	p_name                          in varchar2,
544 	p_rt_typ_cd                     in varchar2,
545 	p_bnft_rt_typ_cd                in varchar2,
546 	p_tx_typ_cd                     in varchar2,
547 	p_use_to_calc_net_flx_cr_flag   in varchar2,
548 	p_asn_on_enrt_flag              in varchar2,
549 	p_abv_mx_elcn_val_alwd_flag     in varchar2,
550 	p_blw_mn_elcn_alwd_flag         in varchar2,
551 	p_dsply_on_enrt_flag            in varchar2,
552 	p_parnt_chld_cd                 in varchar2,
553 	p_use_calc_acty_bs_rt_flag      in varchar2,
554 	p_uses_ded_sched_flag           in varchar2,
555 	p_uses_varbl_rt_flag            in varchar2,
556 	p_vstg_sched_apls_flag          in varchar2,
557 	p_rt_mlt_cd                     in varchar2,
558 	p_proc_each_pp_dflt_flag        in varchar2,
559 	p_prdct_flx_cr_when_elig_flag   in varchar2,
560 	p_no_std_rt_used_flag           in varchar2,
561 	p_rcrrg_cd                      in varchar2,
562 	p_mn_elcn_val                   in number,
563 	p_mx_elcn_val                   in number,
564         p_lwr_lmt_val                   in number,
565         p_lwr_lmt_calc_rl               in number,
566         p_upr_lmt_val                   in number,
567         p_upr_lmt_calc_rl               in number,
568         p_ptd_comp_lvl_fctr_id          in number,
569         p_clm_comp_lvl_fctr_id          in number,
570         p_entr_ann_val_flag             in varchar2,
571         p_ann_mn_elcn_val               in number,
572         p_ann_mx_elcn_val               in number,
576 	p_val                           in number,
573         p_wsh_rl_dy_mo_num              in number,
574 	p_uses_pymt_sched_flag          in varchar2,
575 	p_nnmntry_uom                   in varchar2,
577 	p_incrmt_elcn_val               in number,
578 	p_rndg_cd                       in varchar2,
579 	p_val_ovrid_alwd_flag           in varchar2,
580 	p_prtl_mo_det_mthd_cd           in varchar2,
581 	p_acty_base_rt_stat_cd          in varchar2,
582 	p_procg_src_cd                  in varchar2,
583 	p_dflt_val                      in number,
584 	p_dflt_flag                     in varchar2,
585 	p_frgn_erg_ded_typ_cd           in varchar2,
586 	p_frgn_erg_ded_name             in varchar2,
587 	p_frgn_erg_ded_ident            in varchar2,
588 	p_no_mx_elcn_val_dfnd_flag      in varchar2,
589 	p_prtl_mo_det_mthd_rl           in number,
590 	p_entr_val_at_enrt_flag         in varchar2,
591 	p_prtl_mo_eff_dt_det_rl         in number,
592 	p_rndg_rl                       in number,
593 	p_val_calc_rl                   in number,
594 	p_no_mn_elcn_val_dfnd_flag      in varchar2,
595 	p_prtl_mo_eff_dt_det_cd         in varchar2,
596 	p_only_one_bal_typ_alwd_flag    in varchar2,
597 	p_rt_usg_cd                     in varchar2,
598         p_prort_mn_ann_elcn_val_cd      in varchar2,
599         p_prort_mn_ann_elcn_val_rl      in number,
600         p_prort_mx_ann_elcn_val_cd      in varchar2,
601         p_prort_mx_ann_elcn_val_rl      in number,
602         p_one_ann_pymt_cd               in varchar2,
603         p_det_pl_ytd_cntrs_cd           in varchar2,
604         p_asmt_to_use_cd                in varchar2,
605         p_ele_rqd_flag                  in varchar2,
606         p_subj_to_imptd_incm_flag       in varchar2,
607 	p_element_type_id               in number,
608         p_input_value_id                in number,
609         p_input_va_calc_rl              in number,
610         p_comp_lvl_fctr_id              in number,
611         p_parnt_acty_base_rt_id         in number,
612 	p_pgm_id                        in number,
613 	p_pl_id                         in number,
614 	p_oipl_id                       in number,
615         p_opt_id                        in number,
616         p_oiplip_id                     in number,
617 	p_plip_id                       in number,
618 	p_ptip_id                       in number,
619 	p_cmbn_plip_id                  in number,
620 	p_cmbn_ptip_id                  in number,
621 	p_cmbn_ptip_opt_id              in number,
622 	p_vstg_for_acty_rt_id           in number,
623         p_actl_prem_id                  in number,
624         p_TTL_COMP_LVL_FCTR_ID          in number,
625         p_COST_ALLOCATION_KEYFLEX_ID    in number,
626         p_ALWS_CHG_CD                   in varchar2,
627         p_ele_entry_val_cd              in varchar2,
628         p_pay_rate_grade_rule_id        in number,
629         p_rate_periodization_cd         in varchar2,
630         p_rate_periodization_rl          in number,
631 	p_mn_mx_elcn_rl 		in number,
632 	p_mapping_table_name            in varchar2,
633 	p_mapping_table_pk_id            in number,
634 	p_business_group_id             in number,
635         p_context_pgm_id                  in number,
636         p_context_pl_id                   in number,
637         p_context_opt_id                  in number,
638 	p_element_det_rl                  in number,
639         p_currency_det_cd                 in varchar2,
640 	p_abr_attribute_category        in varchar2,
641 	p_abr_attribute1                in varchar2,
642 	p_abr_attribute2                in varchar2,
643 	p_abr_attribute3                in varchar2,
644 	p_abr_attribute4                in varchar2,
645 	p_abr_attribute5                in varchar2,
646 	p_abr_attribute6                in varchar2,
647 	p_abr_attribute7                in varchar2,
648 	p_abr_attribute8                in varchar2,
649 	p_abr_attribute9                in varchar2,
650 	p_abr_attribute10               in varchar2,
651 	p_abr_attribute11               in varchar2,
652 	p_abr_attribute12               in varchar2,
653 	p_abr_attribute13               in varchar2,
654 	p_abr_attribute14               in varchar2,
655 	p_abr_attribute15               in varchar2,
656 	p_abr_attribute16               in varchar2,
657 	p_abr_attribute17               in varchar2,
658 	p_abr_attribute18               in varchar2,
659 	p_abr_attribute19               in varchar2,
660 	p_abr_attribute20               in varchar2,
661 	p_abr_attribute21               in varchar2,
662 	p_abr_attribute22               in varchar2,
663 	p_abr_attribute23               in varchar2,
664 	p_abr_attribute24               in varchar2,
665 	p_abr_attribute25               in varchar2,
666 	p_abr_attribute26               in varchar2,
667 	p_abr_attribute27               in varchar2,
668 	p_abr_attribute28               in varchar2,
669 	p_abr_attribute29               in varchar2,
670 	p_abr_attribute30               in varchar2,
671 	p_abr_seq_num                   in  number,
672 	p_object_version_number         in number
673 	)
674 	Return g_rec_type;
675 --
676 end ben_abr_shd;