DBA Data[Home] [Help]

PACKAGE: APPS.BEN_CTP_SHD

Source


1 Package ben_ctp_shd as
2 /* $Header: bectprhi.pkh 120.0 2005/05/28 01:26:21 appldev noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                    Global Record Type Specification                      |
6 -- ----------------------------------------------------------------------------
7 --
8 Type g_rec_type Is Record
9   (
10   ptip_id                           number(15),
11   effective_start_date              date,
12   effective_end_date                date,
13   coord_cvg_for_all_pls_flag        varchar2(30),
14   dpnt_dsgn_cd                      varchar2(30),
15   dpnt_cvg_no_ctfn_rqd_flag         varchar2(9),      -- Increased length
16   dpnt_cvg_strt_dt_cd               varchar2(30),
17   rt_end_dt_cd                      varchar2(30),
18   rt_strt_dt_cd                    varchar2(30),
19   enrt_cvg_end_dt_cd                varchar2(30),
20   enrt_cvg_strt_dt_cd               varchar2(30),
21   dpnt_cvg_strt_dt_rl               number(15),
22   dpnt_cvg_end_dt_cd                varchar2(30),
23   dpnt_cvg_end_dt_rl                number(15),
24   dpnt_adrs_rqd_flag                varchar2(30),
25   dpnt_legv_id_rqd_flag             varchar2(30),
26   susp_if_dpnt_ssn_nt_prv_cd        varchar2(30),
27   susp_if_dpnt_dob_nt_prv_cd        varchar2(30),
28   susp_if_dpnt_adr_nt_prv_cd        varchar2(30),
29   susp_if_ctfn_not_dpnt_flag        varchar2(30),
30   dpnt_ctfn_determine_cd            varchar2(30),
31   postelcn_edit_rl                  number(15),
32   rt_end_dt_rl                      number(15),
33   rt_strt_dt_rl                     number(15),
34   enrt_cvg_end_dt_rl                number(15),
35   enrt_cvg_strt_dt_rl               number(15),
36   rqd_perd_enrt_nenrt_rl            number(15),
37   auto_enrt_mthd_rl                 number(15),
38   enrt_mthd_cd                      varchar2(30),
39   enrt_cd                           varchar2(30),
40   enrt_rl                           number(15),
41   dflt_enrt_cd                      varchar2(30),
42   dflt_enrt_det_rl                  number(15),
43   drvbl_fctr_apls_rts_flag          varchar2(30),
44   drvbl_fctr_prtn_elig_flag         varchar2(30),
45   elig_apls_flag                    varchar2(30),
46   prtn_elig_ovrid_alwd_flag         varchar2(30),
47   trk_inelig_per_flag               varchar2(30),
48   dpnt_dob_rqd_flag                 varchar2(30),
49   crs_this_pl_typ_only_flag         varchar2(30),
50   ptip_stat_cd                      varchar2(30),
51   mx_cvg_alwd_amt                   number,        -- (15),
52   mx_enrd_alwd_ovrid_num            number(15),
53   mn_enrd_rqd_ovrid_num             number(15),
54   no_mx_pl_typ_ovrid_flag           varchar2(30),
55   ordr_num                          number(15),
56   prvds_cr_flag                     varchar2(30),
57   rqd_perd_enrt_nenrt_val           number(15,2),  --(15),
58   rqd_perd_enrt_nenrt_tm_uom        varchar2(30),
59   wvbl_flag                         varchar2(30),
60   drvd_fctr_dpnt_cvg_flag           varchar2(30),
61   no_mn_pl_typ_overid_flag          varchar2(30),
62   sbj_to_sps_lf_ins_mx_flag         varchar2(30),
63   sbj_to_dpnt_lf_ins_mx_flag        varchar2(30),
64   use_to_sum_ee_lf_ins_flag         varchar2(30),
65   per_cvrd_cd                       varchar2(30),
66   short_name                       varchar2(30),
67   short_code                       varchar2(30),
68     legislation_code                       varchar2(30),
69     legislation_subgroup                       varchar2(30),
70   vrfy_fmly_mmbr_cd                 varchar2(30),
71   vrfy_fmly_mmbr_rl                 number(15),
72   ivr_ident                         varchar2(90), -- UTF8 Change Bug 2254683
73   url_ref_name                      varchar2(240),
74   rqd_enrt_perd_tco_cd              varchar2(30),
75   pgm_id                            number(15),
76   pl_typ_id                         number(15),
77   cmbn_ptip_id                      number(15),
78   cmbn_ptip_opt_id                  number(15),
79   acrs_ptip_cvg_id                  number(15),
80   business_group_id                 number(15),
81   ctp_attribute_category            varchar2(30),
82   ctp_attribute1                    varchar2(150),
83   ctp_attribute2                    varchar2(150),
84   ctp_attribute3                    varchar2(150),
85   ctp_attribute4                    varchar2(150),
86   ctp_attribute5                    varchar2(150),
87   ctp_attribute6                    varchar2(150),
88   ctp_attribute7                    varchar2(150),
89   ctp_attribute8                    varchar2(150),
90   ctp_attribute9                    varchar2(150),
91   ctp_attribute10                   varchar2(150),
92   ctp_attribute11                   varchar2(150),
93   ctp_attribute12                   varchar2(150),
94   ctp_attribute13                   varchar2(150),
95   ctp_attribute14                   varchar2(150),
96   ctp_attribute15                   varchar2(150),
97   ctp_attribute16                   varchar2(150),
98   ctp_attribute17                   varchar2(150),
99   ctp_attribute18                   varchar2(150),
100   ctp_attribute19                   varchar2(150),
101   ctp_attribute20                   varchar2(150),
102   ctp_attribute21                   varchar2(150),
103   ctp_attribute22                   varchar2(150),
104   ctp_attribute23                   varchar2(150),
105   ctp_attribute24                   varchar2(150),
106   ctp_attribute25                   varchar2(150),
107   ctp_attribute26                   varchar2(150),
108   ctp_attribute27                   varchar2(150),
109   ctp_attribute28                   varchar2(150),
110   ctp_attribute29                   varchar2(150),
111   ctp_attribute30                   varchar2(150),
112   object_version_number             number(9)
113   );
114 --
115 -- ----------------------------------------------------------------------------
116 -- |           Global Definitions - Internal Development Use Only             |
117 -- ----------------------------------------------------------------------------
118 --
119 g_old_rec  g_rec_type;                            -- Global record definition
120 g_api_dml  boolean;                               -- Global api dml status
121 --
122 -- ----------------------------------------------------------------------------
123 -- |------------------------< return_api_dml_status >-------------------------|
124 -- ----------------------------------------------------------------------------
125 -- {Start Of Comments}
126 --
127 -- Description:
128 --   This function will return the current g_api_dml private global
129 --   boolean status.
130 --   The g_api_dml status determines if at the time of the function
131 --   being executed if a dml statement (i.e. INSERT, UPDATE or DELETE)
132 --   is being issued from within an api.
133 --   If the status is TRUE then a dml statement is being issued from
134 --   within this entity api.
135 --   This function is primarily to support database triggers which
136 --   need to maintain the object_version_number for non-supported
137 --   dml statements (i.e. dml statement issued outside of the api layer).
138 --
139 -- Prerequisites:
140 --   None.
141 --
142 -- In Parameters:
143 --   None.
144 --
145 -- Post Success:
146 --   Processing continues.
147 --   If the function returns a TRUE value then, dml is being executed from
148 --   within this api.
149 --
150 -- Post Failure:
151 --   None.
152 --
153 -- Access Status:
154 --   Internal Row Handler Use Only.
155 --
156 -- {End Of Comments}
157 -- ----------------------------------------------------------------------------
158 Function return_api_dml_status Return Boolean;
159 --
160 -- ----------------------------------------------------------------------------
161 -- |---------------------------< constraint_error >---------------------------|
162 -- ----------------------------------------------------------------------------
163 -- {Start Of Comments}
164 --
165 -- Description:
166 --   This procedure is called when a constraint has been violated (i.e.
167 --   The exception hr_api.check_integrity_violated,
168 --   hr_api.parent_integrity_violated, hr_api.child_integrity_violated or
169 --   hr_api.unique_integrity_violated has been raised).
170 --   The exceptions can only be raised as follows:
171 --   1) A check constraint can only be violated during an INSERT or UPDATE
172 --      dml operation.
173 --   2) A parent integrity constraint can only be violated during an
174 --      INSERT or UPDATE dml operation.
175 --   3) A child integrity constraint can only be violated during an
176 --      DELETE dml operation.
177 --   4) A unique integrity constraint can only be violated during INSERT or
178 --      UPDATE dml operation.
179 --
180 -- Prerequisites:
181 --   1) Either hr_api.check_integrity_violated,
182 --      hr_api.parent_integrity_violated, hr_api.child_integrity_violated or
183 --      hr_api.unique_integrity_violated has been raised with the subsequent
184 --      stripping of the constraint name from the generated error message
185 --      text.
186 --   2) Standalone validation test which corresponds with a constraint error.
187 --
188 -- In Parameter:
189 --   p_constraint_name is in upper format and is just the constraint name
190 --   (e.g. not prefixed by brackets, schema owner etc).
191 --
192 -- Post Success:
193 --   Development dependant.
194 --
195 -- Post Failure:
196 --   Developement dependant.
197 --
198 -- Developer Implementation Notes:
199 --   For each constraint being checked the hr system package failure message
200 --   has been generated as a template only. These system error messages should
201 --   be modified as required (i.e. change the system failure message to a user
202 --   friendly defined error message).
203 --
204 -- Access Status:
205 --   Internal Development Use Only.
206 --
207 -- {End Of Comments}
208 -- ----------------------------------------------------------------------------
209 Procedure constraint_error
210             (p_constraint_name in all_constraints.constraint_name%TYPE);
211 --
212 -- ----------------------------------------------------------------------------
213 -- |-----------------------------< api_updating >-----------------------------|
214 -- ----------------------------------------------------------------------------
215 -- {Start Of Comments}
216 --
217 -- Description:
218 --   This function is used to populate the g_old_rec record with the current
219 --   row from the database for the specified primary key provided that the
220 --   primary key exists, and is valid, and does not already match the current
221 --   g_old_rec.
222 --   The function will always return a TRUE value if the g_old_rec is
223 --   populated with the current row. A FALSE value will be returned if all of
224 --   the primary key arguments are null.
225 --
226 -- Prerequisites:
227 --   None.
228 --
229 -- In Parameters:
230 --
231 -- Post Success:
232 --   A value of TRUE will be returned indiciating that the g_old_rec is
233 --   current.
234 --   A value of FALSE will be returned if all of the primary key arguments
235 --   have a null value (this indicates that the row has not be inserted into
236 --   the Schema), and therefore could never have a corresponding row.
237 --
238 -- Post Failure:
239 --   A failure can only occur under two circumstances:
240 --   1) The primary key is invalid (i.e. a row does not exist for the
241 --      specified primary key values).
242 --   2) If an object_version_number exists but is NOT the same as the current
243 --      g_old_rec value.
244 --
245 -- Developer Implementation Notes:
246 --   None.
247 --
248 -- Access Status:
249 --   Internal Development Use Only.
250 --
251 -- {End Of Comments}
252 -- ----------------------------------------------------------------------------
253 Function api_updating
254   (p_effective_date		in date,
255    p_ptip_id		in number,
256    p_object_version_number	in number
257   ) Return Boolean;
258 --
259 -- ----------------------------------------------------------------------------
260 -- |--------------------------< find_dt_del_modes >---------------------------|
261 -- ----------------------------------------------------------------------------
262 -- {Start Of Comments}
263 --
264 -- Description:
265 --   This procedure is used to determine what datetrack delete modes are
266 --   allowed as of the effective date for this entity. The procedure will
267 --   return a corresponding Boolean value for each of the delete modes
268 --   available where TRUE indicates that the corresponding delete mode is
269 --   available.
270 --
271 -- Prerequisites:
272 --   None.
273 --
274 -- In Parameters:
275 --   p_effective_date
276 --     Specifies the date at which the datetrack modes will be operated on.
277 --   p_base_key_value
278 --     Specifies the primary key value for this datetrack entity.
279 --     (E.g. For this entity the assignment of the argument would be:
280 --           p_base_key_value = :ptip_id).
281 --
282 -- Post Success:
283 --   Processing continues.
284 --
285 -- Post Failure:
286 --   Failure might occur if for the specified effective date and primary key
287 --   value a row doesn't exist.
288 --
289 -- Developer Implementation Notes:
290 --   This procedure could require changes if this entity has any sepcific
291 --   delete restrictions.
292 --   For example, this entity might disallow the datetrack delete mode of
293 --   ZAP. To implement this you would have to set and return a Boolean value
294 --   of FALSE after the call to the dt_api.find_dt_del_modes procedure.
295 --
296 -- Access Status:
297 --   Internal Development Use Only.
298 --
299 -- {End Of Comments}
300 -- ----------------------------------------------------------------------------
301 Procedure find_dt_del_modes
302 	(p_effective_date	in  date,
303 	 p_base_key_value	in  number,
304 	 p_zap		 out nocopy boolean,
305 	 p_delete	 out nocopy boolean,
306 	 p_future_change out nocopy boolean,
307 	 p_delete_next_change out nocopy boolean);
308 --
309 -- ----------------------------------------------------------------------------
310 -- |--------------------------< find_dt_upd_modes >---------------------------|
311 -- ----------------------------------------------------------------------------
312 -- {Start Of Comments}
313 --
314 -- Description:
315 --   This procedure is used to determine what datetrack update modes are
316 --   allowed as of the effective date for this entity. The procedure will
317 --   return a corresponding Boolean value for each of the update modes
318 --   available where TRUE indicates that the corresponding update mode
319 --   is available.
320 --
321 -- Prerequisites:
322 --   None.
323 --
324 -- In Parameters:
325 --   p_effective_date
326 --     Specifies the date at which the datetrack modes will be operated on.
327 --   p_base_key_value
328 --     Specifies the primary key value for this datetrack entity.
329 --     (E.g. For this entity the assignment of the argument would be:
330 --           p_base_key_value = :ptip_id).
331 --
332 -- Post Success:
333 --   Processing continues.
334 --
335 -- Post Failure:
336 --   Failure might occur if for the specified effective date and primary key
337 --   value a row doesn't exist.
338 --
339 -- Developer Implementation Notes:
340 --   This procedure could require changes if this entity has any sepcific
341 --   delete restrictions.
342 --   For example, this entity might disallow the datetrack update mode of
343 --   UPDATE. To implement this you would have to set and return a Boolean
344 --   value of FALSE after the call to the dt_api.find_dt_upd_modes procedure.
345 --
346 -- Access Status:
347 --   Internal Development Use Only.
348 --
349 -- {End Of Comments}
350 -- ----------------------------------------------------------------------------
351 Procedure find_dt_upd_modes
352 	(p_effective_date	in  date,
353 	 p_base_key_value	in  number,
354 	 p_correction	 out nocopy boolean,
355 	 p_update	 out nocopy boolean,
356 	 p_update_override out nocopy boolean,
357 	 p_update_change_insert out nocopy boolean);
358 --
362 -- {Start Of Comments}
359 -- ----------------------------------------------------------------------------
360 -- |------------------------< upd_effective_end_date >------------------------|
361 -- ----------------------------------------------------------------------------
363 --
364 -- Description:
365 --   This procedure will update the specified datetrack row with the
366 --   specified new effective end date. The object version number is also
367 --   set to the next object version number. DateTrack modes which call
368 --   this procedure are: UPDATE, UPDATE_CHANGE_INSERT,
369 --   UPDATE_OVERRIDE, DELETE, FUTURE_CHANGE and DELETE_NEXT_CHANGE.
370 --   This is an internal datetrack maintenance procedure which should
371 --   not be modified in anyway.
372 --
373 -- Prerequisites:
374 --   None.
375 --
376 -- In Parameters:
377 --   p_new_effective_end_date
378 --     Specifies the new effective end date which will be set for the
379 --     row as of the effective date.
380 --   p_base_key_value
381 --     Specifies the primary key value for this datetrack entity.
382 --     (E.g. For this entity the assignment of the argument would be:
383 --           p_base_key_value = :ptip_id).
384 --
385 -- Post Success:
386 --   The specified row will be updated with the new effective end date and
387 --   object_version_number.
388 --
389 -- Post Failure:
390 --   Failure might occur if for the specified effective date and primary key
391 --   value a row doesn't exist.
392 --
393 -- Developer Implementation Notes:
394 --   This is an internal datetrack maintenance procedure which should
395 --   not be modified in anyway.
396 --
397 -- Access Status:
398 --   Internal Row Handler Use Only.
399 --
400 -- {End Of Comments}
401 -- ----------------------------------------------------------------------------
402 Procedure upd_effective_end_date
403 	(p_effective_date		in date,
404 	 p_base_key_value		in number,
405 	 p_new_effective_end_date	in date,
406 	 p_validation_start_date	in date,
407 	 p_validation_end_date		in date,
408          p_object_version_number       out nocopy number);
409 --
410 -- ----------------------------------------------------------------------------
411 -- |---------------------------------< lck >----------------------------------|
412 -- ----------------------------------------------------------------------------
413 -- {Start Of Comments}
414 --
415 -- Description:
416 --   The Lck process for datetrack is complicated and comprises of the
417 --   following processing
418 --   The processing steps are as follows:
419 --   1) The row to be updated or deleted must be locked.
420 --      By locking this row, the g_old_rec record data type is populated.
421 --   2) If a comment exists the text is selected from hr_comments.
422 --   3) The datetrack mode is then validated to ensure the operation is
423 --      valid. If the mode is valid the validation start and end dates for
424 --      the mode will be derived and returned. Any required locking is
425 --      completed when the datetrack mode is validated.
426 --
427 -- Prerequisites:
428 --   When attempting to call the lck procedure the object version number,
429 --   primary key, effective date and datetrack mode must be specified.
430 --
431 -- In Parameters:
432 --   p_effective_date
433 --     Specifies the date of the datetrack update operation.
434 --   p_datetrack_mode
435 --     Determines the datetrack update or delete mode.
436 --
437 -- Post Success:
438 --   On successful completion of the Lck process the row to be updated or
439 --   deleted will be locked and selected into the global data structure
440 --   g_old_rec.
441 --
442 -- Post Failure:
443 --   The Lck process can fail for three reasons:
444 --   1) When attempting to lock the row the row could already be locked by
445 --      another user. This will raise the HR_Api.Object_Locked exception.
446 --   2) The row which is required to be locked doesn't exist in the HR Schema.
447 --      This error is trapped and reported using the message name
448 --      'HR_7220_INVALID_PRIMARY_KEY'.
449 --   3) The row although existing in the HR Schema has a different object
450 --      version number than the object version number specified.
451 --      This error is trapped and reported using the message name
452 --      'HR_7155_OBJECT_INVALID'.
453 --
454 -- Developer Implementation Notes:
455 --   None.
456 --
457 -- Access Status:
458 --   Internal Development Use Only.
459 --
460 -- {End Of Comments}
461 -- ----------------------------------------------------------------------------
462 Procedure lck
463 	(p_effective_date	 in  date,
464 	 p_datetrack_mode	 in  varchar2,
465 	 p_ptip_id	 in  number,
466 	 p_object_version_number in  number,
467 	 p_validation_start_date out nocopy date,
468 	 p_validation_end_date	 out nocopy date);
469 --
470 -- ----------------------------------------------------------------------------
471 -- |-----------------------------< convert_args >-----------------------------|
472 -- ----------------------------------------------------------------------------
473 -- {Start Of Comments}
474 --
475 -- Description:
476 --   This function is used to turn attribute parameters into the record
477 --   structure parameter g_rec_type.
478 --
479 -- Prerequisites:
480 --   This is a private function and can only be called from the ins or upd
481 --   attribute processes.
482 --
486 --   A returning record structure will be returned.
483 -- In Parameters:
484 --
485 -- Post Success:
487 --
488 -- Post Failure:
489 --   No direct error handling is required within this function. Any possible
490 --   errors within this function will be a PL/SQL value error due to conversion
491 --   of datatypes or data lengths.
492 --
493 -- Developer Implementation Notes:
494 --   None.
495 --
496 -- Access Status:
497 --   Internal Row Handler Use Only.
498 --
499 -- {End Of Comments}
500 -- ----------------------------------------------------------------------------
501 Function convert_args
502 	(
503 	p_ptip_id                       in number,
504 	p_effective_start_date          in date,
505 	p_effective_end_date            in date,
506 	p_coord_cvg_for_all_pls_flag    in varchar2,
507 	p_dpnt_dsgn_cd                  in varchar2,
508 	p_dpnt_cvg_no_ctfn_rqd_flag     in varchar2,
509 	p_dpnt_cvg_strt_dt_cd           in varchar2,
510 	p_rt_end_dt_cd                  in varchar2,
511 	p_rt_strt_dt_cd                 in varchar2,
512 	p_enrt_cvg_end_dt_cd            in varchar2,
513 	p_enrt_cvg_strt_dt_cd           in varchar2,
514 	p_dpnt_cvg_strt_dt_rl           in number,
515 	p_dpnt_cvg_end_dt_cd            in varchar2,
516 	p_dpnt_cvg_end_dt_rl            in number,
517 	p_dpnt_adrs_rqd_flag            in varchar2,
518 	p_dpnt_legv_id_rqd_flag         in varchar2,
519         p_susp_if_dpnt_ssn_nt_prv_cd    in  varchar2,
520         p_susp_if_dpnt_dob_nt_prv_cd    in  varchar2,
521         p_susp_if_dpnt_adr_nt_prv_cd    in  varchar2,
522         p_susp_if_ctfn_not_dpnt_flag    in  varchar2,
523         p_dpnt_ctfn_determine_cd        in  varchar2,
524 	p_postelcn_edit_rl              in number,
525 	p_rt_end_dt_rl                  in number,
526 	p_rt_strt_dt_rl                 in number,
527 	p_enrt_cvg_end_dt_rl            in number,
528 	p_enrt_cvg_strt_dt_rl           in number,
529 	p_rqd_perd_enrt_nenrt_rl        in number,
530         p_auto_enrt_mthd_rl             in number,
531         p_enrt_mthd_cd                  in varchar2,
532         p_enrt_cd                       in varchar2,
533         p_enrt_rl                       in number,
534         p_dflt_enrt_cd                  in varchar2,
535         p_dflt_enrt_det_rl              in number,
536         p_drvbl_fctr_apls_rts_flag      in varchar2,
537         p_drvbl_fctr_prtn_elig_flag     in varchar2,
538         p_elig_apls_flag                in varchar2,
539         p_prtn_elig_ovrid_alwd_flag     in varchar2,
540         p_trk_inelig_per_flag           in varchar2,
541 	p_dpnt_dob_rqd_flag             in varchar2,
542 	p_crs_this_pl_typ_only_flag     in varchar2,
543 	p_ptip_stat_cd                  in varchar2,
544 	p_mx_cvg_alwd_amt               in number,
545 	p_mx_enrd_alwd_ovrid_num        in number,
546 	p_mn_enrd_rqd_ovrid_num         in number,
547 	p_no_mx_pl_typ_ovrid_flag       in varchar2,
548 	p_ordr_num                      in number,
549 	p_prvds_cr_flag                 in varchar2,
550 	p_rqd_perd_enrt_nenrt_val       in number,
551 	p_rqd_perd_enrt_nenrt_tm_uom    in varchar2,
552 	p_wvbl_flag                     in varchar2,
553 	p_drvd_fctr_dpnt_cvg_flag       in varchar2,
554 	p_no_mn_pl_typ_overid_flag      in varchar2,
555 	p_sbj_to_sps_lf_ins_mx_flag     in varchar2,
556 	p_sbj_to_dpnt_lf_ins_mx_flag    in varchar2,
557 	p_use_to_sum_ee_lf_ins_flag     in varchar2,
558         p_per_cvrd_cd                   in varchar2,
559         p_short_name                   in varchar2,
560         p_short_code                   in varchar2,
561                 p_legislation_code                   in varchar2,
562                 p_legislation_subgroup                   in varchar2,
563         p_vrfy_fmly_mmbr_cd             in varchar2,
564         p_vrfy_fmly_mmbr_rl             in number,
565 	p_ivr_ident                     in varchar2,
566         p_url_ref_name                  in varchar2,
567 	p_rqd_enrt_perd_tco_cd          in varchar2,
568 	p_pgm_id                        in number,
569 	p_pl_typ_id                     in number,
570 	p_cmbn_ptip_id                  in number,
571 	p_cmbn_ptip_opt_id              in number,
572         p_acrs_ptip_cvg_id              in number,
573 	p_business_group_id             in number,
574 	p_ctp_attribute_category        in varchar2,
575 	p_ctp_attribute1                in varchar2,
576 	p_ctp_attribute2                in varchar2,
577 	p_ctp_attribute3                in varchar2,
578 	p_ctp_attribute4                in varchar2,
579 	p_ctp_attribute5                in varchar2,
580 	p_ctp_attribute6                in varchar2,
581 	p_ctp_attribute7                in varchar2,
582 	p_ctp_attribute8                in varchar2,
583 	p_ctp_attribute9                in varchar2,
584 	p_ctp_attribute10               in varchar2,
585 	p_ctp_attribute11               in varchar2,
586 	p_ctp_attribute12               in varchar2,
587 	p_ctp_attribute13               in varchar2,
588 	p_ctp_attribute14               in varchar2,
589 	p_ctp_attribute15               in varchar2,
590 	p_ctp_attribute16               in varchar2,
591 	p_ctp_attribute17               in varchar2,
592 	p_ctp_attribute18               in varchar2,
593 	p_ctp_attribute19               in varchar2,
594 	p_ctp_attribute20               in varchar2,
595 	p_ctp_attribute21               in varchar2,
596 	p_ctp_attribute22               in varchar2,
597 	p_ctp_attribute23               in varchar2,
598 	p_ctp_attribute24               in varchar2,
599 	p_ctp_attribute25               in varchar2,
600 	p_ctp_attribute26               in varchar2,
601 	p_ctp_attribute27               in varchar2,
602 	p_ctp_attribute28               in varchar2,
603 	p_ctp_attribute29               in varchar2,
604 	p_ctp_attribute30               in varchar2,
605 	p_object_version_number         in number
606 	)
607 	Return g_rec_type;
608 --
609 end ben_ctp_shd;