[Home] [Help]
PACKAGE BODY: APPS.BEN_ABI_UPD
Source
1 Package Body ben_abi_upd as
2 /* $Header: beabirhi.pkb 115.0 2003/09/23 10:13:59 hmani noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' ben_abi_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 update the specified row in the schema using the primary key in
21 -- the predicates.
22 -- 3) To trap any constraint violations that may have occurred.
23 -- 4) To raise any other errors.
24 --
25 -- Pre Conditions:
26 -- This is an internal private procedure which must be called from the upd
27 -- procedure.
28 --
29 -- In Parameters:
30 -- A abr/Sql record structre.
31 --
32 -- Post Success:
33 -- The specified row will be updated in 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 -- The update 'set' attribute list should be modified if any of your
41 -- attributes are not updateable.
42 --
43 -- Access Status:
44 -- Internal Table Handabr Use Only.
45 --
46 -- {End Of Comments}
47 -- ----------------------------------------------------------------------------
48 Procedure update_dml(p_rec in out nocopy ben_abi_shd.g_rec_type) is
49 --
50 l_proc varchar2(72) := g_package||'update_dml';
51 --
52 Begin
53 hr_utility.set_location('Entering:'||l_proc, 5);
54 --
55 -- Increment the object version
56 --
57 p_rec.object_version_number := p_rec.object_version_number + 1;
58 --
59 --
60 -- Update the ben_abr_extra_info Row
61 --
62 update ben_abr_extra_info
63 set
64 abr_extra_info_id = p_rec.abr_extra_info_id,
65 request_id = p_rec.request_id,
66 program_application_id = p_rec.program_application_id,
67 program_id = p_rec.program_id,
68 program_update_date = p_rec.program_update_date,
69 abi_attribute_category = p_rec.abi_attribute_category,
70 abi_attribute1 = p_rec.abi_attribute1,
71 abi_attribute2 = p_rec.abi_attribute2,
72 abi_attribute3 = p_rec.abi_attribute3,
73 abi_attribute4 = p_rec.abi_attribute4,
74 abi_attribute5 = p_rec.abi_attribute5,
75 abi_attribute6 = p_rec.abi_attribute6,
76 abi_attribute7 = p_rec.abi_attribute7,
77 abi_attribute8 = p_rec.abi_attribute8,
78 abi_attribute9 = p_rec.abi_attribute9,
79 abi_attribute10 = p_rec.abi_attribute10,
80 abi_attribute11 = p_rec.abi_attribute11,
81 abi_attribute12 = p_rec.abi_attribute12,
82 abi_attribute13 = p_rec.abi_attribute13,
83 abi_attribute14 = p_rec.abi_attribute14,
84 abi_attribute15 = p_rec.abi_attribute15,
85 abi_attribute16 = p_rec.abi_attribute16,
86 abi_attribute17 = p_rec.abi_attribute17,
87 abi_attribute18 = p_rec.abi_attribute18,
88 abi_attribute19 = p_rec.abi_attribute19,
89 abi_attribute20 = p_rec.abi_attribute20,
90 abi_information_category = p_rec.abi_information_category,
91 abi_information1 = p_rec.abi_information1,
92 abi_information2 = p_rec.abi_information2,
93 abi_information3 = p_rec.abi_information3,
94 abi_information4 = p_rec.abi_information4,
95 abi_information5 = p_rec.abi_information5,
96 abi_information6 = p_rec.abi_information6,
97 abi_information7 = p_rec.abi_information7,
98 abi_information8 = p_rec.abi_information8,
99 abi_information9 = p_rec.abi_information9,
100 abi_information10 = p_rec.abi_information10,
101 abi_information11 = p_rec.abi_information11,
102 abi_information12 = p_rec.abi_information12,
103 abi_information13 = p_rec.abi_information13,
104 abi_information14 = p_rec.abi_information14,
105 abi_information15 = p_rec.abi_information15,
106 abi_information16 = p_rec.abi_information16,
107 abi_information17 = p_rec.abi_information17,
108 abi_information18 = p_rec.abi_information18,
109 abi_information19 = p_rec.abi_information19,
110 abi_information20 = p_rec.abi_information20,
111 abi_information21 = p_rec.abi_information21,
112 abi_information22 = p_rec.abi_information22,
113 abi_information23 = p_rec.abi_information23,
114 abi_information24 = p_rec.abi_information24,
115 abi_information25 = p_rec.abi_information25,
116 abi_information26 = p_rec.abi_information26,
117 abi_information27 = p_rec.abi_information27,
118 abi_information28 = p_rec.abi_information28,
119 abi_information29 = p_rec.abi_information29,
120 abi_information30 = p_rec.abi_information30,
121 object_version_number = p_rec.object_version_number
122 where abr_extra_info_id = p_rec.abr_extra_info_id;
123 --
124 --
125 hr_utility.set_location(' Leaving:'||l_proc, 10);
126 --
127 Exception
128 When hr_api.check_integrity_violated Then
129 -- A check constraint has been violated
130 ben_abi_shd.constraint_error
131 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
132 When hr_api.parent_integrity_violated Then
133 -- Parent integrity has been violated
134 ben_abi_shd.constraint_error
135 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
136 When hr_api.unique_integrity_violated Then
137 -- Unique integrity has been violated
138 ben_abi_shd.constraint_error
139 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
140 When Others Then
141 Raise;
142 End update_dml;
143 --
144 -- ----------------------------------------------------------------------------
145 -- |------------------------------< pre_update >------------------------------|
146 -- ----------------------------------------------------------------------------
147 -- {Start Of Comments}
148 --
149 -- Description:
150 -- This private procedure contains any processing which is required before
151 -- the update dml.
152 --
153 -- Pre Conditions:
154 -- This is an internal procedure which is called from the upd procedure.
155 --
156 -- In Parameters:
157 -- A abr/Sql record structre.
158 --
159 -- Post Success:
160 -- Processing continues.
161 --
162 -- Post Failure:
163 -- If an error has occurred, an error message and exception will be raised
164 -- but not handled.
165 --
166 -- Developer Implementation Notes:
167 -- Any pre-processing required before the update dml is issued should be
168 -- coded within this procedure. It is important to note that any 3rd party
169 -- maintenance should be reviewed before abracing in this procedure.
170 --
171 -- Access Status:
172 -- Internal Table Handabr Use Only.
173 --
174 -- {End Of Comments}
175 -- ----------------------------------------------------------------------------
176 Procedure pre_update(p_rec in ben_abi_shd.g_rec_type) is
177 --
178 l_proc varchar2(72) := g_package||'pre_update';
179 --
180 Begin
181 hr_utility.set_location('Entering:'||l_proc, 5);
182 --
183 hr_utility.set_location(' Leaving:'||l_proc, 10);
184 End pre_update;
185 --
186 -- ----------------------------------------------------------------------------
187 -- |-----------------------------< post_update >------------------------------|
188 -- ----------------------------------------------------------------------------
189 -- {Start Of Comments}
190 --
191 -- Description:
192 -- This private procedure contains any processing which is required after the
193 -- update dml.
194 --
195 -- Pre Conditions:
196 -- This is an internal procedure which is called from the upd procedure.
197 --
198 -- In Parameters:
199 -- A abr/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 post-processing required after the update dml is issued should be
210 -- coded within this procedure. It is important to note that any 3rd party
211 -- maintenance should be reviewed before abracing in this procedure.
212 --
213 -- Access Status:
214 -- Internal Table Handabr Use Only.
215 --
216 -- {End Of Comments}
217 -- ----------------------------------------------------------------------------
218 Procedure post_update(p_rec in ben_abi_shd.g_rec_type) is
219 --
220 l_proc varchar2(72) := g_package||'post_update';
221 --
222 Begin
223 hr_utility.set_location('Entering:'||l_proc, 5);
224 --
225 -- This is a hook point and the user hook for post_update is called here.
226 --
227 begin
228 ben_abi_rku.after_update (
229 p_abr_extra_info_id => p_rec.abr_extra_info_id ,
230 p_information_type => p_rec.information_type ,
231 p_acty_base_rt_id => p_rec.acty_base_rt_id ,
232 p_request_id => p_rec.request_id ,
233 p_program_application_id => p_rec.program_application_id ,
234 p_program_id => p_rec.program_id ,
235 p_program_update_date => p_rec.program_update_date ,
236 p_abi_attribute_category => p_rec.abi_attribute_category ,
237 p_abi_attribute1 => p_rec.abi_attribute1 ,
238 p_abi_attribute2 => p_rec.abi_attribute2 ,
239 p_abi_attribute3 => p_rec.abi_attribute3 ,
240 p_abi_attribute4 => p_rec.abi_attribute4 ,
241 p_abi_attribute5 => p_rec.abi_attribute5 ,
242 p_abi_attribute6 => p_rec.abi_attribute6 ,
243 p_abi_attribute7 => p_rec.abi_attribute7 ,
244 p_abi_attribute8 => p_rec.abi_attribute8 ,
245 p_abi_attribute9 => p_rec.abi_attribute9 ,
246 p_abi_attribute10 => p_rec.abi_attribute10 ,
247 p_abi_attribute11 => p_rec.abi_attribute11 ,
248 p_abi_attribute12 => p_rec.abi_attribute12 ,
249 p_abi_attribute13 => p_rec.abi_attribute13 ,
250 p_abi_attribute14 => p_rec.abi_attribute14 ,
251 p_abi_attribute15 => p_rec.abi_attribute15 ,
252 p_abi_attribute16 => p_rec.abi_attribute16 ,
253 p_abi_attribute17 => p_rec.abi_attribute17 ,
254 p_abi_attribute18 => p_rec.abi_attribute18 ,
255 p_abi_attribute19 => p_rec.abi_attribute19 ,
256 p_abi_attribute20 => p_rec.abi_attribute20 ,
257 p_abi_information_category => p_rec.abi_information_category,
258 p_abi_information1 => p_rec.abi_information1 ,
259 p_abi_information2 => p_rec.abi_information2 ,
260 p_abi_information3 => p_rec.abi_information3 ,
261 p_abi_information4 => p_rec.abi_information4 ,
262 p_abi_information5 => p_rec.abi_information5 ,
263 p_abi_information6 => p_rec.abi_information6 ,
264 p_abi_information7 => p_rec.abi_information7 ,
265 p_abi_information8 => p_rec.abi_information8 ,
266 p_abi_information9 => p_rec.abi_information9 ,
267 p_abi_information10 => p_rec.abi_information10 ,
268 p_abi_information11 => p_rec.abi_information11 ,
269 p_abi_information12 => p_rec.abi_information12 ,
270 p_abi_information13 => p_rec.abi_information13 ,
271 p_abi_information14 => p_rec.abi_information14 ,
272 p_abi_information15 => p_rec.abi_information15 ,
273 p_abi_information16 => p_rec.abi_information16 ,
274 p_abi_information17 => p_rec.abi_information17 ,
275 p_abi_information18 => p_rec.abi_information18 ,
276 p_abi_information19 => p_rec.abi_information19 ,
277 p_abi_information20 => p_rec.abi_information20 ,
278 p_abi_information21 => p_rec.abi_information21 ,
279 p_abi_information22 => p_rec.abi_information22 ,
280 p_abi_information23 => p_rec.abi_information23 ,
281 p_abi_information24 => p_rec.abi_information24 ,
282 p_abi_information25 => p_rec.abi_information25 ,
283 p_abi_information26 => p_rec.abi_information26 ,
284 p_abi_information27 => p_rec.abi_information27 ,
285 p_abi_information28 => p_rec.abi_information28 ,
286 p_abi_information29 => p_rec.abi_information29 ,
287 p_abi_information30 => p_rec.abi_information30 ,
288 p_information_type_o => ben_abi_shd.g_old_rec.information_type ,
289 p_acty_base_rt_id_o => ben_abi_shd.g_old_rec.acty_base_rt_id ,
290 p_request_id_o => ben_abi_shd.g_old_rec.request_id ,
291 p_program_application_id_o => ben_abi_shd.g_old_rec.program_application_id ,
292 p_program_id_o => ben_abi_shd.g_old_rec.program_id ,
293 p_program_update_date_o => ben_abi_shd.g_old_rec.program_update_date ,
294 p_abi_attribute_category_o => ben_abi_shd.g_old_rec.abi_attribute_category ,
295 p_abi_attribute1_o => ben_abi_shd.g_old_rec.abi_attribute1 ,
296 p_abi_attribute2_o => ben_abi_shd.g_old_rec.abi_attribute2 ,
297 p_abi_attribute3_o => ben_abi_shd.g_old_rec.abi_attribute3 ,
298 p_abi_attribute4_o => ben_abi_shd.g_old_rec.abi_attribute4 ,
299 p_abi_attribute5_o => ben_abi_shd.g_old_rec.abi_attribute5 ,
300 p_abi_attribute6_o => ben_abi_shd.g_old_rec.abi_attribute6 ,
301 p_abi_attribute7_o => ben_abi_shd.g_old_rec.abi_attribute7 ,
302 p_abi_attribute8_o => ben_abi_shd.g_old_rec.abi_attribute8 ,
303 p_abi_attribute9_o => ben_abi_shd.g_old_rec.abi_attribute9 ,
304 p_abi_attribute10_o => ben_abi_shd.g_old_rec.abi_attribute10 ,
305 p_abi_attribute11_o => ben_abi_shd.g_old_rec.abi_attribute11 ,
306 p_abi_attribute12_o => ben_abi_shd.g_old_rec.abi_attribute12 ,
307 p_abi_attribute13_o => ben_abi_shd.g_old_rec.abi_attribute13 ,
308 p_abi_attribute14_o => ben_abi_shd.g_old_rec.abi_attribute14 ,
309 p_abi_attribute15_o => ben_abi_shd.g_old_rec.abi_attribute15 ,
310 p_abi_attribute16_o => ben_abi_shd.g_old_rec.abi_attribute16 ,
311 p_abi_attribute17_o => ben_abi_shd.g_old_rec.abi_attribute17 ,
312 p_abi_attribute18_o => ben_abi_shd.g_old_rec.abi_attribute18 ,
313 p_abi_attribute19_o => ben_abi_shd.g_old_rec.abi_attribute19 ,
314 p_abi_attribute20_o => ben_abi_shd.g_old_rec.abi_attribute20 ,
315 p_abi_information_category_o => ben_abi_shd.g_old_rec.abi_information_category ,
316 p_abi_information1_o => ben_abi_shd.g_old_rec.abi_information1 ,
317 p_abi_information2_o => ben_abi_shd.g_old_rec.abi_information2 ,
318 p_abi_information3_o => ben_abi_shd.g_old_rec.abi_information3 ,
319 p_abi_information4_o => ben_abi_shd.g_old_rec.abi_information4 ,
320 p_abi_information5_o => ben_abi_shd.g_old_rec.abi_information5 ,
321 p_abi_information6_o => ben_abi_shd.g_old_rec.abi_information6 ,
322 p_abi_information7_o => ben_abi_shd.g_old_rec.abi_information7 ,
323 p_abi_information8_o => ben_abi_shd.g_old_rec.abi_information8 ,
324 p_abi_information9_o => ben_abi_shd.g_old_rec.abi_information9 ,
325 p_abi_information10_o => ben_abi_shd.g_old_rec.abi_information10 ,
326 p_abi_information11_o => ben_abi_shd.g_old_rec.abi_information11 ,
327 p_abi_information12_o => ben_abi_shd.g_old_rec.abi_information12 ,
328 p_abi_information13_o => ben_abi_shd.g_old_rec.abi_information13 ,
329 p_abi_information14_o => ben_abi_shd.g_old_rec.abi_information14 ,
330 p_abi_information15_o => ben_abi_shd.g_old_rec.abi_information15 ,
331 p_abi_information16_o => ben_abi_shd.g_old_rec.abi_information16 ,
332 p_abi_information17_o => ben_abi_shd.g_old_rec.abi_information17 ,
333 p_abi_information18_o => ben_abi_shd.g_old_rec.abi_information18 ,
334 p_abi_information19_o => ben_abi_shd.g_old_rec.abi_information19 ,
335 p_abi_information20_o => ben_abi_shd.g_old_rec.abi_information20 ,
336 p_abi_information21_o => ben_abi_shd.g_old_rec.abi_information21 ,
337 p_abi_information22_o => ben_abi_shd.g_old_rec.abi_information22 ,
338 p_abi_information23_o => ben_abi_shd.g_old_rec.abi_information23 ,
339 p_abi_information24_o => ben_abi_shd.g_old_rec.abi_information24 ,
340 p_abi_information25_o => ben_abi_shd.g_old_rec.abi_information25 ,
341 p_abi_information26_o => ben_abi_shd.g_old_rec.abi_information26 ,
342 p_abi_information27_o => ben_abi_shd.g_old_rec.abi_information27 ,
343 p_abi_information28_o => ben_abi_shd.g_old_rec.abi_information28 ,
344 p_abi_information29_o => ben_abi_shd.g_old_rec.abi_information29 ,
345 p_abi_information30_o => ben_abi_shd.g_old_rec.abi_information30
346 );
347 exception
348 when hr_api.cannot_find_prog_unit then
349 hr_api.cannot_find_prog_unit_error
350 ( p_module_name => 'ben_abr_EXTRA_INFO'
351 ,p_hook_type => 'AU'
352 );
353 end;
354 -- End of API User Hook for post_update.
355 hr_utility.set_location(' Leaving:'||l_proc, 10);
356 End post_update;
357 --
358 -- ----------------------------------------------------------------------------
359 -- |-----------------------------< convert_defs >-----------------------------|
360 -- ----------------------------------------------------------------------------
361 -- {Start Of Comments}
362 --
363 -- Description:
364 -- The Convert_Defs procedure has one very important function:
365 -- It must return the record structure for the row with all system defaulted
366 -- values converted into its corresponding parameter value for update. When
367 -- we attempt to update a row through the Upd process , certain
368 -- parameters can be defaulted which enables flexibility in the calling of
369 -- the upd process (e.g. only attributes which need to be updated need to be
370 -- specified). For the upd process to determine which attributes
371 -- have NOT been specified we need to check if the parameter has a reserved
372 -- system default value. Therefore, for all parameters which have a
373 -- corresponding reserved system default mechanism specified we need to
374 -- check if a system default is being used. If a system default is being
375 -- used then we convert the defaulted value into its corresponding attribute
376 -- value held in the g_old_rec data structure.
377 --
378 -- Pre Conditions:
379 -- This private function can only be called from the upd process.
380 --
381 -- In Parameters:
382 -- A abr/Sql record structre.
383 --
384 -- Post Success:
385 -- The record structure will be returned with all system defaulted parameter
386 -- values converted into its current row attribute value.
387 --
388 -- Post Failure:
389 -- No direct error handling is required within this function. Any possible
390 -- errors within this procedure will be a abr/SQL value error due to conversion
391
392 -- of datatypes or data lengths.
393 --
394 -- Developer Implementation Notes:
395 -- None.
396 --
397 -- Access Status:
398 -- Internal Table Handabr Use Only.
399 --
400 -- {End Of Comments}
401 -- ----------------------------------------------------------------------------
402 Procedure convert_defs(p_rec in out nocopy ben_abi_shd.g_rec_type) is
403 --
404 l_proc varchar2(72) := g_package||'convert_defs';
405 --
406 Begin
407 --
408 hr_utility.set_location('Entering:'||l_proc, 5);
409 --
410 -- We must now examine each argument value in the
411 -- p_rec abrsql record structure
412 -- to see if a system default is being used. If a system default
413 -- is being used then we must set to the 'current' argument value.
414 --
415 If (p_rec.information_type = hr_api.g_varchar2) then
416 p_rec.information_type :=
417 ben_abi_shd.g_old_rec.information_type;
418 End If;
419 If (p_rec.acty_base_rt_id = hr_api.g_number) then
420 p_rec.acty_base_rt_id :=
421 ben_abi_shd.g_old_rec.acty_base_rt_id;
422 End If;
423 If (p_rec.request_id = hr_api.g_number) then
424 p_rec.request_id :=
425 ben_abi_shd.g_old_rec.request_id;
426 End If;
427 If (p_rec.program_application_id = hr_api.g_number) then
428 p_rec.program_application_id :=
429 ben_abi_shd.g_old_rec.program_application_id;
430 End If;
431 If (p_rec.program_id = hr_api.g_number) then
432 p_rec.program_id :=
433 ben_abi_shd.g_old_rec.program_id;
434 End If;
435 If (p_rec.program_update_date = hr_api.g_date) then
436 p_rec.program_update_date :=
437 ben_abi_shd.g_old_rec.program_update_date;
438 End If;
439 If (p_rec.abi_attribute_category = hr_api.g_varchar2) then
440 p_rec.abi_attribute_category :=
441 ben_abi_shd.g_old_rec.abi_attribute_category;
442 End If;
443 If (p_rec.abi_attribute1 = hr_api.g_varchar2) then
444 p_rec.abi_attribute1 :=
445 ben_abi_shd.g_old_rec.abi_attribute1;
446 End If;
447 If (p_rec.abi_attribute2 = hr_api.g_varchar2) then
448 p_rec.abi_attribute2 :=
449 ben_abi_shd.g_old_rec.abi_attribute2;
450 End If;
451 If (p_rec.abi_attribute3 = hr_api.g_varchar2) then
452 p_rec.abi_attribute3 :=
453 ben_abi_shd.g_old_rec.abi_attribute3;
454 End If;
455 If (p_rec.abi_attribute4 = hr_api.g_varchar2) then
456 p_rec.abi_attribute4 :=
457 ben_abi_shd.g_old_rec.abi_attribute4;
458 End If;
459 If (p_rec.abi_attribute5 = hr_api.g_varchar2) then
460 p_rec.abi_attribute5 :=
461 ben_abi_shd.g_old_rec.abi_attribute5;
462 End If;
463 If (p_rec.abi_attribute6 = hr_api.g_varchar2) then
464 p_rec.abi_attribute6 :=
465 ben_abi_shd.g_old_rec.abi_attribute6;
466 End If;
467 If (p_rec.abi_attribute7 = hr_api.g_varchar2) then
468 p_rec.abi_attribute7 :=
469 ben_abi_shd.g_old_rec.abi_attribute7;
470 End If;
471 If (p_rec.abi_attribute8 = hr_api.g_varchar2) then
472 p_rec.abi_attribute8 :=
473 ben_abi_shd.g_old_rec.abi_attribute8;
474 End If;
475 If (p_rec.abi_attribute9 = hr_api.g_varchar2) then
476 p_rec.abi_attribute9 :=
477 ben_abi_shd.g_old_rec.abi_attribute9;
478 End If;
479 If (p_rec.abi_attribute10 = hr_api.g_varchar2) then
480 p_rec.abi_attribute10 :=
481 ben_abi_shd.g_old_rec.abi_attribute10;
482 End If;
483 If (p_rec.abi_attribute11 = hr_api.g_varchar2) then
484 p_rec.abi_attribute11 :=
485 ben_abi_shd.g_old_rec.abi_attribute11;
486 End If;
487 If (p_rec.abi_attribute12 = hr_api.g_varchar2) then
488 p_rec.abi_attribute12 :=
489 ben_abi_shd.g_old_rec.abi_attribute12;
490 End If;
491 If (p_rec.abi_attribute13 = hr_api.g_varchar2) then
492 p_rec.abi_attribute13 :=
493 ben_abi_shd.g_old_rec.abi_attribute13;
494 End If;
495 If (p_rec.abi_attribute14 = hr_api.g_varchar2) then
496 p_rec.abi_attribute14 :=
497 ben_abi_shd.g_old_rec.abi_attribute14;
498 End If;
499 If (p_rec.abi_attribute15 = hr_api.g_varchar2) then
500 p_rec.abi_attribute15 :=
501 ben_abi_shd.g_old_rec.abi_attribute15;
502 End If;
503 If (p_rec.abi_attribute16 = hr_api.g_varchar2) then
504 p_rec.abi_attribute16 :=
505 ben_abi_shd.g_old_rec.abi_attribute16;
506 End If;
507 If (p_rec.abi_attribute17 = hr_api.g_varchar2) then
508 p_rec.abi_attribute17 :=
509 ben_abi_shd.g_old_rec.abi_attribute17;
510 End If;
511 If (p_rec.abi_attribute18 = hr_api.g_varchar2) then
512 p_rec.abi_attribute18 :=
513 ben_abi_shd.g_old_rec.abi_attribute18;
514 End If;
515 If (p_rec.abi_attribute19 = hr_api.g_varchar2) then
516 p_rec.abi_attribute19 :=
517 ben_abi_shd.g_old_rec.abi_attribute19;
518 End If;
519 If (p_rec.abi_attribute20 = hr_api.g_varchar2) then
520 p_rec.abi_attribute20 :=
521 ben_abi_shd.g_old_rec.abi_attribute20;
522 End If;
523 If (p_rec.abi_information_category = hr_api.g_varchar2) then
524 p_rec.abi_information_category :=
525 ben_abi_shd.g_old_rec.abi_information_category;
526 End If;
527 If (p_rec.abi_information1 = hr_api.g_varchar2) then
528 p_rec.abi_information1 :=
529 ben_abi_shd.g_old_rec.abi_information1;
530 End If;
531 If (p_rec.abi_information2 = hr_api.g_varchar2) then
532 p_rec.abi_information2 :=
533 ben_abi_shd.g_old_rec.abi_information2;
534 End If;
535 If (p_rec.abi_information3 = hr_api.g_varchar2) then
536 p_rec.abi_information3 :=
537 ben_abi_shd.g_old_rec.abi_information3;
538 End If;
539 If (p_rec.abi_information4 = hr_api.g_varchar2) then
540 p_rec.abi_information4 :=
541 ben_abi_shd.g_old_rec.abi_information4;
542 End If;
543 If (p_rec.abi_information5 = hr_api.g_varchar2) then
544 p_rec.abi_information5 :=
545 ben_abi_shd.g_old_rec.abi_information5;
546 End If;
547 If (p_rec.abi_information6 = hr_api.g_varchar2) then
548 p_rec.abi_information6 :=
549 ben_abi_shd.g_old_rec.abi_information6;
550 End If;
551 If (p_rec.abi_information7 = hr_api.g_varchar2) then
552 p_rec.abi_information7 :=
553 ben_abi_shd.g_old_rec.abi_information7;
554 End If;
555 If (p_rec.abi_information8 = hr_api.g_varchar2) then
556 p_rec.abi_information8 :=
557 ben_abi_shd.g_old_rec.abi_information8;
558 End If;
559 If (p_rec.abi_information9 = hr_api.g_varchar2) then
560 p_rec.abi_information9 :=
561 ben_abi_shd.g_old_rec.abi_information9;
562 End If;
563 If (p_rec.abi_information10 = hr_api.g_varchar2) then
564 p_rec.abi_information10 :=
565 ben_abi_shd.g_old_rec.abi_information10;
566 End If;
567 If (p_rec.abi_information11 = hr_api.g_varchar2) then
568 p_rec.abi_information11 :=
569 ben_abi_shd.g_old_rec.abi_information11;
570 End If;
571 If (p_rec.abi_information12 = hr_api.g_varchar2) then
572 p_rec.abi_information12 :=
573 ben_abi_shd.g_old_rec.abi_information12;
574 End If;
575 If (p_rec.abi_information13 = hr_api.g_varchar2) then
576 p_rec.abi_information13 :=
577 ben_abi_shd.g_old_rec.abi_information13;
578 End If;
579 If (p_rec.abi_information14 = hr_api.g_varchar2) then
580 p_rec.abi_information14 :=
581 ben_abi_shd.g_old_rec.abi_information14;
582 End If;
583 If (p_rec.abi_information15 = hr_api.g_varchar2) then
584 p_rec.abi_information15 :=
585 ben_abi_shd.g_old_rec.abi_information15;
586 End If;
587 If (p_rec.abi_information16 = hr_api.g_varchar2) then
588 p_rec.abi_information16 :=
589 ben_abi_shd.g_old_rec.abi_information16;
590 End If;
591 If (p_rec.abi_information17 = hr_api.g_varchar2) then
592 p_rec.abi_information17 :=
593 ben_abi_shd.g_old_rec.abi_information17;
594 End If;
595 If (p_rec.abi_information18 = hr_api.g_varchar2) then
596 p_rec.abi_information18 :=
597 ben_abi_shd.g_old_rec.abi_information18;
598 End If;
599 If (p_rec.abi_information19 = hr_api.g_varchar2) then
600 p_rec.abi_information19 :=
601 ben_abi_shd.g_old_rec.abi_information19;
602 End If;
603 If (p_rec.abi_information20 = hr_api.g_varchar2) then
604 p_rec.abi_information20 :=
605 ben_abi_shd.g_old_rec.abi_information20;
606 End If;
607 If (p_rec.abi_information21 = hr_api.g_varchar2) then
608 p_rec.abi_information21 :=
609 ben_abi_shd.g_old_rec.abi_information21;
610 End If;
611 If (p_rec.abi_information22 = hr_api.g_varchar2) then
612 p_rec.abi_information22 :=
613 ben_abi_shd.g_old_rec.abi_information22;
614 End If;
615 If (p_rec.abi_information23 = hr_api.g_varchar2) then
616 p_rec.abi_information23 :=
617 ben_abi_shd.g_old_rec.abi_information23;
618 End If;
619 If (p_rec.abi_information24 = hr_api.g_varchar2) then
620 p_rec.abi_information24 :=
621 ben_abi_shd.g_old_rec.abi_information24;
622 End If;
623 If (p_rec.abi_information25 = hr_api.g_varchar2) then
624 p_rec.abi_information25 :=
625 ben_abi_shd.g_old_rec.abi_information25;
626 End If;
627 If (p_rec.abi_information26 = hr_api.g_varchar2) then
628 p_rec.abi_information26 :=
629 ben_abi_shd.g_old_rec.abi_information26;
630 End If;
631 If (p_rec.abi_information27 = hr_api.g_varchar2) then
632 p_rec.abi_information27 :=
633 ben_abi_shd.g_old_rec.abi_information27;
634 End If;
635 If (p_rec.abi_information28 = hr_api.g_varchar2) then
636 p_rec.abi_information28 :=
637 ben_abi_shd.g_old_rec.abi_information28;
638 End If;
639 If (p_rec.abi_information29 = hr_api.g_varchar2) then
640 p_rec.abi_information29 :=
641 ben_abi_shd.g_old_rec.abi_information29;
642 End If;
643 If (p_rec.abi_information30 = hr_api.g_varchar2) then
644 p_rec.abi_information30 :=
645 ben_abi_shd.g_old_rec.abi_information30;
646 End If;
647
648 --
649 hr_utility.set_location(' Leaving:'||l_proc, 10);
650 --
651 End convert_defs;
652 --
653 -- ----------------------------------------------------------------------------
654 -- |---------------------------------< upd >----------------------------------|
655 -- ----------------------------------------------------------------------------
656 Procedure upd
657 (
658 p_rec in out nocopy ben_abi_shd.g_rec_type,
659 p_validate in boolean default false
660 ) is
661 --
662 l_proc varchar2(72) := g_package||'upd';
663 --
664 Begin
665 hr_utility.set_location('Entering:'||l_proc, 5);
666 --
667 -- Determine if the business process is to be validated.
668 --
669 If p_validate then
670 --
671 -- Issue the savepoint.
672 --
673 SAVEPOINT upd_ben_abi;
674 End If;
675 --
676 -- We must lock the row which we need to update.
677 --
678 ben_abi_shd.lck
679 (
680 p_rec.abr_extra_info_id,
681 p_rec.object_version_number
682 );
683 --
684 -- 1. During an update system defaults are used to determine if
685 -- arguments have been defaulted or not. We must therefore
686 -- derive the full record structure values to be updated.
687 --
688 -- 2. Call the supporting update validate operations.
689 --
690 convert_defs(p_rec);
691 ben_abi_bus.update_validate(p_rec);
692 --
693 -- Call the supporting pre-update operation
694 --
695 pre_update(p_rec);
696 --
697 -- Update the row.
698 --
699 update_dml(p_rec);
700 --
701 -- Call the supporting post-update operation
702 --
703 post_update(p_rec);
704 --
705 -- If we are validating then raise the Validate_Enabled exception
706 --
707 If p_validate then
708 Raise HR_Api.Validate_Enabled;
709 End If;
710 --
711 hr_utility.set_location(' Leaving:'||l_proc, 10);
712 Exception
713 When HR_Api.Validate_Enabled Then
714 --
715 -- As the Validate_Enabled exception has been raised
716 -- we must rollback to the savepoint
717 --
718 ROLLBACK TO upd_ben_abi;
719 End upd;
720 --
721 -- ----------------------------------------------------------------------------
722 -- |---------------------------------< upd >----------------------------------|
723 -- ----------------------------------------------------------------------------
724 Procedure upd
725 (
726 p_abr_extra_info_id in number,
727 p_request_id in number default hr_api.g_number,
728 p_program_application_id in number default hr_api.g_number,
729 p_program_id in number default hr_api.g_number,
730 p_program_update_date in date default hr_api.g_date,
731 p_abi_attribute_category in varchar2 default hr_api.g_varchar2,
732 p_abi_attribute1 in varchar2 default hr_api.g_varchar2,
733 p_abi_attribute2 in varchar2 default hr_api.g_varchar2,
734 p_abi_attribute3 in varchar2 default hr_api.g_varchar2,
735 p_abi_attribute4 in varchar2 default hr_api.g_varchar2,
736 p_abi_attribute5 in varchar2 default hr_api.g_varchar2,
737 p_abi_attribute6 in varchar2 default hr_api.g_varchar2,
738 p_abi_attribute7 in varchar2 default hr_api.g_varchar2,
739 p_abi_attribute8 in varchar2 default hr_api.g_varchar2,
740 p_abi_attribute9 in varchar2 default hr_api.g_varchar2,
741 p_abi_attribute10 in varchar2 default hr_api.g_varchar2,
742 p_abi_attribute11 in varchar2 default hr_api.g_varchar2,
743 p_abi_attribute12 in varchar2 default hr_api.g_varchar2,
744 p_abi_attribute13 in varchar2 default hr_api.g_varchar2,
745 p_abi_attribute14 in varchar2 default hr_api.g_varchar2,
746 p_abi_attribute15 in varchar2 default hr_api.g_varchar2,
747 p_abi_attribute16 in varchar2 default hr_api.g_varchar2,
748 p_abi_attribute17 in varchar2 default hr_api.g_varchar2,
749 p_abi_attribute18 in varchar2 default hr_api.g_varchar2,
750 p_abi_attribute19 in varchar2 default hr_api.g_varchar2,
751 p_abi_attribute20 in varchar2 default hr_api.g_varchar2,
752 p_abi_information_category in varchar2 default hr_api.g_varchar2,
753 p_abi_information1 in varchar2 default hr_api.g_varchar2,
754 p_abi_information2 in varchar2 default hr_api.g_varchar2,
755 p_abi_information3 in varchar2 default hr_api.g_varchar2,
756 p_abi_information4 in varchar2 default hr_api.g_varchar2,
757 p_abi_information5 in varchar2 default hr_api.g_varchar2,
758 p_abi_information6 in varchar2 default hr_api.g_varchar2,
759 p_abi_information7 in varchar2 default hr_api.g_varchar2,
760 p_abi_information8 in varchar2 default hr_api.g_varchar2,
761 p_abi_information9 in varchar2 default hr_api.g_varchar2,
762 p_abi_information10 in varchar2 default hr_api.g_varchar2,
763 p_abi_information11 in varchar2 default hr_api.g_varchar2,
764 p_abi_information12 in varchar2 default hr_api.g_varchar2,
765 p_abi_information13 in varchar2 default hr_api.g_varchar2,
766 p_abi_information14 in varchar2 default hr_api.g_varchar2,
767 p_abi_information15 in varchar2 default hr_api.g_varchar2,
768 p_abi_information16 in varchar2 default hr_api.g_varchar2,
769 p_abi_information17 in varchar2 default hr_api.g_varchar2,
770 p_abi_information18 in varchar2 default hr_api.g_varchar2,
771 p_abi_information19 in varchar2 default hr_api.g_varchar2,
772 p_abi_information20 in varchar2 default hr_api.g_varchar2,
773 p_abi_information21 in varchar2 default hr_api.g_varchar2,
774 p_abi_information22 in varchar2 default hr_api.g_varchar2,
775 p_abi_information23 in varchar2 default hr_api.g_varchar2,
776 p_abi_information24 in varchar2 default hr_api.g_varchar2,
777 p_abi_information25 in varchar2 default hr_api.g_varchar2,
778 p_abi_information26 in varchar2 default hr_api.g_varchar2,
779 p_abi_information27 in varchar2 default hr_api.g_varchar2,
780 p_abi_information28 in varchar2 default hr_api.g_varchar2,
781 p_abi_information29 in varchar2 default hr_api.g_varchar2,
782 p_abi_information30 in varchar2 default hr_api.g_varchar2,
783 p_object_version_number in out nocopy number,
784 p_validate in boolean default false
785 ) is
786 --
787 l_rec ben_abi_shd.g_rec_type;
788 l_proc varchar2(72) := g_package||'upd';
789 --
790 Begin
791 hr_utility.set_location('Entering:'||l_proc, 5);
792 --
793 -- Call conversion function to turn arguments into the
794 -- l_rec structure.
795 --
796 l_rec :=
797 ben_abi_shd.convert_args
798 (
799 p_abr_extra_info_id,
800 hr_api.g_varchar2, --p_information_type,
801 hr_api.g_number, --p_acty_base_rt_id,
802 p_request_id,
803 p_program_application_id,
804 p_program_id,
805 p_program_update_date,
806 p_abi_attribute_category,
807 p_abi_attribute1,
808 p_abi_attribute2,
809 p_abi_attribute3,
810 p_abi_attribute4,
811 p_abi_attribute5,
812 p_abi_attribute6,
813 p_abi_attribute7,
814 p_abi_attribute8,
815 p_abi_attribute9,
816 p_abi_attribute10,
817 p_abi_attribute11,
818 p_abi_attribute12,
819 p_abi_attribute13,
820 p_abi_attribute14,
821 p_abi_attribute15,
822 p_abi_attribute16,
823 p_abi_attribute17,
824 p_abi_attribute18,
825 p_abi_attribute19,
826 p_abi_attribute20,
827 p_abi_information_category,
828 p_abi_information1,
829 p_abi_information2,
830 p_abi_information3,
831 p_abi_information4,
832 p_abi_information5,
833 p_abi_information6,
834 p_abi_information7,
835 p_abi_information8,
836 p_abi_information9,
837 p_abi_information10,
838 p_abi_information11,
839 p_abi_information12,
840 p_abi_information13,
841 p_abi_information14,
842 p_abi_information15,
843 p_abi_information16,
844 p_abi_information17,
845 p_abi_information18,
846 p_abi_information19,
847 p_abi_information20,
848 p_abi_information21,
849 p_abi_information22,
850 p_abi_information23,
851 p_abi_information24,
852 p_abi_information25,
853 p_abi_information26,
854 p_abi_information27,
855 p_abi_information28,
856 p_abi_information29,
857 p_abi_information30,
858 p_object_version_number
859 );
860 --
861 -- Having converted the arguments into the
862 -- abrsql record structure we call the corresponding record
863 -- business process.
864 --
865 upd(l_rec, p_validate);
866 p_object_version_number := l_rec.object_version_number;
867 --
868 hr_utility.set_location(' Leaving:'||l_proc, 10);
869 End upd;
870 --
871 end ben_abi_upd;