DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_ETM_INS

Source


1 Package Body pay_etm_ins as
2 /* $Header: pyetmrhi.pkb 120.0 2005/05/29 04:42:30 appldev noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  pay_etm_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 insert the row into the schema.
21 --   3) To trap any constraint violations that may have occurred.
22 --   4) To raise any other errors.
23 --
24 -- Prerequisites:
25 --   This is an internal private procedure which must be called from the ins
26 --   procedure and must have all mandatory attributes set (except the
27 --   object_version_number which is initialised within this procedure).
28 --
29 -- In Parameters:
30 --   A Pl/Sql record structre.
31 --
32 -- Post Success:
33 --   The specified row will be inserted into the schema.
34 --
35 -- Post Failure:
36 --   If a check, unique or parent integrity constraint violation is raised the
37 --   constraint_error procedure will be called.
38 --
39 -- Developer Implementation Notes:
40 --   None.
41 --
42 -- Access Status:
43 --   Internal Row Handler Use Only.
44 --
45 -- {End Of Comments}
46 -- ----------------------------------------------------------------------------
47 Procedure insert_dml(p_rec in out nocopy pay_etm_shd.g_rec_type) is
48 --
49   l_proc  varchar2(72) := g_package||'insert_dml';
50 --
51 Begin
52   hr_utility.set_location('Entering:'||l_proc, 5);
53   p_rec.object_version_number := 1;  -- Initialise the object version
54   --
55   -- Insert the row into: pay_element_templates
56   --
57   insert into pay_element_templates
58   (	template_id,
59 	template_type,
60 	template_name,
61 	base_processing_priority,
62 	business_group_id,
63 	legislation_code,
64 	version_number,
65 	base_name,
66 	max_base_name_length,
67 	preference_info_category,
68 	preference_information1,
69 	preference_information2,
70 	preference_information3,
71 	preference_information4,
72 	preference_information5,
73 	preference_information6,
74 	preference_information7,
75 	preference_information8,
76 	preference_information9,
77 	preference_information10,
78 	preference_information11,
79 	preference_information12,
80 	preference_information13,
81 	preference_information14,
82 	preference_information15,
83 	preference_information16,
84 	preference_information17,
85 	preference_information18,
86 	preference_information19,
87 	preference_information20,
88 	preference_information21,
89 	preference_information22,
90 	preference_information23,
91 	preference_information24,
92 	preference_information25,
93 	preference_information26,
94 	preference_information27,
95 	preference_information28,
96 	preference_information29,
97 	preference_information30,
98 	configuration_info_category,
99 	configuration_information1,
100 	configuration_information2,
101 	configuration_information3,
102 	configuration_information4,
103 	configuration_information5,
104 	configuration_information6,
105 	configuration_information7,
106 	configuration_information8,
107 	configuration_information9,
108 	configuration_information10,
109 	configuration_information11,
110 	configuration_information12,
111 	configuration_information13,
112 	configuration_information14,
113 	configuration_information15,
114 	configuration_information16,
115 	configuration_information17,
116 	configuration_information18,
117 	configuration_information19,
118 	configuration_information20,
119 	configuration_information21,
120 	configuration_information22,
121 	configuration_information23,
122 	configuration_information24,
123 	configuration_information25,
124 	configuration_information26,
125 	configuration_information27,
126 	configuration_information28,
127 	configuration_information29,
128 	configuration_information30,
129 	object_version_number
130   )
131   Values
132   (	p_rec.template_id,
133 	p_rec.template_type,
134 	p_rec.template_name,
135 	p_rec.base_processing_priority,
136 	p_rec.business_group_id,
137 	p_rec.legislation_code,
138 	p_rec.version_number,
139 	p_rec.base_name,
140 	p_rec.max_base_name_length,
141 	p_rec.preference_info_category,
142 	p_rec.preference_information1,
143 	p_rec.preference_information2,
144 	p_rec.preference_information3,
145 	p_rec.preference_information4,
146 	p_rec.preference_information5,
147 	p_rec.preference_information6,
148 	p_rec.preference_information7,
149 	p_rec.preference_information8,
150 	p_rec.preference_information9,
151 	p_rec.preference_information10,
152 	p_rec.preference_information11,
153 	p_rec.preference_information12,
154 	p_rec.preference_information13,
155 	p_rec.preference_information14,
156 	p_rec.preference_information15,
157 	p_rec.preference_information16,
158 	p_rec.preference_information17,
159 	p_rec.preference_information18,
160 	p_rec.preference_information19,
161 	p_rec.preference_information20,
162 	p_rec.preference_information21,
163 	p_rec.preference_information22,
164 	p_rec.preference_information23,
165 	p_rec.preference_information24,
166 	p_rec.preference_information25,
167 	p_rec.preference_information26,
168 	p_rec.preference_information27,
169 	p_rec.preference_information28,
170 	p_rec.preference_information29,
171 	p_rec.preference_information30,
172 	p_rec.configuration_info_category,
173 	p_rec.configuration_information1,
174 	p_rec.configuration_information2,
175 	p_rec.configuration_information3,
176 	p_rec.configuration_information4,
177 	p_rec.configuration_information5,
178 	p_rec.configuration_information6,
179 	p_rec.configuration_information7,
180 	p_rec.configuration_information8,
181 	p_rec.configuration_information9,
182 	p_rec.configuration_information10,
183 	p_rec.configuration_information11,
184 	p_rec.configuration_information12,
185 	p_rec.configuration_information13,
186 	p_rec.configuration_information14,
187 	p_rec.configuration_information15,
188 	p_rec.configuration_information16,
189 	p_rec.configuration_information17,
190 	p_rec.configuration_information18,
191 	p_rec.configuration_information19,
192 	p_rec.configuration_information20,
193 	p_rec.configuration_information21,
194 	p_rec.configuration_information22,
195 	p_rec.configuration_information23,
196 	p_rec.configuration_information24,
197 	p_rec.configuration_information25,
198 	p_rec.configuration_information26,
199 	p_rec.configuration_information27,
200 	p_rec.configuration_information28,
201 	p_rec.configuration_information29,
202 	p_rec.configuration_information30,
203 	p_rec.object_version_number
204   );
205   --
206   hr_utility.set_location(' Leaving:'||l_proc, 10);
207 Exception
208   When hr_api.check_integrity_violated Then
209     -- A check constraint has been violated
210     pay_etm_shd.constraint_error
211       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
212   When hr_api.parent_integrity_violated Then
213     -- Parent integrity has been violated
214     pay_etm_shd.constraint_error
215       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
216   When hr_api.unique_integrity_violated Then
217     -- Unique integrity has been violated
218     pay_etm_shd.constraint_error
219       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
220   When Others Then
221     Raise;
222 End insert_dml;
223 --
224 -- ----------------------------------------------------------------------------
225 -- |------------------------------< pre_insert >------------------------------|
226 -- ----------------------------------------------------------------------------
227 -- {Start Of Comments}
228 --
229 -- Description:
230 --   This private procedure contains any processing which is required before
231 --   the insert dml. Presently, if the entity has a corresponding primary
232 --   key which is maintained by an associating sequence, the primary key for
233 --   the entity will be populated with the next sequence value in
234 --   preparation for the insert dml.
235 --
236 -- Prerequisites:
237 --   This is an internal procedure which is called from the ins procedure.
238 --
239 -- In Parameters:
240 --   A Pl/Sql record structre.
241 --
242 -- Post Success:
243 --   Processing continues.
244 --
245 -- Post Failure:
246 --   If an error has occurred, an error message and exception will be raised
247 --   but not handled.
248 --
249 -- Developer Implementation Notes:
250 --   Any pre-processing required before the insert dml is issued should be
251 --   coded within this procedure. As stated above, a good example is the
252 --   generation of a primary key number via a corresponding sequence.
253 --   It is important to note that any 3rd party maintenance should be reviewed
254 --   before placing in this procedure.
255 --
256 -- Access Status:
257 --   Internal Row Handler Use Only.
258 --
259 -- {End Of Comments}
260 -- ----------------------------------------------------------------------------
261 Procedure pre_insert(p_rec  in out nocopy pay_etm_shd.g_rec_type) is
262 --
263   l_proc  varchar2(72) := g_package||'pre_insert';
264 --
265   Cursor C_Sel1 is select pay_element_templates_s.nextval from sys.dual;
266 --
267 Begin
268   hr_utility.set_location('Entering:'||l_proc, 5);
269   --
270   --
271   -- Select the next sequence number
272   --
273   Open C_Sel1;
274   Fetch C_Sel1 Into p_rec.template_id;
275   Close C_Sel1;
276   --
277   hr_utility.set_location(' Leaving:'||l_proc, 10);
278 End pre_insert;
279 --
280 -- ----------------------------------------------------------------------------
281 -- |-----------------------------< post_insert >------------------------------|
282 -- ----------------------------------------------------------------------------
283 -- {Start Of Comments}
284 --
285 -- Description:
286 --   This private procedure contains any processing which is required after the
287 --   insert dml.
288 --
289 -- Prerequisites:
290 --   This is an internal procedure which is called from the ins procedure.
291 --
292 -- In Parameters:
293 --   A Pl/Sql record structre.
294 --
295 -- Post Success:
296 --   Processing continues.
297 --
298 -- Post Failure:
299 --   If an error has occurred, an error message and exception will be raised
300 --   but not handled.
301 --
302 -- Developer Implementation Notes:
303 --   Any post-processing required after the insert dml is issued should be
304 --   coded within this procedure. It is important to note that any 3rd party
305 --   maintenance should be reviewed before placing in this procedure.
306 --
307 -- Access Status:
308 --   Internal Row Handler Use Only.
309 --
310 -- {End Of Comments}
311 -- ----------------------------------------------------------------------------
312 Procedure post_insert(p_rec in pay_etm_shd.g_rec_type) is
313 --
314   l_proc  varchar2(72) := g_package||'post_insert';
315 --
316 Begin
317   hr_utility.set_location('Entering:'||l_proc, 5);
318   --
319   hr_utility.set_location(' Leaving:'||l_proc, 10);
320 End post_insert;
321 --
322 -- ----------------------------------------------------------------------------
323 -- |---------------------------------< ins >----------------------------------|
324 -- ----------------------------------------------------------------------------
325 Procedure ins
326   (p_effective_date  in     date
327   ,p_rec             in out nocopy pay_etm_shd.g_rec_type
328   ) is
329 --
330   l_proc  varchar2(72) := g_package||'ins';
331 --
332 Begin
333   hr_utility.set_location('Entering:'||l_proc, 5);
334   --
335   -- Call the supporting insert validate operations
336   --
337   pay_etm_bus.insert_validate(p_effective_date, p_rec);
338   --
339   -- Call the supporting pre-insert operation
340   --
341   pre_insert(p_rec);
342   --
343   -- Insert the row
344   --
345   insert_dml(p_rec);
346   --
347   -- Call the supporting post-insert operation
348   --
349   post_insert(p_rec);
350 end ins;
351 --
352 -- ----------------------------------------------------------------------------
353 -- |---------------------------------< ins >----------------------------------|
354 -- ----------------------------------------------------------------------------
355 Procedure ins
356   (
357   p_template_id                  out nocopy number,
358   p_effective_date               in date,
359   p_template_type                in varchar2,
360   p_template_name                in varchar2,
361   p_base_processing_priority     in number,
362   p_business_group_id            in number           default null,
363   p_legislation_code             in varchar2         default null,
364   p_version_number               in number,
365   p_base_name                    in varchar2         default null,
366   p_max_base_name_length         in number,
367   p_preference_info_category     in varchar2         default null,
368   p_preference_information1      in varchar2         default null,
369   p_preference_information2      in varchar2         default null,
370   p_preference_information3      in varchar2         default null,
371   p_preference_information4      in varchar2         default null,
372   p_preference_information5      in varchar2         default null,
373   p_preference_information6      in varchar2         default null,
374   p_preference_information7      in varchar2         default null,
375   p_preference_information8      in varchar2         default null,
376   p_preference_information9      in varchar2         default null,
377   p_preference_information10     in varchar2         default null,
378   p_preference_information11     in varchar2         default null,
379   p_preference_information12     in varchar2         default null,
380   p_preference_information13     in varchar2         default null,
381   p_preference_information14     in varchar2         default null,
382   p_preference_information15     in varchar2         default null,
383   p_preference_information16     in varchar2         default null,
384   p_preference_information17     in varchar2         default null,
385   p_preference_information18     in varchar2         default null,
386   p_preference_information19     in varchar2         default null,
387   p_preference_information20     in varchar2         default null,
388   p_preference_information21     in varchar2         default null,
389   p_preference_information22     in varchar2         default null,
390   p_preference_information23     in varchar2         default null,
391   p_preference_information24     in varchar2         default null,
392   p_preference_information25     in varchar2         default null,
393   p_preference_information26     in varchar2         default null,
394   p_preference_information27     in varchar2         default null,
395   p_preference_information28     in varchar2         default null,
396   p_preference_information29     in varchar2         default null,
397   p_preference_information30     in varchar2         default null,
398   p_configuration_info_category  in varchar2         default null,
399   p_configuration_information1   in varchar2         default null,
400   p_configuration_information2   in varchar2         default null,
401   p_configuration_information3   in varchar2         default null,
402   p_configuration_information4   in varchar2         default null,
403   p_configuration_information5   in varchar2         default null,
404   p_configuration_information6   in varchar2         default null,
405   p_configuration_information7   in varchar2         default null,
406   p_configuration_information8   in varchar2         default null,
407   p_configuration_information9   in varchar2         default null,
408   p_configuration_information10  in varchar2         default null,
409   p_configuration_information11  in varchar2         default null,
410   p_configuration_information12  in varchar2         default null,
411   p_configuration_information13  in varchar2         default null,
412   p_configuration_information14  in varchar2         default null,
413   p_configuration_information15  in varchar2         default null,
414   p_configuration_information16  in varchar2         default null,
415   p_configuration_information17  in varchar2         default null,
416   p_configuration_information18  in varchar2         default null,
417   p_configuration_information19  in varchar2         default null,
418   p_configuration_information20  in varchar2         default null,
419   p_configuration_information21  in varchar2         default null,
420   p_configuration_information22  in varchar2         default null,
421   p_configuration_information23  in varchar2         default null,
422   p_configuration_information24  in varchar2         default null,
423   p_configuration_information25  in varchar2         default null,
424   p_configuration_information26  in varchar2         default null,
425   p_configuration_information27  in varchar2         default null,
426   p_configuration_information28  in varchar2         default null,
427   p_configuration_information29  in varchar2         default null,
428   p_configuration_information30  in varchar2         default null,
429   p_object_version_number        out nocopy number
430   ) is
431 --
432   l_rec	  pay_etm_shd.g_rec_type;
433   l_proc  varchar2(72) := g_package||'ins';
434 --
435 Begin
436   hr_utility.set_location('Entering:'||l_proc, 5);
437   --
438   -- Call conversion function to turn arguments into the
439   -- p_rec structure.
440   --
441   l_rec :=
442   pay_etm_shd.convert_args
443   (
444   null,
445   p_template_type,
446   p_template_name,
447   p_base_processing_priority,
448   p_business_group_id,
449   p_legislation_code,
450   p_version_number,
451   p_base_name,
452   p_max_base_name_length,
453   p_preference_info_category,
454   p_preference_information1,
455   p_preference_information2,
456   p_preference_information3,
457   p_preference_information4,
458   p_preference_information5,
459   p_preference_information6,
460   p_preference_information7,
461   p_preference_information8,
462   p_preference_information9,
463   p_preference_information10,
464   p_preference_information11,
465   p_preference_information12,
466   p_preference_information13,
467   p_preference_information14,
468   p_preference_information15,
469   p_preference_information16,
470   p_preference_information17,
471   p_preference_information18,
472   p_preference_information19,
473   p_preference_information20,
474   p_preference_information21,
475   p_preference_information22,
476   p_preference_information23,
477   p_preference_information24,
478   p_preference_information25,
479   p_preference_information26,
480   p_preference_information27,
481   p_preference_information28,
482   p_preference_information29,
483   p_preference_information30,
484   p_configuration_info_category,
485   p_configuration_information1,
486   p_configuration_information2,
487   p_configuration_information3,
488   p_configuration_information4,
489   p_configuration_information5,
490   p_configuration_information6,
491   p_configuration_information7,
492   p_configuration_information8,
493   p_configuration_information9,
494   p_configuration_information10,
495   p_configuration_information11,
496   p_configuration_information12,
497   p_configuration_information13,
498   p_configuration_information14,
499   p_configuration_information15,
500   p_configuration_information16,
501   p_configuration_information17,
502   p_configuration_information18,
503   p_configuration_information19,
504   p_configuration_information20,
505   p_configuration_information21,
506   p_configuration_information22,
507   p_configuration_information23,
508   p_configuration_information24,
509   p_configuration_information25,
510   p_configuration_information26,
511   p_configuration_information27,
512   p_configuration_information28,
513   p_configuration_information29,
514   p_configuration_information30,
515   null
516   );
517   --
518   -- Having converted the arguments into the pay_etm_rec
519   -- plsql record structure we call the corresponding record business process.
520   --
521   ins(p_effective_date, l_rec);
522   --
523   -- As the primary key argument(s)
524   -- are specified as an OUT's we must set these values.
525   --
526   p_template_id := l_rec.template_id;
527   p_object_version_number := l_rec.object_version_number;
528   --
529   hr_utility.set_location(' Leaving:'||l_proc, 10);
530 End ins;
531 --
532 end pay_etm_ins;