[Home] [Help]
PACKAGE BODY: APPS.HR_ITP_INS
Source
1 Package Body hr_itp_ins as
2 /* $Header: hritprhi.pkb 115.11 2003/12/03 07:01:45 adhunter noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' hr_itp_ins.'; -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------------< insert_dml >------------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 -- This procedure controls the actual dml insert logic. The processing of
17 -- this procedure are as follows:
18 -- 1) Initialise the object_version_number to 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 insert the row into the schema.
23 -- 4) To trap any constraint violations that may have occurred.
24 -- 5) To raise any other errors.
25 --
26 -- Prerequisites:
27 -- This is an internal private procedure which must be called from the ins
28 -- procedure and must have all mandatory attributes set (except the
29 -- object_version_number which is initialised within this procedure).
30 --
31 -- In Parameters:
32 -- A Pl/Sql record structre.
33 --
34 -- Post Success:
35 -- The specified row will be inserted into the schema.
36 --
37 -- Post Failure:
38 -- On the insert 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 -- None.
47 --
48 -- Access Status:
49 -- Internal Row Handler Use Only.
50 --
51 -- {End Of Comments}
52 -- ----------------------------------------------------------------------------
53 Procedure insert_dml
54 (p_rec in out nocopy hr_itp_shd.g_rec_type
55 ) is
56 --
57 l_proc varchar2(72) := g_package||'insert_dml';
58 --
59 Begin
60 hr_utility.set_location('Entering:'||l_proc, 5);
61 hr_utility.set_location('Entering:'||to_char(p_rec.previous_navigation_item_id), 5);
62 hr_utility.set_location('Entering:'||to_char(p_rec.next_navigation_item_id), 5);
63 p_rec.object_version_number := 1; -- Initialise the object version
64 --
65 --
66 --
67 --
68 -- Insert the row into: hr_item_properties_b
69 --
70 insert into hr_item_properties_b
71 (item_property_id
72 ,object_version_number
73 ,form_item_id
74 ,template_item_id
75 ,template_item_context_id
76 ,alignment
77 ,bevel
78 ,case_restriction
79 ,enabled
80 ,format_mask
81 ,height
82 ,information_formula_id
83 ,information_parameter_item_id1
84 ,information_parameter_item_id2
85 ,information_parameter_item_id3
86 ,information_parameter_item_id4
87 ,information_parameter_item_id5
88 ,insert_allowed
89 ,prompt_alignment_offset
90 ,prompt_display_style
91 ,prompt_edge
92 ,prompt_edge_alignment
93 ,prompt_edge_offset
94 ,prompt_text_alignment
95 ,query_allowed
96 ,required
97 ,update_allowed
98 ,validation_formula_id
99 ,validation_parameter_item_id1
100 ,validation_parameter_item_id2
101 ,validation_parameter_item_id3
102 ,validation_parameter_item_id4
103 ,validation_parameter_item_id5
104 ,visible
105 ,width
106 ,x_position
107 ,y_position
108 ,information_category
109 ,information1
110 ,information2
111 ,information3
112 ,information4
113 ,information5
114 ,information6
115 ,information7
116 ,information8
117 ,information9
118 ,information10
119 ,information11
120 ,information12
121 ,information13
122 ,information14
123 ,information15
124 ,information16
125 ,information17
126 ,information18
127 ,information19
128 ,information20
129 ,information21
130 ,information22
131 ,information23
132 ,information24
133 ,information25
134 ,information26
135 ,information27
136 ,information28
137 ,information29
138 ,information30
139 ,next_navigation_item_id
140 ,previous_navigation_item_id
141 )
142 Values
143 (p_rec.item_property_id
144 ,p_rec.object_version_number
145 ,p_rec.form_item_id
146 ,p_rec.template_item_id
147 ,p_rec.template_item_context_id
148 ,p_rec.alignment
149 ,p_rec.bevel
150 ,p_rec.case_restriction
151 ,p_rec.enabled
152 ,p_rec.format_mask
153 ,p_rec.height
154 ,p_rec.information_formula_id
155 ,p_rec.information_parameter_item_id1
156 ,p_rec.information_parameter_item_id2
157 ,p_rec.information_parameter_item_id3
158 ,p_rec.information_parameter_item_id4
159 ,p_rec.information_parameter_item_id5
160 ,p_rec.insert_allowed
161 ,p_rec.prompt_alignment_offset
162 ,p_rec.prompt_display_style
163 ,p_rec.prompt_edge
164 ,p_rec.prompt_edge_alignment
165 ,p_rec.prompt_edge_offset
166 ,p_rec.prompt_text_alignment
167 ,p_rec.query_allowed
168 ,p_rec.required
169 ,p_rec.update_allowed
170 ,p_rec.validation_formula_id
171 ,p_rec.validation_parameter_item_id1
172 ,p_rec.validation_parameter_item_id2
173 ,p_rec.validation_parameter_item_id3
174 ,p_rec.validation_parameter_item_id4
175 ,p_rec.validation_parameter_item_id5
176 ,p_rec.visible
177 ,p_rec.width
178 ,p_rec.x_position
179 ,p_rec.y_position
180 ,p_rec.information_category
181 ,p_rec.information1
182 ,p_rec.information2
183 ,p_rec.information3
184 ,p_rec.information4
185 ,p_rec.information5
186 ,p_rec.information6
187 ,p_rec.information7
188 ,p_rec.information8
189 ,p_rec.information9
190 ,p_rec.information10
191 ,p_rec.information11
192 ,p_rec.information12
193 ,p_rec.information13
194 ,p_rec.information14
195 ,p_rec.information15
196 ,p_rec.information16
197 ,p_rec.information17
198 ,p_rec.information18
199 ,p_rec.information19
200 ,p_rec.information20
201 ,p_rec.information21
202 ,p_rec.information22
203 ,p_rec.information23
204 ,p_rec.information24
205 ,p_rec.information25
206 ,p_rec.information26
207 ,p_rec.information27
208 ,p_rec.information28
209 ,p_rec.information29
210 ,p_rec.information30
211 ,p_rec.next_navigation_item_id
212 ,p_rec.previous_navigation_item_id
213 );
214 --
215 --
216 --
217 hr_utility.set_location(' Leaving:'||l_proc, 10);
218 Exception
219 When hr_api.check_integrity_violated Then
220 -- A check constraint has been violated
221 --
222 hr_itp_shd.constraint_error
223 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
224 When hr_api.parent_integrity_violated Then
225 -- Parent integrity has been violated
226 --
227 hr_itp_shd.constraint_error
228 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
229 When hr_api.unique_integrity_violated Then
230 -- Unique integrity has been violated
231 --
232 hr_itp_shd.constraint_error
233 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
234 When Others Then
235 --
236 Raise;
237 End insert_dml;
238 --
239 -- ----------------------------------------------------------------------------
240 -- |------------------------------< pre_insert >------------------------------|
241 -- ----------------------------------------------------------------------------
242 -- {Start Of Comments}
243 --
244 -- Description:
245 -- This private procedure contains any processing which is required before
246 -- the insert dml. Presently, if the entity has a corresponding primary
247 -- key which is maintained by an associating sequence, the primary key for
248 -- the entity will be populated with the next sequence value in
249 -- preparation for the insert dml.
250 --
251 -- Prerequisites:
252 -- This is an internal procedure which is called from the ins procedure.
253 --
254 -- In Parameters:
255 -- A Pl/Sql record structre.
256 --
257 -- Post Success:
258 -- Processing continues.
259 --
260 -- Post Failure:
261 -- If an error has occurred, an error message and exception will be raised
262 -- but not handled.
263 --
264 -- Developer Implementation Notes:
265 -- Any pre-processing required before the insert dml is issued should be
266 -- coded within this procedure. As stated above, a good example is the
267 -- generation of a primary key number via a corresponding sequence.
268 -- It is important to note that any 3rd party maintenance should be reviewed
269 -- before placing in this procedure.
270 --
271 -- Access Status:
272 -- Internal Row Handler Use Only.
273 --
274 -- {End Of Comments}
275 -- ----------------------------------------------------------------------------
276 Procedure pre_insert
277 (p_rec in out nocopy hr_itp_shd.g_rec_type
278 ) is
279 --
280 l_proc varchar2(72) := g_package||'pre_insert';
281 --
282 Cursor C_Sel1 is select hr_item_properties_b_s.nextval from sys.dual;
283 --
284 Begin
285 hr_utility.set_location('Entering:'||l_proc, 5);
286 --
287 --
288 -- Select the next sequence number
289 --
290 Open C_Sel1;
291 Fetch C_Sel1 Into p_rec.item_property_id;
292 Close C_Sel1;
293 --
294 hr_utility.set_location(' Leaving:'||l_proc, 10);
295 End pre_insert;
296 --
297 -- ----------------------------------------------------------------------------
298 -- |-----------------------------< post_insert >------------------------------|
299 -- ----------------------------------------------------------------------------
300 -- {Start Of Comments}
301 --
302 -- Description:
303 -- This private procedure contains any processing which is required after the
304 -- insert dml.
305 --
306 -- Prerequisites:
307 -- This is an internal procedure which is called from the ins procedure.
308 --
309 -- In Parameters:
310 -- A Pl/Sql record structre.
311 --
312 -- Post Success:
313 -- Processing continues.
314 --
315 -- Post Failure:
316 -- If an error has occurred, an error message and exception will be raised
317 -- but not handled.
318 --
319 -- Developer Implementation Notes:
320 -- Any post-processing required after the insert dml is issued should be
321 -- coded within this procedure. It is important to note that any 3rd party
322 -- maintenance should be reviewed before placing in this procedure.
323 --
324 -- Access Status:
325 -- Internal Row Handler Use Only.
326 --
327 -- {End Of Comments}
328 -- ----------------------------------------------------------------------------
329 Procedure post_insert
330 (p_effective_date in date
331 ,p_rec in hr_itp_shd.g_rec_type
332 ) is
333 --
334 l_proc varchar2(72) := g_package||'post_insert';
335 --
336 Begin
337 hr_utility.set_location('Entering:'||l_proc, 5);
338 begin
339 --
340 hr_itp_rki.after_insert
341 (p_effective_date => p_effective_date
342 ,p_object_version_number
343 => p_rec.object_version_number
344 ,p_item_property_id
345 => p_rec.item_property_id
346 ,p_form_item_id
347 => p_rec.form_item_id
348 ,p_template_item_id
349 => p_rec.template_item_id
350 ,p_template_item_context_id
351 => p_rec.template_item_context_id
352 ,p_alignment
353 => p_rec.alignment
354 ,p_bevel
355 => p_rec.bevel
356 ,p_case_restriction
357 => p_rec.case_restriction
358 ,p_enabled
359 => p_rec.enabled
360 ,p_format_mask
361 => p_rec.format_mask
362 ,p_height
363 => p_rec.height
364 ,p_information_formula_id
365 => p_rec.information_formula_id
366 ,p_information_param_item_id1
367 => p_rec.information_parameter_item_id1
368 ,p_information_param_item_id2
369 => p_rec.information_parameter_item_id2
370 ,p_information_param_item_id3
371 => p_rec.information_parameter_item_id3
372 ,p_information_param_item_id4
373 => p_rec.information_parameter_item_id4
374 ,p_information_param_item_id5
375 => p_rec.information_parameter_item_id5
376 ,p_insert_allowed
377 => p_rec.insert_allowed
378 ,p_prompt_alignment_offset
379 => p_rec.prompt_alignment_offset
380 ,p_prompt_display_style
381 => p_rec.prompt_display_style
382 ,p_prompt_edge
383 => p_rec.prompt_edge
384 ,p_prompt_edge_alignment
385 => p_rec.prompt_edge_alignment
386 ,p_prompt_edge_offset
387 => p_rec.prompt_edge_offset
388 ,p_prompt_text_alignment
389 => p_rec.prompt_text_alignment
390 ,p_query_allowed
391 => p_rec.query_allowed
392 ,p_required
393 => p_rec.required
394 ,p_update_allowed
395 => p_rec.update_allowed
396 ,p_validation_formula_id
397 => p_rec.validation_formula_id
398 ,p_validation_param_item_id1
399 => p_rec.validation_parameter_item_id1
400 ,p_validation_param_item_id2
401 => p_rec.validation_parameter_item_id2
402 ,p_validation_param_item_id3
403 => p_rec.validation_parameter_item_id3
404 ,p_validation_param_item_id4
405 => p_rec.validation_parameter_item_id4
406 ,p_validation_param_item_id5
407 => p_rec.validation_parameter_item_id5
408 ,p_visible
409 => p_rec.visible
410 ,p_width
411 => p_rec.width
412 ,p_x_position
413 => p_rec.x_position
414 ,p_y_position
415 => p_rec.y_position
416 ,p_information_category
417 => p_rec.information_category
418 ,p_information1
419 => p_rec.information1
420 ,p_information2
421 => p_rec.information2
422 ,p_information3
423 => p_rec.information3
424 ,p_information4
425 => p_rec.information4
426 ,p_information5
427 => p_rec.information5
428 ,p_information6
429 => p_rec.information6
430 ,p_information7
431 => p_rec.information7
432 ,p_information8
433 => p_rec.information8
434 ,p_information9
435 => p_rec.information9
436 ,p_information10
437 => p_rec.information10
438 ,p_information11
439 => p_rec.information11
440 ,p_information12
444 ,p_information14
441 => p_rec.information12
442 ,p_information13
443 => p_rec.information13
445 => p_rec.information14
446 ,p_information15
447 => p_rec.information15
448 ,p_information16
449 => p_rec.information16
450 ,p_information17
451 => p_rec.information17
452 ,p_information18
453 => p_rec.information18
454 ,p_information19
455 => p_rec.information19
456 ,p_information20
457 => p_rec.information20
458 ,p_information21
459 => p_rec.information21
460 ,p_information22
461 => p_rec.information22
462 ,p_information23
463 => p_rec.information23
464 ,p_information24
465 => p_rec.information24
466 ,p_information25
467 => p_rec.information25
468 ,p_information26
469 => p_rec.information26
470 ,p_information27
471 => p_rec.information27
472 ,p_information28
473 => p_rec.information28
474 ,p_information29
475 => p_rec.information29
476 ,p_information30
477 => p_rec.information30
478 ,p_next_navigation_item_id
479 => p_rec.next_navigation_item_id
480 ,p_previous_navigation_item_id
481 => p_rec.previous_navigation_item_id
482 );
483 --
484 exception
485 --
486 when hr_api.cannot_find_prog_unit then
487 --
488 hr_api.cannot_find_prog_unit_error
489 (p_module_name => 'HR_ITEM_PROPERTIES_B'
490 ,p_hook_type => 'AI');
491 --
492 end;
493 --
494 hr_utility.set_location(' Leaving:'||l_proc, 10);
495 End post_insert;
496 --
497 -- ----------------------------------------------------------------------------
498 -- |---------------------------------< ins >----------------------------------|
499 -- ----------------------------------------------------------------------------
500 Procedure ins
501 (p_effective_date in date
502 ,p_rec in out nocopy hr_itp_shd.g_rec_type
503 ) is
504 --
505 l_proc varchar2(72) := g_package||'ins';
506 --
507 Begin
508 hr_utility.set_location('Entering:'||l_proc, 5);
509 --
510 -- Call the supporting insert validate operations
511 --
512 hr_itp_bus.insert_validate
513 (p_effective_date
514 ,p_rec
515 );
516 --
517 -- Call the supporting pre-insert operation
518 --
519 hr_itp_ins.pre_insert(p_rec);
520 --
521 -- Insert the row
522 --
523 hr_itp_ins.insert_dml(p_rec);
524 --
525 -- Call the supporting post-insert operation
526 --
527 hr_itp_ins.post_insert
528 (p_effective_date
529 ,p_rec
530 );
531 --
532 hr_utility.set_location('Leaving:'||l_proc, 20);
533 end ins;
534 --
535 -- ----------------------------------------------------------------------------
536 -- |---------------------------------< ins >----------------------------------|
537 -- ----------------------------------------------------------------------------
538 Procedure ins
539 (p_effective_date in date
540 ,p_form_item_id in number default null
541 ,p_template_item_id in number default null
542 ,p_template_item_context_id in number default null
543 ,p_alignment in number default null
544 ,p_bevel in number default null
545 ,p_case_restriction in number default null
546 ,p_enabled in number default null
547 ,p_format_mask in varchar2 default null
548 ,p_height in number default null
549 ,p_information_formula_id in number default null
550 ,p_information_param_item_id1 in number default null
551 ,p_information_param_item_id2 in number default null
552 ,p_information_param_item_id3 in number default null
553 ,p_information_param_item_id4 in number default null
554 ,p_information_param_item_id5 in number default null
555 ,p_insert_allowed in number default null
556 ,p_prompt_alignment_offset in number default null
557 ,p_prompt_display_style in number default null
558 ,p_prompt_edge in number default null
559 ,p_prompt_edge_alignment in number default null
560 ,p_prompt_edge_offset in number default null
561 ,p_prompt_text_alignment in number default null
562 ,p_query_allowed in number default null
563 ,p_required in number default null
564 ,p_update_allowed in number default null
565 ,p_validation_formula_id in number default null
566 ,p_validation_param_item_id1 in number default null
567 ,p_validation_param_item_id2 in number default null
568 ,p_validation_param_item_id3 in number default null
569 ,p_validation_param_item_id4 in number default null
570 ,p_validation_param_item_id5 in number default null
574 ,p_y_position in number default null
571 ,p_visible in number default null
572 ,p_width in number default null
573 ,p_x_position in number default null
575 ,p_information_category in varchar2 default null
576 ,p_information1 in varchar2 default null
577 ,p_information2 in varchar2 default null
578 ,p_information3 in varchar2 default null
579 ,p_information4 in varchar2 default null
580 ,p_information5 in varchar2 default null
581 ,p_information6 in varchar2 default null
582 ,p_information7 in varchar2 default null
583 ,p_information8 in varchar2 default null
584 ,p_information9 in varchar2 default null
585 ,p_information10 in varchar2 default null
586 ,p_information11 in varchar2 default null
587 ,p_information12 in varchar2 default null
588 ,p_information13 in varchar2 default null
589 ,p_information14 in varchar2 default null
590 ,p_information15 in varchar2 default null
591 ,p_information16 in varchar2 default null
592 ,p_information17 in varchar2 default null
593 ,p_information18 in varchar2 default null
594 ,p_information19 in varchar2 default null
595 ,p_information20 in varchar2 default null
596 ,p_information21 in varchar2 default null
597 ,p_information22 in varchar2 default null
598 ,p_information23 in varchar2 default null
599 ,p_information24 in varchar2 default null
600 ,p_information25 in varchar2 default null
601 ,p_information26 in varchar2 default null
602 ,p_information27 in varchar2 default null
603 ,p_information28 in varchar2 default null
604 ,p_information29 in varchar2 default null
605 ,p_information30 in varchar2 default null
606 ,p_next_navigation_item_id in number default null
607 ,p_previous_navigation_item_id in number default null
608 ,p_item_property_id out nocopy number
609 ,p_object_version_number out nocopy number
610 ) is
611 --
612 l_rec hr_itp_shd.g_rec_type;
613 l_proc varchar2(72) := g_package||'ins';
614 --
615 Begin
616 hr_utility.set_location('Entering:'||l_proc, 5);
617 --
618 -- Call conversion function to turn arguments into the
619 -- p_rec structure.
620 --
621 l_rec :=
622 hr_itp_shd.convert_args
623 (null
624 ,p_object_version_number
625 ,p_form_item_id
626 ,p_template_item_id
627 ,p_template_item_context_id
628 ,p_alignment
629 ,p_bevel
630 ,p_case_restriction
631 ,p_enabled
632 ,p_format_mask
633 ,p_height
634 ,p_information_formula_id
635 ,p_information_param_item_id1
636 ,p_information_param_item_id2
637 ,p_information_param_item_id3
638 ,p_information_param_item_id4
639 ,p_information_param_item_id5
640 ,p_insert_allowed
641 ,p_prompt_alignment_offset
642 ,p_prompt_display_style
643 ,p_prompt_edge
644 ,p_prompt_edge_alignment
645 ,p_prompt_edge_offset
646 ,p_prompt_text_alignment
647 ,p_query_allowed
648 ,p_required
649 ,p_update_allowed
650 ,p_validation_formula_id
651 ,p_validation_param_item_id1
652 ,p_validation_param_item_id2
653 ,p_validation_param_item_id3
654 ,p_validation_param_item_id4
655 ,p_validation_param_item_id5
656 ,p_visible
657 ,p_width
658 ,p_x_position
659 ,p_y_position
660 ,p_information_category
661 ,p_information1
662 ,p_information2
663 ,p_information3
664 ,p_information4
665 ,p_information5
666 ,p_information6
667 ,p_information7
668 ,p_information8
669 ,p_information9
670 ,p_information10
671 ,p_information11
672 ,p_information12
673 ,p_information13
674 ,p_information14
675 ,p_information15
676 ,p_information16
677 ,p_information17
678 ,p_information18
679 ,p_information19
680 ,p_information20
681 ,p_information21
682 ,p_information22
683 ,p_information23
684 ,p_information24
685 ,p_information25
686 ,p_information26
687 ,p_information27
688 ,p_information28
689 ,p_information29
690 ,p_information30
691 ,p_next_navigation_item_id
692 ,p_previous_navigation_item_id
693 );
694 --
695 -- Having converted the arguments into the hr_itp_rec
696 -- plsql record structure we call the corresponding record business process.
697 --
698 hr_itp_ins.ins
699 (p_effective_date
700 ,l_rec
701 );
702 --
703 -- As the primary key argument(s)
704 -- are specified as an OUT's we must set these values.
705 --
706 p_item_property_id := l_rec.item_property_id;
707 p_object_version_number := l_rec.object_version_number;
708 --
709 hr_utility.set_location(' Leaving:'||l_proc, 10);
710 End ins;
711 --
712 end hr_itp_ins;