[Home] [Help]
PACKAGE BODY: APPS.HXC_ULQ_INS
Source
1 Package Body hxc_ulq_ins as
2 /* $Header: hxculqrhi.pkb 120.2 2005/09/23 06:26:40 rchennur noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' hxc_ulq_ins.'; -- Global package name
9 g_debug boolean := hr_utility.debug_enabled;
10 --
11 -- ----------------------------------------------------------------------------
12 -- |------------------------------< insert_dml >------------------------------|
13 -- ----------------------------------------------------------------------------
14 -- {Start Of Comments}
15 --
16 -- Description:
17 -- This procedure controls the actual dml insert logic. The processing of
18 -- this procedure are as follows:
19 -- 1) Initialise the object_version_number to 1 if the object_version_number
20 -- is defined as an attribute for this entity.
21 -- 2) To set and unset the g_api_dml status as required (as we are about to
22 -- perform dml).
23 -- 3) To insert the row into the schema.
24 -- 4) To trap any constraint violations that may have occurred.
25 -- 5) To raise any other errors.
26 --
27 -- Prerequisites:
28 -- This is an internal private procedure which must be called from the ins
29 -- procedure and must have all mandatory attributes set (except the
30 -- object_version_number which is initialised within this procedure).
31 --
32 -- In Parameters:
33 -- A Pl/Sql record structre.
34 --
35 -- Post Success:
36 -- The specified row will be inserted into the schema.
37 --
38 -- Post Failure:
39 -- On the insert dml failure it is important to note that we always reset the
40 -- g_api_dml status to false.
41 -- If a check, unique or parent integrity constraint violation is raised the
42 -- constraint_error procedure will be called.
43 -- If any other error is reported, the error will be raised after the
44 -- g_api_dml status is reset.
45 --
46 -- Developer Implementation Notes:
47 -- None.
48 --
49 -- Access Status:
50 -- Internal Row Handler Use Only.
51 --
52 -- {End Of Comments}
53 -- ----------------------------------------------------------------------------
54 Procedure insert_dml
55 (p_rec in out nocopy hxc_ulq_shd.g_rec_type
56 ) is
57 --
58 l_proc varchar2(72) ;
59 --
60 Begin
61
62 if g_debug then
63 l_proc := g_package||'insert_dml';
64 hr_utility.set_location('Entering:'||l_proc, 5);
65 end if;
66 p_rec.object_version_number := 1; -- Initialise the object version
67 --
68 --
69 --
70 -- Insert the row into: hxc_layout_comp_qualifiers
71 --
72 insert into hxc_layout_comp_qualifiers
73 (layout_comp_qualifier_id
74 ,layout_component_id
75 ,qualifier_name
76 ,qualifier_attribute_category
77 ,qualifier_attribute1
78 ,qualifier_attribute2
79 ,qualifier_attribute3
80 ,qualifier_attribute4
81 ,qualifier_attribute5
82 ,qualifier_attribute6
83 ,qualifier_attribute7
84 ,qualifier_attribute8
85 ,qualifier_attribute9
86 ,qualifier_attribute10
87 ,qualifier_attribute11
88 ,qualifier_attribute12
89 ,qualifier_attribute13
90 ,qualifier_attribute14
91 ,qualifier_attribute15
92 ,qualifier_attribute16
93 ,qualifier_attribute17
94 ,qualifier_attribute18
95 ,qualifier_attribute19
96 ,qualifier_attribute20
97 ,qualifier_attribute21
98 ,qualifier_attribute22
99 ,qualifier_attribute23
100 ,qualifier_attribute24
101 ,qualifier_attribute25
102 ,qualifier_attribute26
103 ,qualifier_attribute27
104 ,qualifier_attribute28
108 ,creation_date
105 ,qualifier_attribute29
106 ,qualifier_attribute30
107 ,object_version_number
109 ,created_by
110 ,last_updated_by
111 ,last_update_date
112 ,last_update_login
113 )
114 Values
115 (p_rec.layout_comp_qualifier_id
116 ,p_rec.layout_component_id
117 ,p_rec.qualifier_name
118 ,p_rec.qualifier_attribute_category
119 ,p_rec.qualifier_attribute1
120 ,p_rec.qualifier_attribute2
121 ,p_rec.qualifier_attribute3
122 ,p_rec.qualifier_attribute4
123 ,p_rec.qualifier_attribute5
124 ,p_rec.qualifier_attribute6
125 ,p_rec.qualifier_attribute7
126 ,p_rec.qualifier_attribute8
127 ,p_rec.qualifier_attribute9
128 ,p_rec.qualifier_attribute10
129 ,p_rec.qualifier_attribute11
130 ,p_rec.qualifier_attribute12
131 ,p_rec.qualifier_attribute13
132 ,p_rec.qualifier_attribute14
133 ,p_rec.qualifier_attribute15
134 ,p_rec.qualifier_attribute16
135 ,p_rec.qualifier_attribute17
136 ,p_rec.qualifier_attribute18
137 ,p_rec.qualifier_attribute19
138 ,p_rec.qualifier_attribute20
139 ,p_rec.qualifier_attribute21
140 ,p_rec.qualifier_attribute22
141 ,p_rec.qualifier_attribute23
142 ,p_rec.qualifier_attribute24
143 ,p_rec.qualifier_attribute25
144 ,p_rec.qualifier_attribute26
145 ,p_rec.qualifier_attribute27
146 ,p_rec.qualifier_attribute28
147 ,p_rec.qualifier_attribute29
148 ,p_rec.qualifier_attribute30
149 ,p_rec.object_version_number
150 ,sysdate
151 ,fnd_global.user_id
152 ,fnd_global.user_id
153 ,sysdate
154 ,fnd_global.login_id
155 );
156 --
157 --
158 --
159 if g_debug then
160 hr_utility.set_location(' Leaving:'||l_proc, 10);
161 end if;
162 Exception
163 When hr_api.check_integrity_violated Then
164 -- A check constraint has been violated
165 --
166 hxc_ulq_shd.constraint_error
167 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
168 When hr_api.parent_integrity_violated Then
169 -- Parent integrity has been violated
170 --
171 hxc_ulq_shd.constraint_error
172 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
173 When hr_api.unique_integrity_violated Then
174 -- Unique integrity has been violated
175 --
176 hxc_ulq_shd.constraint_error
177 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
178 When Others Then
179 --
180 Raise;
181 End insert_dml;
182 --
183 -- ----------------------------------------------------------------------------
184 -- |------------------------------< pre_insert >------------------------------|
185 -- ----------------------------------------------------------------------------
186 -- {Start Of Comments}
187 --
188 -- Description:
189 -- This private procedure contains any processing which is required before
190 -- the insert dml. Presently, if the entity has a corresponding primary
191 -- key which is maintained by an associating sequence, the primary key for
192 -- the entity will be populated with the next sequence value in
193 -- preparation for the insert dml.
194 --
195 -- Prerequisites:
196 -- This is an internal procedure which is called from the ins procedure.
197 --
198 -- In Parameters:
199 -- A Pl/Sql record structre.
200 --
201 -- Post Success:
202 -- Processing continues.
203 --
204 -- Post Failure:
205 -- If an error has occurred, an error message and exception will be raised
206 -- but not handled.
207 --
208 -- Developer Implementation Notes:
209 -- Any pre-processing required before the insert dml is issued should be
210 -- coded within this procedure. As stated above, a good example is the
211 -- generation of a primary key number via a corresponding sequence.
212 -- It is important to note that any 3rd party maintenance should be reviewed
213 -- before placing in this procedure.
214 --
215 -- Access Status:
216 -- Internal Row Handler Use Only.
217 --
218 -- {End Of Comments}
219 -- ----------------------------------------------------------------------------
220 Procedure pre_insert
221 (p_rec in out nocopy hxc_ulq_shd.g_rec_type
222 ) is
223 --
224 l_proc varchar2(72) ;
225 --
226 Cursor C_Sel1 is select hxc_layout_comp_qualifiers_s.nextval from sys.dual;
227 --
228 Begin
229
230 if g_debug then
231 l_proc := g_package||'pre_insert';
232 hr_utility.set_location('Entering:'||l_proc, 5);
233 end if;
234 --
235 --
236 -- Select the next sequence number
237 --
238 Open C_Sel1;
239 Fetch C_Sel1 Into p_rec.layout_comp_qualifier_id;
240 Close C_Sel1;
241 --
242 if g_debug then
243 hr_utility.set_location(' Leaving:'||l_proc, 10);
244 end if;
245 End pre_insert;
246 --
247 -- ----------------------------------------------------------------------------
248 -- |-----------------------------< post_insert >------------------------------|
249 -- ----------------------------------------------------------------------------
250 -- {Start Of Comments}
251 --
252 -- Description:
253 -- This private procedure contains any processing which is required after the
254 -- insert dml.
255 --
256 -- Prerequisites:
257 -- This is an internal procedure which is called from the ins procedure.
258 --
259 -- In Parameters:
260 -- A Pl/Sql record structre.
261 --
262 -- Post Success:
263 -- Processing continues.
264 --
265 -- Post Failure:
269 -- Developer Implementation Notes:
266 -- If an error has occurred, an error message and exception will be raised
267 -- but not handled.
268 --
270 -- Any post-processing required after the insert dml is issued should be
271 -- coded within this procedure. It is important to note that any 3rd party
272 -- maintenance should be reviewed before placing in this procedure.
273 --
274 -- Access Status:
275 -- Internal Row Handler Use Only.
276 --
277 -- {End Of Comments}
278 -- ----------------------------------------------------------------------------
279 Procedure post_insert
280 (p_rec in hxc_ulq_shd.g_rec_type
281 ) is
282 --
283 l_proc varchar2(72) ;
284 --
285 Begin
286
287 if g_debug then
288 l_proc := g_package||'post_insert';
289 hr_utility.set_location('Entering:'||l_proc, 5);
290 end if;
291 begin
292 --
293 hxc_ulq_rki.after_insert
294 (p_layout_comp_qualifier_id
295 => p_rec.layout_comp_qualifier_id
296 ,p_layout_component_id
297 => p_rec.layout_component_id
298 ,p_qualifier_name
299 => p_rec.qualifier_name
300 ,p_qualifier_attribute_category
301 => p_rec.qualifier_attribute_category
302 ,p_qualifier_attribute1
303 => p_rec.qualifier_attribute1
304 ,p_qualifier_attribute2
305 => p_rec.qualifier_attribute2
306 ,p_qualifier_attribute3
307 => p_rec.qualifier_attribute3
308 ,p_qualifier_attribute4
309 => p_rec.qualifier_attribute4
310 ,p_qualifier_attribute5
311 => p_rec.qualifier_attribute5
312 ,p_qualifier_attribute6
313 => p_rec.qualifier_attribute6
314 ,p_qualifier_attribute7
315 => p_rec.qualifier_attribute7
316 ,p_qualifier_attribute8
317 => p_rec.qualifier_attribute8
318 ,p_qualifier_attribute9
319 => p_rec.qualifier_attribute9
320 ,p_qualifier_attribute10
321 => p_rec.qualifier_attribute10
322 ,p_qualifier_attribute11
323 => p_rec.qualifier_attribute11
324 ,p_qualifier_attribute12
325 => p_rec.qualifier_attribute12
326 ,p_qualifier_attribute13
327 => p_rec.qualifier_attribute13
328 ,p_qualifier_attribute14
329 => p_rec.qualifier_attribute14
330 ,p_qualifier_attribute15
331 => p_rec.qualifier_attribute15
332 ,p_qualifier_attribute16
333 => p_rec.qualifier_attribute16
334 ,p_qualifier_attribute17
335 => p_rec.qualifier_attribute17
336 ,p_qualifier_attribute18
337 => p_rec.qualifier_attribute18
338 ,p_qualifier_attribute19
339 => p_rec.qualifier_attribute19
340 ,p_qualifier_attribute20
341 => p_rec.qualifier_attribute20
342 ,p_qualifier_attribute21
343 => p_rec.qualifier_attribute21
344 ,p_qualifier_attribute22
345 => p_rec.qualifier_attribute22
346 ,p_qualifier_attribute23
347 => p_rec.qualifier_attribute23
348 ,p_qualifier_attribute24
349 => p_rec.qualifier_attribute24
350 ,p_qualifier_attribute25
351 => p_rec.qualifier_attribute25
352 ,p_qualifier_attribute26
353 => p_rec.qualifier_attribute26
354 ,p_qualifier_attribute27
355 => p_rec.qualifier_attribute27
356 ,p_qualifier_attribute28
357 => p_rec.qualifier_attribute28
358 ,p_qualifier_attribute29
359 => p_rec.qualifier_attribute29
360 ,p_qualifier_attribute30
361 => p_rec.qualifier_attribute30
362 ,p_object_version_number
363 => p_rec.object_version_number
364 );
365 --
366 exception
367 --
368 when hr_api.cannot_find_prog_unit then
369 --
370 hr_api.cannot_find_prog_unit_error
371 (p_module_name => 'HXC_LAYOUT_COMP_QUALIFIERS'
372 ,p_hook_type => 'AI');
373 --
374 end;
375 --
376 if g_debug then
377 hr_utility.set_location(' Leaving:'||l_proc, 10);
378 end if;
379 End post_insert;
380 --
381 -- ----------------------------------------------------------------------------
382 -- |---------------------------------< ins >----------------------------------|
383 -- ----------------------------------------------------------------------------
384 Procedure ins
385 (p_rec in out nocopy hxc_ulq_shd.g_rec_type
386 ) is
387 --
388 l_proc varchar2(72) ;
389 --
390 Begin
391 g_debug :=hr_utility.debug_enabled;
392 if g_debug then
393 l_proc := g_package||'ins';
394 hr_utility.set_location('Entering:'||l_proc, 5);
395 end if;
396 --
397 -- Call the supporting insert validate operations
398 --
399 hxc_ulq_bus.insert_validate
400 (p_rec
401 );
402 --
403 -- Call the supporting pre-insert operation
404 --
405 hxc_ulq_ins.pre_insert(p_rec);
406 --
407 -- Insert the row
408 --
409 hxc_ulq_ins.insert_dml(p_rec);
410 --
411 -- Call the supporting post-insert operation
412 --
413 hxc_ulq_ins.post_insert
414 (p_rec
415 );
416 --
417 if g_debug then
418 hr_utility.set_location('Leaving:'||l_proc, 20);
419 end if;
420 end ins;
421 --
422 -- ----------------------------------------------------------------------------
423 -- |---------------------------------< ins >----------------------------------|
424 -- ----------------------------------------------------------------------------
425 Procedure ins
426 (p_layout_component_id in number
427 ,p_qualifier_name in varchar2
431 ,p_qualifier_attribute3 in varchar2 default null
428 ,p_qualifier_attribute_category in varchar2 default null
429 ,p_qualifier_attribute1 in varchar2 default null
430 ,p_qualifier_attribute2 in varchar2 default null
432 ,p_qualifier_attribute4 in varchar2 default null
433 ,p_qualifier_attribute5 in varchar2 default null
434 ,p_qualifier_attribute6 in varchar2 default null
435 ,p_qualifier_attribute7 in varchar2 default null
436 ,p_qualifier_attribute8 in varchar2 default null
437 ,p_qualifier_attribute9 in varchar2 default null
438 ,p_qualifier_attribute10 in varchar2 default null
439 ,p_qualifier_attribute11 in varchar2 default null
440 ,p_qualifier_attribute12 in varchar2 default null
441 ,p_qualifier_attribute13 in varchar2 default null
442 ,p_qualifier_attribute14 in varchar2 default null
443 ,p_qualifier_attribute15 in varchar2 default null
444 ,p_qualifier_attribute16 in varchar2 default null
445 ,p_qualifier_attribute17 in varchar2 default null
446 ,p_qualifier_attribute18 in varchar2 default null
447 ,p_qualifier_attribute19 in varchar2 default null
448 ,p_qualifier_attribute20 in varchar2 default null
449 ,p_qualifier_attribute21 in varchar2 default null
450 ,p_qualifier_attribute22 in varchar2 default null
451 ,p_qualifier_attribute23 in varchar2 default null
452 ,p_qualifier_attribute24 in varchar2 default null
453 ,p_qualifier_attribute25 in varchar2 default null
454 ,p_qualifier_attribute26 in varchar2 default null
455 ,p_qualifier_attribute27 in varchar2 default null
456 ,p_qualifier_attribute28 in varchar2 default null
457 ,p_qualifier_attribute29 in varchar2 default null
458 ,p_qualifier_attribute30 in varchar2 default null
459 ,p_layout_comp_qualifier_id out nocopy number
460 ,p_object_version_number out nocopy number
461 ) is
462 --
463 l_rec hxc_ulq_shd.g_rec_type;
464 l_proc varchar2(72) ;
465 --
466 Begin
467 g_debug :=hr_utility.debug_enabled;
468 if g_debug then
469 l_proc := g_package||'ins';
470 hr_utility.set_location('Entering:'||l_proc, 5);
471 end if;
472 --
473 -- Call conversion function to turn arguments into the
474 -- p_rec structure.
475 --
476 l_rec :=
477 hxc_ulq_shd.convert_args
478 (null
479 ,p_layout_component_id
480 ,p_qualifier_name
481 ,p_qualifier_attribute_category
482 ,p_qualifier_attribute1
483 ,p_qualifier_attribute2
484 ,p_qualifier_attribute3
485 ,p_qualifier_attribute4
486 ,p_qualifier_attribute5
487 ,p_qualifier_attribute6
488 ,p_qualifier_attribute7
489 ,p_qualifier_attribute8
490 ,p_qualifier_attribute9
491 ,p_qualifier_attribute10
492 ,p_qualifier_attribute11
493 ,p_qualifier_attribute12
494 ,p_qualifier_attribute13
495 ,p_qualifier_attribute14
496 ,p_qualifier_attribute15
497 ,p_qualifier_attribute16
498 ,p_qualifier_attribute17
499 ,p_qualifier_attribute18
500 ,p_qualifier_attribute19
501 ,p_qualifier_attribute20
502 ,p_qualifier_attribute21
503 ,p_qualifier_attribute22
504 ,p_qualifier_attribute23
505 ,p_qualifier_attribute24
506 ,p_qualifier_attribute25
507 ,p_qualifier_attribute26
508 ,p_qualifier_attribute27
509 ,p_qualifier_attribute28
510 ,p_qualifier_attribute29
511 ,p_qualifier_attribute30
512 ,null
513 );
514 --
515 -- Having converted the arguments into the hxc_ulq_rec
516 -- plsql record structure we call the corresponding record business process.
517 --
518 hxc_ulq_ins.ins
519 (l_rec
520 );
521 --
522 -- As the primary key argument(s)
523 -- are specified as an OUT's we must set these values.
524 --
525 p_layout_comp_qualifier_id := l_rec.layout_comp_qualifier_id;
526 p_object_version_number := l_rec.object_version_number;
527 --
528 if g_debug then
529 hr_utility.set_location(' Leaving:'||l_proc, 10);
530 end if;
531 End ins;
532 --
533 end hxc_ulq_ins;