DBA Data[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;