[Home] [Help]
PACKAGE BODY: APPS.BEN_ABI_SHD
Source
1 Package Body ben_abi_shd 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_shd.'; -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |---------------------------< constraint_error >---------------------------|
12 -- ----------------------------------------------------------------------------
13 Procedure constraint_error
14 (p_constraint_name in all_constraints.constraint_name%TYPE) Is
15 --
16 l_proc varchar2(72) := g_package||'constraint_error';
17 --
18 Begin
19 hr_utility.set_location('Entering:'||l_proc, 5);
20 --
21 If (p_constraint_name = 'BEN_ABR_EXTRA_INFO_FK1') Then
22 hr_utility.set_message(801, 'HR_INV_INFO_TYPE');
23 hr_utility.raise_error;
24 ElsIf (p_constraint_name = 'BEN_ABR_EXTRA_INFO_FK2') Then
25 hr_utility.set_message(801, 'HR_INV_pl_ID');
26 hr_utility.raise_error;
27 ElsIf (p_constraint_name = 'BEN_ABR_EXTRA_INFO_PK') Then
28 hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
29 hr_utility.set_message_token('PROCEDURE', l_proc);
30 hr_utility.set_message_token('STEP','15');
31 hr_utility.raise_error;
32 Else
33 hr_utility.set_message(801, 'HR_7877_API_INVALID_CONSTRAINT');
34 hr_utility.set_message_token('PROCEDURE', l_proc);
35 hr_utility.set_message_token('CONSTRAINT_NAME', p_constraint_name);
36 hr_utility.raise_error;
37 End If;
38 --
39 hr_utility.set_location(' Leaving:'||l_proc, 10);
40 End constraint_error;
41 --
42 -- ----------------------------------------------------------------------------
43 -- |-----------------------------< api_updating >-----------------------------|
44 -- ----------------------------------------------------------------------------
45 Function api_updating
46 (
47 p_abr_extra_info_id in number,
48
49 p_object_version_number in number
50 ) Return Boolean Is
51 --
52 --
56 select
53 -- Cursor selects the 'current' row from the HR Schema
54 --
55 Cursor C_Sel1 is
57 abr_extra_info_id,
58 information_type,
59 acty_base_rt_id,
60 request_id,
61 program_application_id,
62 program_id,
63 program_update_date,
64 abi_attribute_category,
65 abi_attribute1,
66 abi_attribute2,
67 abi_attribute3,
68 abi_attribute4,
69 abi_attribute5,
70 abi_attribute6,
71 abi_attribute7,
72 abi_attribute8,
73 abi_attribute9,
74 abi_attribute10,
75 abi_attribute11,
76 abi_attribute12,
77 abi_attribute13,
78 abi_attribute14,
79 abi_attribute15,
80 abi_attribute16,
81 abi_attribute17,
82 abi_attribute18,
83 abi_attribute19,
84 abi_attribute20,
85 abi_information_category,
86 abi_information1,
87 abi_information2,
88 abi_information3,
89 abi_information4,
90 abi_information5,
91 abi_information6,
92 abi_information7,
93 abi_information8,
94 abi_information9,
95 abi_information10,
96 abi_information11,
97 abi_information12,
98 abi_information13,
99 abi_information14,
100 abi_information15,
101 abi_information16,
102 abi_information17,
103 abi_information18,
104 abi_information19,
105 abi_information20,
106 abi_information21,
107 abi_information22,
108 abi_information23,
109 abi_information24,
110 abi_information25,
111 abi_information26,
112 abi_information27,
113 abi_information28,
114 abi_information29,
115 abi_information30,
116 object_version_number
117 from BEN_abr_extra_info
118 where abr_extra_info_id = p_abr_extra_info_id;
119 --
120 l_proc varchar2(72) := g_package||'api_updating';
121 l_fct_ret boolean;
122 --
123 Begin
124 hr_utility.set_location('Entering:'||l_proc, 5);
125 --
126 If (
127 p_abr_extra_info_id is null and
128 p_object_version_number is null
129 ) Then
130 --
131 -- One of the primary key arguments is null therefore we must
132 -- set the returning function value to false
133 --
134 l_fct_ret := false;
135 Else
136 If (
137 p_abr_extra_info_id = g_old_rec.abr_extra_info_id and
138 p_object_version_number = g_old_rec.object_version_number
139 ) Then
140 hr_utility.set_location(l_proc, 10);
141 --
142 -- The g_old_rec is current therefore we must
143 -- set the returning function to true
144 --
145 l_fct_ret := true;
146 Else
147 --
148 -- Select the current row into g_old_rec
149 --
150 Open C_Sel1;
151 Fetch C_Sel1 Into g_old_rec;
152 If C_Sel1%notfound Then
153 Close C_Sel1;
154 --
155 -- The primary key is invalid therefore we must error
156 --
157 hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
158 hr_utility.raise_error;
159 End If;
160 Close C_Sel1;
161 If (p_object_version_number <> g_old_rec.object_version_number) Then
162 hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
163 hr_utility.raise_error;
164 End If;
165 hr_utility.set_location(l_proc, 15);
166 l_fct_ret := true;
167 End If;
168 End If;
169 hr_utility.set_location(' Leaving:'||l_proc, 20);
170 Return (l_fct_ret);
171 --
172 End api_updating;
173 --
174 -- ----------------------------------------------------------------------------
175 -- |---------------------------------< lck >----------------------------------|
176 -- ----------------------------------------------------------------------------
177 Procedure lck
178 (
179 p_abr_extra_info_id in number,
180 p_object_version_number in number
181 ) is
182 --
183 -- Cursor selects the 'current' row from the HR Schema
184 --
185 Cursor C_Sel1 is
186 select abr_extra_info_id,
187 information_type,
188 acty_base_rt_id,
189 request_id,
190 program_application_id,
191 program_id,
192 program_update_date,
193 abi_attribute_category,
194 abi_attribute1,
195 abi_attribute2,
196 abi_attribute3,
197 abi_attribute4,
198 abi_attribute5,
199 abi_attribute6,
200 abi_attribute7,
201 abi_attribute8,
202 abi_attribute9,
203 abi_attribute10,
204 abi_attribute11,
205 abi_attribute12,
206 abi_attribute13,
207 abi_attribute14,
208 abi_attribute15,
209 abi_attribute16,
210 abi_attribute17,
211 abi_attribute18,
212 abi_attribute19,
213 abi_attribute20,
214 abi_information_category,
215 abi_information1,
216 abi_information2,
217 abi_information3,
218 abi_information4,
219 abi_information5,
220 abi_information6,
221 abi_information7,
222 abi_information8,
223 abi_information9,
224 abi_information10,
225 abi_information11,
226 abi_information12,
227 abi_information13,
228 abi_information14,
229 abi_information15,
230 abi_information16,
231 abi_information17,
232 abi_information18,
233 abi_information19,
234 abi_information20,
235 abi_information21,
236 abi_information22,
237 abi_information23,
238 abi_information24,
239 abi_information25,
240 abi_information26,
241 abi_information27,
242 abi_information28,
243 abi_information29,
244 abi_information30,
245 object_version_number
246 from ben_abr_extra_info
247 where abr_extra_info_id = p_abr_extra_info_id
248 for update nowait;
249 --
250 l_proc varchar2(72) := g_package||'lck';
251 --
252 Begin
253 hr_utility.set_location('Entering:'||l_proc, 5);
254 --
255 -- Add any mandatory argument checking here:
256 -- Example:
257 -- hr_api.mandatory_arg_error
258 -- (p_api_name => l_proc,
259 -- p_argument => 'object_version_number',
260 -- p_argument_value => p_object_version_number);
261 --
262 Open C_Sel1;
263 Fetch C_Sel1 Into g_old_rec;
264 If C_Sel1%notfound then
265 Close C_Sel1;
266 --
267 -- The primary key is invalid therefore we must error
268 --
269 hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
270 hr_utility.raise_error;
271 End If;
272 Close C_Sel1;
273 If (p_object_version_number <> g_old_rec.object_version_number) Then
274 hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
275 hr_utility.raise_error;
276 End If;
277 --
278 hr_utility.set_location(' Leaving:'||l_proc, 10);
279 --
280 -- We need to trap the ORA LOCK exception
281 --
282 Exception
283 When HR_Api.Object_Locked then
284 --
285 -- The object is locked therefore we need to supply a meaningful
286 -- error message.
287 --
288 hr_utility.set_message(801, 'HR_7165_OBJECT_LOCKED');
289 hr_utility.set_message_token('TABLE_NAME', 'BEN_ABR_EXTRA_INFO');
290 hr_utility.raise_error;
291 End lck;
292 --
293 -- ----------------------------------------------------------------------------
294 -- |-----------------------------< convert_args >-----------------------------|
295 -- ----------------------------------------------------------------------------
296 Function convert_args
297 (
298 p_abr_extra_info_id in number,
299 p_information_type in varchar2,
300 p_acty_base_rt_id in number,
301 p_request_id in number,
302 p_program_application_id in number,
303 p_program_id in number,
304 p_program_update_date in date,
305 p_abi_attribute_category in varchar2,
306 p_abi_attribute1 in varchar2,
307 p_abi_attribute2 in varchar2,
308 p_abi_attribute3 in varchar2,
309 p_abi_attribute4 in varchar2,
310 p_abi_attribute5 in varchar2,
311 p_abi_attribute6 in varchar2,
312 p_abi_attribute7 in varchar2,
313 p_abi_attribute8 in varchar2,
314 p_abi_attribute9 in varchar2,
315 p_abi_attribute10 in varchar2,
316 p_abi_attribute11 in varchar2,
317 p_abi_attribute12 in varchar2,
318 p_abi_attribute13 in varchar2,
319 p_abi_attribute14 in varchar2,
320 p_abi_attribute15 in varchar2,
321 p_abi_attribute16 in varchar2,
322 p_abi_attribute17 in varchar2,
323 p_abi_attribute18 in varchar2,
324 p_abi_attribute19 in varchar2,
325 p_abi_attribute20 in varchar2,
326 p_abi_information_category in varchar2,
327 p_abi_information1 in varchar2,
328 p_abi_information2 in varchar2,
329 p_abi_information3 in varchar2,
330 p_abi_information4 in varchar2,
331 p_abi_information5 in varchar2,
332 p_abi_information6 in varchar2,
333 p_abi_information7 in varchar2,
334 p_abi_information8 in varchar2,
335 p_abi_information9 in varchar2,
336 p_abi_information10 in varchar2,
337 p_abi_information11 in varchar2,
338 p_abi_information12 in varchar2,
339 p_abi_information13 in varchar2,
340 p_abi_information14 in varchar2,
341 p_abi_information15 in varchar2,
342 p_abi_information16 in varchar2,
343 p_abi_information17 in varchar2,
344 p_abi_information18 in varchar2,
345 p_abi_information19 in varchar2,
346 p_abi_information20 in varchar2,
347 p_abi_information21 in varchar2,
348 p_abi_information22 in varchar2,
349 p_abi_information23 in varchar2,
350 p_abi_information24 in varchar2,
351 p_abi_information25 in varchar2,
352 p_abi_information26 in varchar2,
353 p_abi_information27 in varchar2,
354 p_abi_information28 in varchar2,
355 p_abi_information29 in varchar2,
356 p_abi_information30 in varchar2,
357 p_object_version_number in number
358 )
359 Return g_rec_type is
360 --
361 l_rec g_rec_type;
362 l_proc varchar2(72) := g_package||'convert_args';
363 --
364 Begin
365 --
366 hr_utility.set_location('Entering:'||l_proc, 5);
367 --
368 -- Convert arguments into local l_rec structure.
369 --
370 l_rec.abr_extra_info_id := p_abr_extra_info_id;
371 l_rec.information_type := p_information_type;
372 l_rec.acty_base_rt_id := p_acty_base_rt_id;
373 l_rec.request_id := p_request_id;
374 l_rec.program_application_id := p_program_application_id;
375 l_rec.program_id := p_program_id;
376 l_rec.program_update_date := p_program_update_date;
377 l_rec.abi_attribute_category := p_abi_attribute_category;
378 l_rec.abi_attribute1 := p_abi_attribute1;
379 l_rec.abi_attribute2 := p_abi_attribute2;
380 l_rec.abi_attribute3 := p_abi_attribute3;
381 l_rec.abi_attribute4 := p_abi_attribute4;
382 l_rec.abi_attribute5 := p_abi_attribute5;
383 l_rec.abi_attribute6 := p_abi_attribute6;
384 l_rec.abi_attribute7 := p_abi_attribute7;
385 l_rec.abi_attribute8 := p_abi_attribute8;
386 l_rec.abi_attribute9 := p_abi_attribute9;
387 l_rec.abi_attribute10 := p_abi_attribute10;
388 l_rec.abi_attribute11 := p_abi_attribute11;
389 l_rec.abi_attribute12 := p_abi_attribute12;
390 l_rec.abi_attribute13 := p_abi_attribute13;
391 l_rec.abi_attribute14 := p_abi_attribute14;
392 l_rec.abi_attribute15 := p_abi_attribute15;
393 l_rec.abi_attribute16 := p_abi_attribute16;
394 l_rec.abi_attribute17 := p_abi_attribute17;
395 l_rec.abi_attribute18 := p_abi_attribute18;
396 l_rec.abi_attribute19 := p_abi_attribute19;
397 l_rec.abi_attribute20 := p_abi_attribute20;
398 l_rec.abi_information_category := p_abi_information_category;
399 l_rec.abi_information1 := p_abi_information1;
400 l_rec.abi_information2 := p_abi_information2;
401 l_rec.abi_information3 := p_abi_information3;
402 l_rec.abi_information4 := p_abi_information4;
403 l_rec.abi_information5 := p_abi_information5;
404 l_rec.abi_information6 := p_abi_information6;
405 l_rec.abi_information7 := p_abi_information7;
406 l_rec.abi_information8 := p_abi_information8;
407 l_rec.abi_information9 := p_abi_information9;
408 l_rec.abi_information10 := p_abi_information10;
409 l_rec.abi_information11 := p_abi_information11;
410 l_rec.abi_information12 := p_abi_information12;
411 l_rec.abi_information13 := p_abi_information13;
412 l_rec.abi_information14 := p_abi_information14;
413 l_rec.abi_information15 := p_abi_information15;
414 l_rec.abi_information16 := p_abi_information16;
415 l_rec.abi_information17 := p_abi_information17;
416 l_rec.abi_information18 := p_abi_information18;
417 l_rec.abi_information19 := p_abi_information19;
418 l_rec.abi_information20 := p_abi_information20;
419 l_rec.abi_information21 := p_abi_information21;
420 l_rec.abi_information22 := p_abi_information22;
421 l_rec.abi_information23 := p_abi_information23;
422 l_rec.abi_information24 := p_abi_information24;
423 l_rec.abi_information25 := p_abi_information25;
424 l_rec.abi_information26 := p_abi_information26;
425 l_rec.abi_information27 := p_abi_information27;
426 l_rec.abi_information28 := p_abi_information28;
427 l_rec.abi_information29 := p_abi_information29;
428 l_rec.abi_information30 := p_abi_information30;
429 l_rec.object_version_number := p_object_version_number;
430 --
431 -- Return the abrsql record structure.
432 --
433 hr_utility.set_location(' Leaving:'||l_proc, 10);
434 Return(l_rec);
435 --
436 End convert_args;
437 --
438 end ben_abi_shd;