[Home] [Help]
PACKAGE BODY: APPS.PAY_EEI_INS
Source
1 Package Body pay_eei_ins as
2 /* $Header: pyeeirhi.pkb 120.11.12020000.2 2013/02/06 13:17:37 kskoduri ship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' pay_eei_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 pay_eei_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 p_rec.object_version_number := 1; -- Initialise the object version
62 --
63 pay_eei_shd.g_api_dml := true; -- Set the api dml status
64 --
65 -- Insert the row into: pay_element_type_extra_info
66 --
67 insert into pay_element_type_extra_info
68 (element_type_extra_info_id
69 ,element_type_id
70 ,information_type
71 ,request_id
72 ,program_application_id
73 ,program_id
74 ,program_update_date
75 ,eei_attribute_category
76 ,eei_attribute1
77 ,eei_attribute2
78 ,eei_attribute3
79 ,eei_attribute4
80 ,eei_attribute5
81 ,eei_attribute6
82 ,eei_attribute7
83 ,eei_attribute8
84 ,eei_attribute9
85 ,eei_attribute10
86 ,eei_attribute11
87 ,eei_attribute12
88 ,eei_attribute13
89 ,eei_attribute14
90 ,eei_attribute15
91 ,eei_attribute16
92 ,eei_attribute17
93 ,eei_attribute18
94 ,eei_attribute19
95 ,eei_attribute20
96 ,eei_information_category
97 ,eei_information1
98 ,eei_information2
99 ,eei_information3
100 ,eei_information4
101 ,eei_information5
102 ,eei_information6
103 ,eei_information7
104 ,eei_information8
105 ,eei_information9
106 ,eei_information10
107 ,eei_information11
108 ,eei_information12
109 ,eei_information13
110 ,eei_information14
111 ,eei_information15
112 ,eei_information16
113 ,eei_information17
114 ,eei_information18
115 ,eei_information19
116 ,eei_information20
117 ,eei_information21
118 ,eei_information22
119 ,eei_information23
120 ,eei_information24
121 ,eei_information25
122 ,eei_information26
123 ,eei_information27
124 ,eei_information28
125 ,eei_information29
126 ,eei_information30
127 ,object_version_number
128 )
129 Values
130 (p_rec.element_type_extra_info_id
131 ,p_rec.element_type_id
132 ,p_rec.information_type
133 ,p_rec.request_id
134 ,p_rec.program_application_id
135 ,p_rec.program_id
136 ,p_rec.program_update_date
137 ,p_rec.eei_attribute_category
138 ,p_rec.eei_attribute1
139 ,p_rec.eei_attribute2
140 ,p_rec.eei_attribute3
141 ,p_rec.eei_attribute4
142 ,p_rec.eei_attribute5
143 ,p_rec.eei_attribute6
144 ,p_rec.eei_attribute7
145 ,p_rec.eei_attribute8
146 ,p_rec.eei_attribute9
147 ,p_rec.eei_attribute10
148 ,p_rec.eei_attribute11
149 ,p_rec.eei_attribute12
150 ,p_rec.eei_attribute13
151 ,p_rec.eei_attribute14
152 ,p_rec.eei_attribute15
153 ,p_rec.eei_attribute16
154 ,p_rec.eei_attribute17
155 ,p_rec.eei_attribute18
156 ,p_rec.eei_attribute19
157 ,p_rec.eei_attribute20
158 ,p_rec.eei_information_category
159 ,p_rec.eei_information1
160 ,p_rec.eei_information2
161 ,p_rec.eei_information3
162 ,p_rec.eei_information4
163 ,p_rec.eei_information5
164 ,p_rec.eei_information6
165 ,p_rec.eei_information7
166 ,p_rec.eei_information8
167 ,p_rec.eei_information9
168 ,p_rec.eei_information10
169 ,p_rec.eei_information11
170 ,p_rec.eei_information12
171 ,p_rec.eei_information13
172 ,p_rec.eei_information14
173 ,p_rec.eei_information15
174 ,p_rec.eei_information16
175 ,p_rec.eei_information17
176 ,p_rec.eei_information18
177 ,p_rec.eei_information19
178 ,p_rec.eei_information20
179 ,p_rec.eei_information21
180 ,p_rec.eei_information22
181 ,p_rec.eei_information23
182 ,p_rec.eei_information24
183 ,p_rec.eei_information25
184 ,p_rec.eei_information26
185 ,p_rec.eei_information27
186 ,p_rec.eei_information28
187 ,p_rec.eei_information29
188 ,p_rec.eei_information30
189 ,p_rec.object_version_number
190 );
191 --
192 pay_eei_shd.g_api_dml := false; -- Unset the api dml status
193 --
194 hr_utility.set_location(' Leaving:'||l_proc, 10);
195 Exception
196 When hr_api.check_integrity_violated Then
197 -- A check constraint has been violated
198 pay_eei_shd.g_api_dml := false; -- Unset the api dml status
199 pay_eei_shd.constraint_error
200 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
201 When hr_api.parent_integrity_violated Then
202 -- Parent integrity has been violated
203 pay_eei_shd.g_api_dml := false; -- Unset the api dml status
204 pay_eei_shd.constraint_error
205 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
206 When hr_api.unique_integrity_violated Then
207 -- Unique integrity has been violated
208 pay_eei_shd.g_api_dml := false; -- Unset the api dml status
209 pay_eei_shd.constraint_error
210 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
211 When Others Then
212 pay_eei_shd.g_api_dml := false; -- Unset the api dml status
213 Raise;
214 End insert_dml;
215 --
216 -- ----------------------------------------------------------------------------
217 -- |------------------------------< pre_insert >------------------------------|
218 -- ----------------------------------------------------------------------------
219 -- {Start Of Comments}
220 --
221 -- Description:
222 -- This private procedure contains any processing which is required before
223 -- the insert dml. Presently, if the entity has a corresponding primary
224 -- key which is maintained by an associating sequence, the primary key for
225 -- the entity will be populated with the next sequence value in
226 -- preparation for the insert dml.
227 --
228 -- Prerequisites:
229 -- This is an internal procedure which is called from the ins procedure.
230 --
231 -- In Parameters:
232 -- A Pl/Sql record structre.
233 --
234 -- Post Success:
235 -- Processing continues.
236 --
237 -- Post Failure:
238 -- If an error has occurred, an error message and exception will be raised
239 -- but not handled.
240 --
241 -- Developer Implementation Notes:
242 -- Any pre-processing required before the insert dml is issued should be
243 -- coded within this procedure. As stated above, a good example is the
244 -- generation of a primary key number via a corresponding sequence.
245 -- It is important to note that any 3rd party maintenance should be reviewed
246 -- before placing in this procedure.
247 --
248 -- Access Status:
249 -- Internal Row Handler Use Only.
250 --
251 -- {End Of Comments}
252 -- ----------------------------------------------------------------------------
253 Procedure pre_insert
254 (p_rec in out nocopy pay_eei_shd.g_rec_type
255 ) is
256 --
257 l_proc varchar2(72) := g_package||'pre_insert';
258 --
259 Cursor C_Sel1 is select pay_element_type_extra_info_s.nextval from sys.dual;
260 --
261 Begin
262 hr_utility.set_location('Entering:'||l_proc, 5);
263 --
264 --
265 -- Select the next sequence number
266 --
267 Open C_Sel1;
268 Fetch C_Sel1 Into p_rec.element_type_extra_info_id;
269 Close C_Sel1;
270 --
271 hr_utility.set_location(' Leaving:'||l_proc, 10);
272 End pre_insert;
273 --
274 -- ----------------------------------------------------------------------------
275 -- |-----------------------------< post_insert >------------------------------|
276 -- ----------------------------------------------------------------------------
277 -- {Start Of Comments}
278 --
279 -- Description:
280 -- This private procedure contains any processing which is required after the
281 -- insert dml.
282 --
283 -- Prerequisites:
284 -- This is an internal procedure which is called from the ins procedure.
285 --
286 -- In Parameters:
287 -- A Pl/Sql record structre.
288 --
289 -- Post Success:
290 -- Processing continues.
291 --
292 -- Post Failure:
293 -- If an error has occurred, an error message and exception will be raised
294 -- but not handled.
295 --
296 -- Developer Implementation Notes:
297 -- Any post-processing required after the insert dml is issued should be
298 -- coded within this procedure. It is important to note that any 3rd party
299 -- maintenance should be reviewed before placing in this procedure.
300 --
301 -- Access Status:
302 -- Internal Row Handler Use Only.
303 --
304 -- {End Of Comments}
305 -- ----------------------------------------------------------------------------
306 Procedure post_insert
307 (p_rec in pay_eei_shd.g_rec_type
308 ) is
309 --
310 l_proc varchar2(72) := g_package||'post_insert';
311 --
312 Begin
313 hr_utility.set_location('Entering:'||l_proc, 5);
314 begin
315 --
316 pay_eei_rki.after_insert
317 (p_element_type_extra_info_id
318 => p_rec.element_type_extra_info_id
319 ,p_element_type_id
320 => p_rec.element_type_id
321 ,p_information_type
322 => p_rec.information_type
323 ,p_request_id
324 => p_rec.request_id
325 ,p_program_application_id
326 => p_rec.program_application_id
327 ,p_program_id
328 => p_rec.program_id
329 ,p_program_update_date
330 => p_rec.program_update_date
331 ,p_eei_attribute_category
332 => p_rec.eei_attribute_category
333 ,p_eei_attribute1
334 => p_rec.eei_attribute1
335 ,p_eei_attribute2
336 => p_rec.eei_attribute2
337 ,p_eei_attribute3
338 => p_rec.eei_attribute3
339 ,p_eei_attribute4
340 => p_rec.eei_attribute4
341 ,p_eei_attribute5
342 => p_rec.eei_attribute5
343 ,p_eei_attribute6
344 => p_rec.eei_attribute6
345 ,p_eei_attribute7
346 => p_rec.eei_attribute7
347 ,p_eei_attribute8
348 => p_rec.eei_attribute8
349 ,p_eei_attribute9
350 => p_rec.eei_attribute9
351 ,p_eei_attribute10
352 => p_rec.eei_attribute10
353 ,p_eei_attribute11
354 => p_rec.eei_attribute11
355 ,p_eei_attribute12
356 => p_rec.eei_attribute12
357 ,p_eei_attribute13
358 => p_rec.eei_attribute13
359 ,p_eei_attribute14
360 => p_rec.eei_attribute14
361 ,p_eei_attribute15
362 => p_rec.eei_attribute15
363 ,p_eei_attribute16
364 => p_rec.eei_attribute16
365 ,p_eei_attribute17
366 => p_rec.eei_attribute17
367 ,p_eei_attribute18
368 => p_rec.eei_attribute18
369 ,p_eei_attribute19
370 => p_rec.eei_attribute19
371 ,p_eei_attribute20
372 => p_rec.eei_attribute20
373 ,p_eei_information_category
374 => p_rec.eei_information_category
375 ,p_eei_information1
376 => p_rec.eei_information1
377 ,p_eei_information2
378 => p_rec.eei_information2
379 ,p_eei_information3
380 => p_rec.eei_information3
381 ,p_eei_information4
382 => p_rec.eei_information4
383 ,p_eei_information5
384 => p_rec.eei_information5
385 ,p_eei_information6
386 => p_rec.eei_information6
387 ,p_eei_information7
388 => p_rec.eei_information7
389 ,p_eei_information8
390 => p_rec.eei_information8
391 ,p_eei_information9
392 => p_rec.eei_information9
393 ,p_eei_information10
394 => p_rec.eei_information10
395 ,p_eei_information11
396 => p_rec.eei_information11
397 ,p_eei_information12
398 => p_rec.eei_information12
399 ,p_eei_information13
400 => p_rec.eei_information13
401 ,p_eei_information14
402 => p_rec.eei_information14
403 ,p_eei_information15
404 => p_rec.eei_information15
405 ,p_eei_information16
406 => p_rec.eei_information16
407 ,p_eei_information17
408 => p_rec.eei_information17
409 ,p_eei_information18
410 => p_rec.eei_information18
411 ,p_eei_information19
412 => p_rec.eei_information19
413 ,p_eei_information20
414 => p_rec.eei_information20
415 ,p_eei_information21
416 => p_rec.eei_information21
417 ,p_eei_information22
418 => p_rec.eei_information22
419 ,p_eei_information23
420 => p_rec.eei_information23
421 ,p_eei_information24
422 => p_rec.eei_information24
423 ,p_eei_information25
424 => p_rec.eei_information25
425 ,p_eei_information26
426 => p_rec.eei_information26
427 ,p_eei_information27
428 => p_rec.eei_information27
429 ,p_eei_information28
430 => p_rec.eei_information28
431 ,p_eei_information29
432 => p_rec.eei_information29
433 ,p_eei_information30
434 => p_rec.eei_information30
435 ,p_object_version_number
436 => p_rec.object_version_number
437 );
438 --
439 exception
440 --
441 when hr_api.cannot_find_prog_unit then
442 --
443 hr_api.cannot_find_prog_unit_error
444 (p_module_name => 'PAY_ELEMENT_TYPE_EXTRA_INFO'
445 ,p_hook_type => 'AI');
446 --
447 end;
448 --
449 hr_utility.set_location(' Leaving:'||l_proc, 10);
450 End post_insert;
451 --
452 -- ----------------------------------------------------------------------------
453 -- |---------------------------------< ins >----------------------------------|
454 -- ----------------------------------------------------------------------------
455 Procedure ins
456 (p_rec in out nocopy pay_eei_shd.g_rec_type
457 ) is
458 --
459 l_proc varchar2(72) := g_package||'ins';
460 --
461 Begin
462 hr_utility.set_location('Entering:'||l_proc, 5);
463 --
464 -- Call the supporting insert validate operations
465 --
466 pay_eei_bus.insert_validate
467 (p_rec
468 );
469 --
470 -- Call the supporting pre-insert operation
471 --
472 pay_eei_ins.pre_insert(p_rec);
473 --
474 -- Insert the row
475 --
476 pay_eei_ins.insert_dml(p_rec);
477 --
478 -- Call the supporting post-insert operation
479 --
480 pay_eei_ins.post_insert
481 (p_rec
482 );
483 --
484 hr_utility.set_location('Leaving:'||l_proc, 20);
485 end ins;
486 --
487 -- ----------------------------------------------------------------------------
488 -- |---------------------------------< ins >----------------------------------|
489 -- ----------------------------------------------------------------------------
490 Procedure ins
491 (p_element_type_id in number
492 ,p_information_type in varchar2
493 ,p_request_id in number default null
494 ,p_program_application_id in number default null
495 ,p_program_id in number default null
496 ,p_program_update_date in date default null
497 ,p_eei_attribute_category in varchar2 default null
498 ,p_eei_attribute1 in varchar2 default null
499 ,p_eei_attribute2 in varchar2 default null
500 ,p_eei_attribute3 in varchar2 default null
501 ,p_eei_attribute4 in varchar2 default null
502 ,p_eei_attribute5 in varchar2 default null
503 ,p_eei_attribute6 in varchar2 default null
504 ,p_eei_attribute7 in varchar2 default null
505 ,p_eei_attribute8 in varchar2 default null
506 ,p_eei_attribute9 in varchar2 default null
507 ,p_eei_attribute10 in varchar2 default null
508 ,p_eei_attribute11 in varchar2 default null
509 ,p_eei_attribute12 in varchar2 default null
510 ,p_eei_attribute13 in varchar2 default null
511 ,p_eei_attribute14 in varchar2 default null
512 ,p_eei_attribute15 in varchar2 default null
513 ,p_eei_attribute16 in varchar2 default null
514 ,p_eei_attribute17 in varchar2 default null
515 ,p_eei_attribute18 in varchar2 default null
516 ,p_eei_attribute19 in varchar2 default null
517 ,p_eei_attribute20 in varchar2 default null
518 ,p_eei_information_category in varchar2 default null
519 ,p_eei_information1 in varchar2 default null
520 ,p_eei_information2 in varchar2 default null
521 ,p_eei_information3 in varchar2 default null
522 ,p_eei_information4 in varchar2 default null
523 ,p_eei_information5 in varchar2 default null
524 ,p_eei_information6 in varchar2 default null
525 ,p_eei_information7 in varchar2 default null
526 ,p_eei_information8 in varchar2 default null
527 ,p_eei_information9 in varchar2 default null
528 ,p_eei_information10 in varchar2 default null
529 ,p_eei_information11 in varchar2 default null
530 ,p_eei_information12 in varchar2 default null
531 ,p_eei_information13 in varchar2 default null
532 ,p_eei_information14 in varchar2 default null
533 ,p_eei_information15 in varchar2 default null
534 ,p_eei_information16 in varchar2 default null
535 ,p_eei_information17 in varchar2 default null
536 ,p_eei_information18 in varchar2 default null
537 ,p_eei_information19 in varchar2 default null
538 ,p_eei_information20 in varchar2 default null
539 ,p_eei_information21 in varchar2 default null
540 ,p_eei_information22 in varchar2 default null
541 ,p_eei_information23 in varchar2 default null
542 ,p_eei_information24 in varchar2 default null
543 ,p_eei_information25 in varchar2 default null
544 ,p_eei_information26 in varchar2 default null
545 ,p_eei_information27 in varchar2 default null
546 ,p_eei_information28 in varchar2 default null
547 ,p_eei_information29 in varchar2 default null
548 ,p_eei_information30 in varchar2 default null
549 ,p_element_type_extra_info_id out nocopy number
550 ,p_object_version_number out nocopy number
551 ) is
552 --
553 l_rec pay_eei_shd.g_rec_type;
554 l_proc varchar2(72) := g_package||'ins';
555 --
556 Begin
557 hr_utility.set_location('Entering:'||l_proc, 5);
558 --
559 -- Call conversion function to turn arguments into the
560 -- p_rec structure.
561 --
562 l_rec :=
563 pay_eei_shd.convert_args
564 (null
565 ,p_element_type_id
566 ,p_information_type
567 ,p_request_id
568 ,p_program_application_id
569 ,p_program_id
570 ,p_program_update_date
571 ,p_eei_attribute_category
572 ,p_eei_attribute1
573 ,p_eei_attribute2
574 ,p_eei_attribute3
575 ,p_eei_attribute4
576 ,p_eei_attribute5
577 ,p_eei_attribute6
578 ,p_eei_attribute7
579 ,p_eei_attribute8
580 ,p_eei_attribute9
581 ,p_eei_attribute10
582 ,p_eei_attribute11
583 ,p_eei_attribute12
584 ,p_eei_attribute13
585 ,p_eei_attribute14
586 ,p_eei_attribute15
587 ,p_eei_attribute16
588 ,p_eei_attribute17
589 ,p_eei_attribute18
590 ,p_eei_attribute19
591 ,p_eei_attribute20
592 ,p_eei_information_category
593 ,p_eei_information1
594 ,p_eei_information2
595 ,p_eei_information3
596 ,p_eei_information4
597 ,p_eei_information5
598 ,p_eei_information6
599 ,p_eei_information7
600 ,p_eei_information8
601 ,p_eei_information9
602 ,p_eei_information10
603 ,p_eei_information11
604 ,p_eei_information12
605 ,p_eei_information13
606 ,p_eei_information14
607 ,p_eei_information15
608 ,p_eei_information16
609 ,p_eei_information17
610 ,p_eei_information18
611 ,p_eei_information19
612 ,p_eei_information20
613 ,p_eei_information21
614 ,p_eei_information22
615 ,p_eei_information23
616 ,p_eei_information24
617 ,p_eei_information25
618 ,p_eei_information26
619 ,p_eei_information27
620 ,p_eei_information28
621 ,p_eei_information29
622 ,p_eei_information30
623 ,null
624 );
625 --
626 -- Having converted the arguments into the pay_eei_rec
627 -- plsql record structure we call the corresponding record business process.
628 --
629 pay_eei_ins.ins
630 (l_rec
631 );
632 --
633 -- As the primary key argument(s)
634 -- are specified as an OUT's we must set these values.
635 --
636 p_element_type_extra_info_id := l_rec.element_type_extra_info_id;
637 p_object_version_number := l_rec.object_version_number;
638 --
639 hr_utility.set_location(' Leaving:'||l_proc, 10);
640 End ins;
641 --
642 end pay_eei_ins;