1 Package Body hr_lei_upd as
2 /* $Header: hrleirhi.pkb 120.1.12010000.2 2009/01/28 09:08:21 ghshanka ship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' hr_lei_upd.'; -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------------< update_dml >------------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 -- This procedure controls the actual dml update logic. The processing of
17 -- this procedure is:
18 -- 1) Increment the object_version_number by 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 update the specified row in the schema using the primary key in
23 -- the predicates.
24 -- 4) To trap any constraint violations that may have occurred.
25 -- 5) To raise any other errors.
26 --
27 -- Pre Conditions:
28 -- This is an internal private procedure which must be called from the upd
29 -- procedure.
30 --
31 -- In Parameters:
32 -- A Pl/Sql record structre.
33 --
34 -- Post Success:
35 -- The specified row will be updated in the schema.
36 --
37 -- Post Failure:
38 -- On the update 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 -- The update 'set' attribute list should be modified if any of your
47 -- attributes are not updateable.
48 --
49 -- Access Status:
50 -- Internal Table Handler Use Only.
51 --
52 -- {End Of Comments}
53 -- ----------------------------------------------------------------------------
54 Procedure update_dml(p_rec in out nocopy hr_lei_shd.g_rec_type) is
55 --
56 l_proc varchar2(72) := g_package||'update_dml';
57 --
58 Begin
59 hr_utility.set_location('Entering:'||l_proc, 5);
60 --
61 -- Increment the object version
62 --
63 p_rec.object_version_number := p_rec.object_version_number + 1;
64 --
65 -- hr_lei_shd.g_api_dml := true; -- Set the api dml status
66 --
67 -- Update the hr_location_extra_info Row
68 --
69 update hr_location_extra_info
70 set
71 location_extra_info_id = p_rec.location_extra_info_id,
72 information_type = p_rec.information_type,
73 location_id = p_rec.location_id,
74 request_id = p_rec.request_id,
75 program_application_id = p_rec.program_application_id,
76 program_id = p_rec.program_id,
77 program_update_date = p_rec.program_update_date,
78 lei_attribute_category = p_rec.lei_attribute_category,
79 lei_attribute1 = p_rec.lei_attribute1,
80 lei_attribute2 = p_rec.lei_attribute2,
81 lei_attribute3 = p_rec.lei_attribute3,
82 lei_attribute4 = p_rec.lei_attribute4,
83 lei_attribute5 = p_rec.lei_attribute5,
84 lei_attribute6 = p_rec.lei_attribute6,
85 lei_attribute7 = p_rec.lei_attribute7,
86 lei_attribute8 = p_rec.lei_attribute8,
87 lei_attribute9 = p_rec.lei_attribute9,
88 lei_attribute10 = p_rec.lei_attribute10,
89 lei_attribute11 = p_rec.lei_attribute11,
90 lei_attribute12 = p_rec.lei_attribute12,
91 lei_attribute13 = p_rec.lei_attribute13,
92 lei_attribute14 = p_rec.lei_attribute14,
93 lei_attribute15 = p_rec.lei_attribute15,
94 lei_attribute16 = p_rec.lei_attribute16,
95 lei_attribute17 = p_rec.lei_attribute17,
96 lei_attribute18 = p_rec.lei_attribute18,
97 lei_attribute19 = p_rec.lei_attribute19,
98 lei_attribute20 = p_rec.lei_attribute20,
99 lei_information_category = p_rec.lei_information_category,
100 lei_information1 = p_rec.lei_information1,
101 lei_information2 = p_rec.lei_information2,
102 lei_information3 = p_rec.lei_information3,
103 lei_information4 = p_rec.lei_information4,
104 lei_information5 = p_rec.lei_information5,
105 lei_information6 = p_rec.lei_information6,
106 lei_information7 = p_rec.lei_information7,
107 lei_information8 = p_rec.lei_information8,
108 lei_information9 = p_rec.lei_information9,
109 lei_information10 = p_rec.lei_information10,
110 lei_information11 = p_rec.lei_information11,
111 lei_information12 = p_rec.lei_information12,
112 lei_information13 = p_rec.lei_information13,
113 lei_information14 = p_rec.lei_information14,
114 lei_information15 = p_rec.lei_information15,
115 lei_information16 = p_rec.lei_information16,
116 lei_information17 = p_rec.lei_information17,
117 lei_information18 = p_rec.lei_information18,
118 lei_information19 = p_rec.lei_information19,
119 lei_information20 = p_rec.lei_information20,
120 lei_information21 = p_rec.lei_information21,
121 lei_information22 = p_rec.lei_information22,
122 lei_information23 = p_rec.lei_information23,
123 lei_information24 = p_rec.lei_information24,
124 lei_information25 = p_rec.lei_information25,
125 lei_information26 = p_rec.lei_information26,
126 lei_information27 = p_rec.lei_information27,
127 lei_information28 = p_rec.lei_information28,
128 lei_information29 = p_rec.lei_information29,
129 lei_information30 = p_rec.lei_information30,
130 object_version_number = p_rec.object_version_number
131 where location_extra_info_id = p_rec.location_extra_info_id;
132 --
133 -- hr_lei_shd.g_api_dml := false; -- Unset the api dml status
134 --
135 hr_utility.set_location(' Leaving:'||l_proc, 10);
136 --
137 Exception
138 When hr_api.check_integrity_violated Then
139 -- A check constraint has been violated
140 -- hr_lei_shd.g_api_dml := false; -- Unset the api dml status
141 hr_lei_shd.constraint_error
142 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
143 When hr_api.parent_integrity_violated Then
144 -- Parent integrity has been violated
145 -- hr_lei_shd.g_api_dml := false; -- Unset the api dml status
146 hr_lei_shd.constraint_error
147 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
148 When hr_api.unique_integrity_violated Then
149 -- Unique integrity has been violated
150 -- hr_lei_shd.g_api_dml := false; -- Unset the api dml status
151 hr_lei_shd.constraint_error
152 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
153 When Others Then
154 -- hr_lei_shd.g_api_dml := false; -- Unset the api dml status
155 Raise;
156 End update_dml;
157 --
158 -- ----------------------------------------------------------------------------
159 -- |------------------------------< pre_update >------------------------------|
160 -- ----------------------------------------------------------------------------
161 -- {Start Of Comments}
162 --
163 -- Description:
164 -- This private procedure contains any processing which is required before
165 -- the update dml.
166 --
167 -- Pre Conditions:
168 -- This is an internal procedure which is called from the upd procedure.
169 --
170 -- In Parameters:
171 -- A Pl/Sql record structre.
172 --
173 -- Post Success:
174 -- Processing continues.
175 --
176 -- Post Failure:
177 -- If an error has occurred, an error message and exception will be raised
178 -- but not handled.
179 --
180 -- Developer Implementation Notes:
181 -- Any pre-processing required before the update dml is issued should be
182 -- coded within this procedure. It is important to note that any 3rd party
183 -- maintenance should be reviewed before placing in this procedure.
184 --
185 -- Access Status:
186 -- Internal Table Handler Use Only.
187 --
188 -- {End Of Comments}
189 -- ----------------------------------------------------------------------------
190 Procedure pre_update(p_rec in hr_lei_shd.g_rec_type) is
191 --
192 l_proc varchar2(72) := g_package||'pre_update';
193 --
194 Begin
195 hr_utility.set_location('Entering:'||l_proc, 5);
196 --
197 hr_utility.set_location(' Leaving:'||l_proc, 10);
198 End pre_update;
199 --
200 -- ----------------------------------------------------------------------------
201 -- |-----------------------------< post_update >------------------------------|
202 -- ----------------------------------------------------------------------------
203 -- {Start Of Comments}
204 --
205 -- Description:
206 -- This private procedure contains any processing which is required after the
207 -- update dml.
208 --
209 -- Pre Conditions:
210 -- This is an internal procedure which is called from the upd procedure.
211 --
212 -- In Parameters:
213 -- A Pl/Sql record structre.
214 --
215 -- Post Success:
216 -- Processing continues.
217 --
218 -- Post Failure:
219 -- If an error has occurred, an error message and exception will be raised
220 -- but not handled.
221 --
222 -- Developer Implementation Notes:
223 -- Any post-processing required after the update dml is issued should be
224 -- coded within this procedure. It is important to note that any 3rd party
225 -- maintenance should be reviewed before placing in this procedure.
226 --
227 -- Access Status:
228 -- Internal Table Handler Use Only.
229 --
230 -- {End Of Comments}
231 -- ----------------------------------------------------------------------------
232 Procedure post_update(p_rec in hr_lei_shd.g_rec_type) is
233 --
234 l_proc varchar2(72) := g_package||'post_update';
235 --
236 Begin
237 hr_utility.set_location('Entering:'||l_proc, 5);
238 --
239 -- This is a hook point and the user hook for post_update is called here.
240 --
241 begin
242 hr_lei_rku.after_update (
243 p_location_extra_info_id => p_rec.location_extra_info_id,
244 p_information_type => p_rec.information_type,
245 p_location_id => p_rec.location_id,
246 p_request_id => p_rec.request_id,
247 p_program_application_id => p_rec.program_application_id,
248 p_program_id => p_rec.program_id,
249 p_program_update_date => p_rec.program_update_date,
250 p_lei_attribute_category => p_rec.lei_attribute_category,
251 p_lei_attribute1 => p_rec.lei_attribute1,
252 p_lei_attribute2 => p_rec.lei_attribute2,
253 p_lei_attribute3 => p_rec.lei_attribute3,
254 p_lei_attribute4 => p_rec.lei_attribute4,
255 p_lei_attribute5 => p_rec.lei_attribute5,
256 p_lei_attribute6 => p_rec.lei_attribute6,
257 p_lei_attribute7 => p_rec.lei_attribute7,
258 p_lei_attribute8 => p_rec.lei_attribute8,
259 p_lei_attribute9 => p_rec.lei_attribute9,
260 p_lei_attribute10 => p_rec.lei_attribute10,
261 p_lei_attribute11 => p_rec.lei_attribute11,
262 p_lei_attribute12 => p_rec.lei_attribute12,
263 p_lei_attribute13 => p_rec.lei_attribute13,
264 p_lei_attribute14 => p_rec.lei_attribute14,
265 p_lei_attribute15 => p_rec.lei_attribute15,
266 p_lei_attribute16 => p_rec.lei_attribute16,
267 p_lei_attribute17 => p_rec.lei_attribute17,
268 p_lei_attribute18 => p_rec.lei_attribute18,
269 p_lei_attribute19 => p_rec.lei_attribute19,
270 p_lei_attribute20 => p_rec.lei_attribute20,
271 p_lei_information_category => p_rec.lei_information_category,
272 p_lei_information1 => p_rec.lei_information1,
273 p_lei_information2 => p_rec.lei_information2,
274 p_lei_information3 => p_rec.lei_information3,
275 p_lei_information4 => p_rec.lei_information4,
276 p_lei_information5 => p_rec.lei_information5,
277 p_lei_information6 => p_rec.lei_information6,
278 p_lei_information7 => p_rec.lei_information7,
279 p_lei_information8 => p_rec.lei_information8,
280 p_lei_information9 => p_rec.lei_information9,
281 p_lei_information10 => p_rec.lei_information10,
282 p_lei_information11 => p_rec.lei_information11,
283 p_lei_information12 => p_rec.lei_information12,
284 p_lei_information13 => p_rec.lei_information13,
285 p_lei_information14 => p_rec.lei_information14,
286 p_lei_information15 => p_rec.lei_information15,
287 p_lei_information16 => p_rec.lei_information16,
288 p_lei_information17 => p_rec.lei_information17,
289 p_lei_information18 => p_rec.lei_information18,
290 p_lei_information19 => p_rec.lei_information19,
291 p_lei_information20 => p_rec.lei_information20,
292 p_lei_information21 => p_rec.lei_information21,
293 p_lei_information22 => p_rec.lei_information22,
294 p_lei_information23 => p_rec.lei_information23,
295 p_lei_information24 => p_rec.lei_information24,
296 p_lei_information25 => p_rec.lei_information25,
297 p_lei_information26 => p_rec.lei_information26,
298 p_lei_information27 => p_rec.lei_information27,
299 p_lei_information28 => p_rec.lei_information28,
300 p_lei_information29 => p_rec.lei_information29,
301 p_lei_information30 => p_rec.lei_information30,
302 p_information_type_o => hr_lei_shd.g_old_rec.information_type,
303 p_location_id_o => hr_lei_shd.g_old_rec.location_id,
304 p_request_id_o => hr_lei_shd.g_old_rec.request_id,
305 p_program_application_id_o => hr_lei_shd.g_old_rec.program_application_id,
306 p_program_id_o => hr_lei_shd.g_old_rec.program_id,
307 p_program_update_date_o => hr_lei_shd.g_old_rec.program_update_date,
308 p_lei_attribute_category_o => hr_lei_shd.g_old_rec.lei_attribute_category,
309 p_lei_attribute1_o => hr_lei_shd.g_old_rec.lei_attribute1,
310 p_lei_attribute2_o => hr_lei_shd.g_old_rec.lei_attribute2,
311 p_lei_attribute3_o => hr_lei_shd.g_old_rec.lei_attribute3,
312 p_lei_attribute4_o => hr_lei_shd.g_old_rec.lei_attribute4,
313 p_lei_attribute5_o => hr_lei_shd.g_old_rec.lei_attribute5,
314 p_lei_attribute6_o => hr_lei_shd.g_old_rec.lei_attribute6,
315 p_lei_attribute7_o => hr_lei_shd.g_old_rec.lei_attribute7,
316 p_lei_attribute8_o => hr_lei_shd.g_old_rec.lei_attribute8,
317 p_lei_attribute9_o => hr_lei_shd.g_old_rec.lei_attribute9,
318 p_lei_attribute10_o => hr_lei_shd.g_old_rec.lei_attribute10,
319 p_lei_attribute11_o => hr_lei_shd.g_old_rec.lei_attribute11,
320 p_lei_attribute12_o => hr_lei_shd.g_old_rec.lei_attribute12,
321 p_lei_attribute13_o => hr_lei_shd.g_old_rec.lei_attribute13,
322 p_lei_attribute14_o => hr_lei_shd.g_old_rec.lei_attribute14,
323 p_lei_attribute15_o => hr_lei_shd.g_old_rec.lei_attribute15,
324 p_lei_attribute16_o => hr_lei_shd.g_old_rec.lei_attribute16,
325 p_lei_attribute17_o => hr_lei_shd.g_old_rec.lei_attribute17,
326 p_lei_attribute18_o => hr_lei_shd.g_old_rec.lei_attribute18,
327 p_lei_attribute19_o => hr_lei_shd.g_old_rec.lei_attribute19,
328 p_lei_attribute20_o => hr_lei_shd.g_old_rec.lei_attribute20,
329 p_lei_information_category_o => hr_lei_shd.g_old_rec.lei_information_category,
330 p_lei_information1_o => hr_lei_shd.g_old_rec.lei_information1,
331 p_lei_information2_o => hr_lei_shd.g_old_rec.lei_information2,
332 p_lei_information3_o => hr_lei_shd.g_old_rec.lei_information3,
333 p_lei_information4_o => hr_lei_shd.g_old_rec.lei_information4,
334 p_lei_information5_o => hr_lei_shd.g_old_rec.lei_information5,
335 p_lei_information6_o => hr_lei_shd.g_old_rec.lei_information6,
336 p_lei_information7_o => hr_lei_shd.g_old_rec.lei_information7,
337 p_lei_information8_o => hr_lei_shd.g_old_rec.lei_information8,
338 p_lei_information9_o => hr_lei_shd.g_old_rec.lei_information9,
339 p_lei_information10_o => hr_lei_shd.g_old_rec.lei_information10,
340 p_lei_information11_o => hr_lei_shd.g_old_rec.lei_information11,
341 p_lei_information12_o => hr_lei_shd.g_old_rec.lei_information12,
342 p_lei_information13_o => hr_lei_shd.g_old_rec.lei_information13,
343 p_lei_information14_o => hr_lei_shd.g_old_rec.lei_information14,
344 p_lei_information15_o => hr_lei_shd.g_old_rec.lei_information15,
345 p_lei_information16_o => hr_lei_shd.g_old_rec.lei_information16,
346 p_lei_information17_o => hr_lei_shd.g_old_rec.lei_information17,
347 p_lei_information18_o => hr_lei_shd.g_old_rec.lei_information18,
348 p_lei_information19_o => hr_lei_shd.g_old_rec.lei_information19,
349 p_lei_information20_o => hr_lei_shd.g_old_rec.lei_information20,
350 p_lei_information21_o => hr_lei_shd.g_old_rec.lei_information21,
351 p_lei_information22_o => hr_lei_shd.g_old_rec.lei_information22,
352 p_lei_information23_o => hr_lei_shd.g_old_rec.lei_information23,
353 p_lei_information24_o => hr_lei_shd.g_old_rec.lei_information24,
354 p_lei_information25_o => hr_lei_shd.g_old_rec.lei_information25,
355 p_lei_information26_o => hr_lei_shd.g_old_rec.lei_information26,
356 p_lei_information27_o => hr_lei_shd.g_old_rec.lei_information27,
357 p_lei_information28_o => hr_lei_shd.g_old_rec.lei_information28,
358 p_lei_information29_o => hr_lei_shd.g_old_rec.lei_information29,
359 p_lei_information30_o => hr_lei_shd.g_old_rec.lei_information30
360 );
361 exception
362 when hr_api.cannot_find_prog_unit then
363 hr_api.cannot_find_prog_unit_error
364 ( p_module_name => 'HR_LOCATION_EXTRA_INFO'
365 ,p_hook_type => 'AU'
366 );
367 end;
368 -- End of API User Hook for post_update.
369 --
370 hr_utility.set_location(' Leaving:'||l_proc, 10);
371 End post_update;
372 --
373 -- ----------------------------------------------------------------------------
374 -- |-----------------------------< convert_defs >-----------------------------|
375 -- ----------------------------------------------------------------------------
376 -- {Start Of Comments}
377 --
378 -- Description:
379 -- The Convert_Defs procedure has one very important function:
380 -- It must return the record structure for the row with all system defaulted
381 -- values converted into its corresponding parameter value for update. When
382 -- we attempt to update a row through the Upd process , certain
383 -- parameters can be defaulted which enables flexibility in the calling of
384 -- the upd process (e.g. only attributes which need to be updated need to be
385 -- specified). For the upd process to determine which attributes
386 -- have NOT been specified we need to check if the parameter has a reserved
387 -- system default value. Therefore, for all parameters which have a
388 -- corresponding reserved system default mechanism specified we need to
389 -- check if a system default is being used. If a system default is being
390 -- used then we convert the defaulted value into its corresponding attribute
391 -- value held in the g_old_rec data structure.
392 --
393 -- Pre Conditions:
394 -- This private function can only be called from the upd process.
395 --
396 -- In Parameters:
397 -- A Pl/Sql record structre.
398 --
399 -- Post Success:
400 -- The record structure will be returned with all system defaulted parameter
401 -- values converted into its current row attribute value.
402 --
403 -- Post Failure:
404 -- No direct error handling is required within this function. Any possible
405 -- errors within this procedure will be a PL/SQL value error due to conversion
406
407 -- of datatypes or data lengths.
408 --
409 -- Developer Implementation Notes:
410 -- None.
411 --
412 -- Access Status:
413 -- Internal Table Handler Use Only.
414 --
415 -- {End Of Comments}
416 -- ----------------------------------------------------------------------------
417 Procedure convert_defs(p_rec in out nocopy hr_lei_shd.g_rec_type) is
418 --
419 l_proc varchar2(72) := g_package||'convert_defs';
420 --
421 Begin
422 --
423 hr_utility.set_location('Entering:'||l_proc, 5);
424 --
425 -- We must now examine each argument value in the
426 -- p_rec plsql record structure
427 -- to see if a system default is being used. If a system default
428 -- is being used then we must set to the 'current' argument value.
429 --
430 If (p_rec.information_type = hr_api.g_varchar2) then
431 p_rec.information_type :=
432 hr_lei_shd.g_old_rec.information_type;
433 End If;
434 If (p_rec.location_id = hr_api.g_number) then
435 p_rec.location_id :=
436 hr_lei_shd.g_old_rec.location_id;
437 End If;
438 If (p_rec.request_id = hr_api.g_number) then
439 p_rec.request_id :=
440 hr_lei_shd.g_old_rec.request_id;
441 End If;
442 If (p_rec.program_application_id = hr_api.g_number) then
443 p_rec.program_application_id :=
444 hr_lei_shd.g_old_rec.program_application_id;
445 End If;
446 If (p_rec.program_id = hr_api.g_number) then
447 p_rec.program_id :=
448 hr_lei_shd.g_old_rec.program_id;
449 End If;
450 If (p_rec.program_update_date = hr_api.g_date) then
451 p_rec.program_update_date :=
452 hr_lei_shd.g_old_rec.program_update_date;
453 End If;
454 If (p_rec.lei_attribute_category = hr_api.g_varchar2) then
455 p_rec.lei_attribute_category :=
456 hr_lei_shd.g_old_rec.lei_attribute_category;
457 End If;
458 If (p_rec.lei_attribute1 = hr_api.g_varchar2) then
459 p_rec.lei_attribute1 :=
460 hr_lei_shd.g_old_rec.lei_attribute1;
461 End If;
462 If (p_rec.lei_attribute2 = hr_api.g_varchar2) then
463 p_rec.lei_attribute2 :=
464 hr_lei_shd.g_old_rec.lei_attribute2;
465 End If;
466 If (p_rec.lei_attribute3 = hr_api.g_varchar2) then
467 p_rec.lei_attribute3 :=
468 hr_lei_shd.g_old_rec.lei_attribute3;
469 End If;
470 If (p_rec.lei_attribute4 = hr_api.g_varchar2) then
471 p_rec.lei_attribute4 :=
472 hr_lei_shd.g_old_rec.lei_attribute4;
473 End If;
474 If (p_rec.lei_attribute5 = hr_api.g_varchar2) then
475 p_rec.lei_attribute5 :=
476 hr_lei_shd.g_old_rec.lei_attribute5;
477 End If;
478 If (p_rec.lei_attribute6 = hr_api.g_varchar2) then
479 p_rec.lei_attribute6 :=
480 hr_lei_shd.g_old_rec.lei_attribute6;
481 End If;
482 If (p_rec.lei_attribute7 = hr_api.g_varchar2) then
483 p_rec.lei_attribute7 :=
484 hr_lei_shd.g_old_rec.lei_attribute7;
485 End If;
486 If (p_rec.lei_attribute8 = hr_api.g_varchar2) then
487 p_rec.lei_attribute8 :=
488 hr_lei_shd.g_old_rec.lei_attribute8;
489 End If;
490 If (p_rec.lei_attribute9 = hr_api.g_varchar2) then
491 p_rec.lei_attribute9 :=
492 hr_lei_shd.g_old_rec.lei_attribute9;
493 End If;
494 If (p_rec.lei_attribute10 = hr_api.g_varchar2) then
495 p_rec.lei_attribute10 :=
496 hr_lei_shd.g_old_rec.lei_attribute10;
497 End If;
498 If (p_rec.lei_attribute11 = hr_api.g_varchar2) then
499 p_rec.lei_attribute11 :=
500 hr_lei_shd.g_old_rec.lei_attribute11;
501 End If;
502 If (p_rec.lei_attribute12 = hr_api.g_varchar2) then
503 p_rec.lei_attribute12 :=
504 hr_lei_shd.g_old_rec.lei_attribute12;
505 End If;
506 If (p_rec.lei_attribute13 = hr_api.g_varchar2) then
507 p_rec.lei_attribute13 :=
508 hr_lei_shd.g_old_rec.lei_attribute13;
509 End If;
510 If (p_rec.lei_attribute14 = hr_api.g_varchar2) then
511 p_rec.lei_attribute14 :=
512 hr_lei_shd.g_old_rec.lei_attribute14;
513 End If;
514 If (p_rec.lei_attribute15 = hr_api.g_varchar2) then
515 p_rec.lei_attribute15 :=
516 hr_lei_shd.g_old_rec.lei_attribute15;
517 End If;
518 If (p_rec.lei_attribute16 = hr_api.g_varchar2) then
519 p_rec.lei_attribute16 :=
520 hr_lei_shd.g_old_rec.lei_attribute16;
521 End If;
522 If (p_rec.lei_attribute17 = hr_api.g_varchar2) then
523 p_rec.lei_attribute17 :=
524 hr_lei_shd.g_old_rec.lei_attribute17;
525 End If;
526 If (p_rec.lei_attribute18 = hr_api.g_varchar2) then
527 p_rec.lei_attribute18 :=
528 hr_lei_shd.g_old_rec.lei_attribute18;
529 End If;
530 If (p_rec.lei_attribute19 = hr_api.g_varchar2) then
531 p_rec.lei_attribute19 :=
532 hr_lei_shd.g_old_rec.lei_attribute19;
533 End If;
534 If (p_rec.lei_attribute20 = hr_api.g_varchar2) then
535 p_rec.lei_attribute20 :=
536 hr_lei_shd.g_old_rec.lei_attribute20;
537 End If;
538 If (p_rec.lei_information_category = hr_api.g_varchar2) then
539 p_rec.lei_information_category :=
540 hr_lei_shd.g_old_rec.lei_information_category;
541 End If;
542 If (p_rec.lei_information1 = hr_api.g_varchar2) then
543 p_rec.lei_information1 :=
544 hr_lei_shd.g_old_rec.lei_information1;
545 End If;
546 If (p_rec.lei_information2 = hr_api.g_varchar2) then
547 p_rec.lei_information2 :=
548 hr_lei_shd.g_old_rec.lei_information2;
549 End If;
550 If (p_rec.lei_information3 = hr_api.g_varchar2) then
551 p_rec.lei_information3 :=
552 hr_lei_shd.g_old_rec.lei_information3;
553 End If;
554 If (p_rec.lei_information4 = hr_api.g_varchar2) then
555 p_rec.lei_information4 :=
556 hr_lei_shd.g_old_rec.lei_information4;
557 End If;
558 If (p_rec.lei_information5 = hr_api.g_varchar2) then
559 p_rec.lei_information5 :=
560 hr_lei_shd.g_old_rec.lei_information5;
561 End If;
562 If (p_rec.lei_information6 = hr_api.g_varchar2) then
563 p_rec.lei_information6 :=
564 hr_lei_shd.g_old_rec.lei_information6;
565 End If;
566 If (p_rec.lei_information7 = hr_api.g_varchar2) then
567 p_rec.lei_information7 :=
568 hr_lei_shd.g_old_rec.lei_information7;
569 End If;
570 If (p_rec.lei_information8 = hr_api.g_varchar2) then
571 p_rec.lei_information8 :=
572 hr_lei_shd.g_old_rec.lei_information8;
573 End If;
574 If (p_rec.lei_information9 = hr_api.g_varchar2) then
575 p_rec.lei_information9 :=
576 hr_lei_shd.g_old_rec.lei_information9;
577 End If;
578 If (p_rec.lei_information10 = hr_api.g_varchar2) then
579 p_rec.lei_information10 :=
580 hr_lei_shd.g_old_rec.lei_information10;
581 End If;
582 If (p_rec.lei_information11 = hr_api.g_varchar2) then
583 p_rec.lei_information11 :=
584 hr_lei_shd.g_old_rec.lei_information11;
585 End If;
586 If (p_rec.lei_information12 = hr_api.g_varchar2) then
587 p_rec.lei_information12 :=
588 hr_lei_shd.g_old_rec.lei_information12;
589 End If;
590 If (p_rec.lei_information13 = hr_api.g_varchar2) then
591 p_rec.lei_information13 :=
592 hr_lei_shd.g_old_rec.lei_information13;
593 End If;
594 If (p_rec.lei_information14 = hr_api.g_varchar2) then
595 p_rec.lei_information14 :=
596 hr_lei_shd.g_old_rec.lei_information14;
597 End If;
598 If (p_rec.lei_information15 = hr_api.g_varchar2) then
599 p_rec.lei_information15 :=
600 hr_lei_shd.g_old_rec.lei_information15;
601 End If;
602 If (p_rec.lei_information16 = hr_api.g_varchar2) then
603 p_rec.lei_information16 :=
604 hr_lei_shd.g_old_rec.lei_information16;
605 End If;
606 If (p_rec.lei_information17 = hr_api.g_varchar2) then
607 p_rec.lei_information17 :=
608 hr_lei_shd.g_old_rec.lei_information17;
609 End If;
610 If (p_rec.lei_information18 = hr_api.g_varchar2) then
611 p_rec.lei_information18 :=
612 hr_lei_shd.g_old_rec.lei_information18;
613 End If;
614 If (p_rec.lei_information19 = hr_api.g_varchar2) then
615 p_rec.lei_information19 :=
616 hr_lei_shd.g_old_rec.lei_information19;
617 End If;
618 If (p_rec.lei_information20 = hr_api.g_varchar2) then
619 p_rec.lei_information20 :=
620 hr_lei_shd.g_old_rec.lei_information20;
621 End If;
622 If (p_rec.lei_information21 = hr_api.g_varchar2) then
623 p_rec.lei_information21 :=
624 hr_lei_shd.g_old_rec.lei_information21;
625 End If;
626 If (p_rec.lei_information22 = hr_api.g_varchar2) then
627 p_rec.lei_information22 :=
628 hr_lei_shd.g_old_rec.lei_information22;
629 End If;
630 If (p_rec.lei_information23 = hr_api.g_varchar2) then
631 p_rec.lei_information23 :=
632 hr_lei_shd.g_old_rec.lei_information23;
633 End If;
634 If (p_rec.lei_information24 = hr_api.g_varchar2) then
635 p_rec.lei_information24 :=
636 hr_lei_shd.g_old_rec.lei_information24;
637 End If;
638 If (p_rec.lei_information25 = hr_api.g_varchar2) then
639 p_rec.lei_information25 :=
640 hr_lei_shd.g_old_rec.lei_information25;
641 End If;
642 If (p_rec.lei_information26 = hr_api.g_varchar2) then
643 p_rec.lei_information26 :=
644 hr_lei_shd.g_old_rec.lei_information26;
645 End If;
646 If (p_rec.lei_information27 = hr_api.g_varchar2) then
647 p_rec.lei_information27 :=
648 hr_lei_shd.g_old_rec.lei_information27;
649 End If;
650 If (p_rec.lei_information28 = hr_api.g_varchar2) then
651 p_rec.lei_information28 :=
652 hr_lei_shd.g_old_rec.lei_information28;
653 End If;
654 If (p_rec.lei_information29 = hr_api.g_varchar2) then
655 p_rec.lei_information29 :=
656 hr_lei_shd.g_old_rec.lei_information29;
657 End If;
658 If (p_rec.lei_information30 = hr_api.g_varchar2) then
659 p_rec.lei_information30 :=
660 hr_lei_shd.g_old_rec.lei_information30;
661 End If;
662
663 --
664 hr_utility.set_location(' Leaving:'||l_proc, 10);
665 --
666 End convert_defs;
667 --
668 -- ----------------------------------------------------------------------------
669 -- |---------------------------------< upd >----------------------------------|
670 -- ----------------------------------------------------------------------------
671 Procedure upd
672 (
673 p_rec in out nocopy hr_lei_shd.g_rec_type,
674 p_validate in boolean default false
675 ) is
676 --
677 l_proc varchar2(72) := g_package||'upd';
678 --
679 Begin
680 hr_utility.set_location('Entering:'||l_proc, 5);
681 --
682 -- Determine if the business process is to be validated.
683 --
684 If p_validate then
685 --
686 -- Issue the savepoint.
687 --
688 SAVEPOINT upd_hr_lei;
689 End If;
690 --
691 -- We must lock the row which we need to update.
692 --
693 hr_lei_shd.lck
694 (
695 p_rec.location_extra_info_id,
696 p_rec.object_version_number
697 );
698 --
699 -- 1. During an update system defaults are used to determine if
700 -- arguments have been defaulted or not. We must therefore
701 -- derive the full record structure values to be updated.
702 --
703 -- 2. Call the supporting update validate operations.
704 --
705 convert_defs(p_rec);
706 hr_lei_bus.update_validate(p_rec);
707 --
708 -- Call the supporting pre-update operation
709 --
710 pre_update(p_rec);
711 --
712 -- Update the row.
713 --
714 update_dml(p_rec);
715 --
716 -- Call the supporting post-update operation
717 --
718 post_update(p_rec);
719 --
720 -- If we are validating then raise the Validate_Enabled exception
721 --
722 If p_validate then
723 Raise HR_Api.Validate_Enabled;
724 End If;
725 --
726 hr_utility.set_location(' Leaving:'||l_proc, 10);
727 Exception
728 When HR_Api.Validate_Enabled Then
729 --
730 -- As the Validate_Enabled exception has been raised
731 -- we must rollback to the savepoint
732 --
733 ROLLBACK TO upd_hr_lei;
734 End upd;
735 --
736 -- ----------------------------------------------------------------------------
737 -- |---------------------------------< upd >----------------------------------|
738 -- ----------------------------------------------------------------------------
739 Procedure upd
740 (
741 p_location_extra_info_id in number,
742 p_information_type in varchar2 default hr_api.g_varchar2,
743 p_location_id in number default hr_api.g_number,
744 p_request_id in number default hr_api.g_number,
745 p_program_application_id in number default hr_api.g_number,
746 p_program_id in number default hr_api.g_number,
747 p_program_update_date in date default hr_api.g_date,
748 p_lei_attribute_category in varchar2 default hr_api.g_varchar2,
749 p_lei_attribute1 in varchar2 default hr_api.g_varchar2,
750 p_lei_attribute2 in varchar2 default hr_api.g_varchar2,
751 p_lei_attribute3 in varchar2 default hr_api.g_varchar2,
752 p_lei_attribute4 in varchar2 default hr_api.g_varchar2,
753 p_lei_attribute5 in varchar2 default hr_api.g_varchar2,
754 p_lei_attribute6 in varchar2 default hr_api.g_varchar2,
755 p_lei_attribute7 in varchar2 default hr_api.g_varchar2,
756 p_lei_attribute8 in varchar2 default hr_api.g_varchar2,
757 p_lei_attribute9 in varchar2 default hr_api.g_varchar2,
758 p_lei_attribute10 in varchar2 default hr_api.g_varchar2,
759 p_lei_attribute11 in varchar2 default hr_api.g_varchar2,
760 p_lei_attribute12 in varchar2 default hr_api.g_varchar2,
761 p_lei_attribute13 in varchar2 default hr_api.g_varchar2,
762 p_lei_attribute14 in varchar2 default hr_api.g_varchar2,
763 p_lei_attribute15 in varchar2 default hr_api.g_varchar2,
764 p_lei_attribute16 in varchar2 default hr_api.g_varchar2,
765 p_lei_attribute17 in varchar2 default hr_api.g_varchar2,
766 p_lei_attribute18 in varchar2 default hr_api.g_varchar2,
767 p_lei_attribute19 in varchar2 default hr_api.g_varchar2,
768 p_lei_attribute20 in varchar2 default hr_api.g_varchar2,
769 p_lei_information_category in varchar2 default hr_api.g_varchar2,
770 p_lei_information1 in varchar2 default hr_api.g_varchar2,
771 p_lei_information2 in varchar2 default hr_api.g_varchar2,
772 p_lei_information3 in varchar2 default hr_api.g_varchar2,
773 p_lei_information4 in varchar2 default hr_api.g_varchar2,
774 p_lei_information5 in varchar2 default hr_api.g_varchar2,
775 p_lei_information6 in varchar2 default hr_api.g_varchar2,
776 p_lei_information7 in varchar2 default hr_api.g_varchar2,
777 p_lei_information8 in varchar2 default hr_api.g_varchar2,
778 p_lei_information9 in varchar2 default hr_api.g_varchar2,
779 p_lei_information10 in varchar2 default hr_api.g_varchar2,
780 p_lei_information11 in varchar2 default hr_api.g_varchar2,
781 p_lei_information12 in varchar2 default hr_api.g_varchar2,
782 p_lei_information13 in varchar2 default hr_api.g_varchar2,
783 p_lei_information14 in varchar2 default hr_api.g_varchar2,
784 p_lei_information15 in varchar2 default hr_api.g_varchar2,
785 p_lei_information16 in varchar2 default hr_api.g_varchar2,
786 p_lei_information17 in varchar2 default hr_api.g_varchar2,
787 p_lei_information18 in varchar2 default hr_api.g_varchar2,
788 p_lei_information19 in varchar2 default hr_api.g_varchar2,
789 p_lei_information20 in varchar2 default hr_api.g_varchar2,
790 p_lei_information21 in varchar2 default hr_api.g_varchar2,
791 p_lei_information22 in varchar2 default hr_api.g_varchar2,
792 p_lei_information23 in varchar2 default hr_api.g_varchar2,
793 p_lei_information24 in varchar2 default hr_api.g_varchar2,
794 p_lei_information25 in varchar2 default hr_api.g_varchar2,
795 p_lei_information26 in varchar2 default hr_api.g_varchar2,
796 p_lei_information27 in varchar2 default hr_api.g_varchar2,
797 p_lei_information28 in varchar2 default hr_api.g_varchar2,
798 p_lei_information29 in varchar2 default hr_api.g_varchar2,
799 p_lei_information30 in varchar2 default hr_api.g_varchar2,
800 p_object_version_number in out nocopy number,
801 p_validate in boolean default false
802 ) is
803 --
804 l_rec hr_lei_shd.g_rec_type;
805 l_proc varchar2(72) := g_package||'upd';
806 --
807 Begin
808 hr_utility.set_location('Entering:'||l_proc, 5);
809 --
810 -- Call conversion function to turn arguments into the
811 -- l_rec structure.
812 --
813 l_rec :=
814 hr_lei_shd.convert_args
815 (
816 p_location_extra_info_id,
817 p_information_type,
818 p_location_id,
819 p_request_id,
820 p_program_application_id,
821 p_program_id,
822 p_program_update_date,
823 p_lei_attribute_category,
824 p_lei_attribute1,
825 p_lei_attribute2,
826 p_lei_attribute3,
827 p_lei_attribute4,
828 p_lei_attribute5,
829 p_lei_attribute6,
830 p_lei_attribute7,
831 p_lei_attribute8,
832 p_lei_attribute9,
833 p_lei_attribute10,
834 p_lei_attribute11,
835 p_lei_attribute12,
836 p_lei_attribute13,
837 p_lei_attribute14,
838 p_lei_attribute15,
839 p_lei_attribute16,
840 p_lei_attribute17,
841 p_lei_attribute18,
842 p_lei_attribute19,
843 p_lei_attribute20,
844 p_lei_information_category,
845 p_lei_information1,
846 p_lei_information2,
847 p_lei_information3,
848 p_lei_information4,
849 p_lei_information5,
850 p_lei_information6,
851 p_lei_information7,
852 p_lei_information8,
853 p_lei_information9,
854 p_lei_information10,
855 p_lei_information11,
856 p_lei_information12,
857 p_lei_information13,
858 p_lei_information14,
859 p_lei_information15,
860 p_lei_information16,
861 p_lei_information17,
862 p_lei_information18,
863 p_lei_information19,
864 p_lei_information20,
865 p_lei_information21,
866 p_lei_information22,
867 p_lei_information23,
868 p_lei_information24,
869 p_lei_information25,
870 p_lei_information26,
871 p_lei_information27,
872 p_lei_information28,
873 p_lei_information29,
874 p_lei_information30,
875 p_object_version_number
876 );
877 --
878 -- Having converted the arguments into the
879 -- plsql record structure we call the corresponding record
880 -- business process.
881 --
882 upd(l_rec, p_validate);
883 p_object_version_number := l_rec.object_version_number;
884 --
885 hr_utility.set_location(' Leaving:'||l_proc, 10);
886 End upd;
887 --
888 end hr_lei_upd;