[Home] [Help]
PACKAGE BODY: APPS.BEN_XEL_SHD
Source
4 -- ----------------------------------------------------------------------------
1 Package Body ben_xel_shd as
2 /* $Header: bexelrhi.pkb 120.1 2005/06/08 13:15:34 tjesumic noship $ */
3 --
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' ben_xel_shd.'; -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------< return_api_dml_status >-------------------------|
12 -- ----------------------------------------------------------------------------
13 Function return_api_dml_status Return Boolean Is
14 --
15 l_proc varchar2(72) := g_package||'return_api_dml_status';
16 --
17 Begin
21 --
18 hr_utility.set_location('Entering:'||l_proc, 5);
19 --
20 Return (nvl(g_api_dml, false));
22 hr_utility.set_location(' Leaving:'||l_proc, 10);
23 End return_api_dml_status;
24 --
25 -- ----------------------------------------------------------------------------
26 -- |---------------------------< constraint_error >---------------------------|
27 -- ----------------------------------------------------------------------------
28 Procedure constraint_error
29 (p_constraint_name in all_constraints.constraint_name%TYPE) Is
30 --
31 cursor c1 is
32 select xrc.name
33 from ben_ext_rcd xrc,
34 ben_ext_data_elmt_in_rcd xer
35 where g_old_rec.ext_data_elmt_id = xer.ext_data_elmt_id
36 and xrc.ext_rcd_id = xer.ext_rcd_id;
37
38 cursor c2 is
39 select xel.name
40 from ben_ext_data_elmt xel
41 where g_old_rec.ext_data_elmt_id = xel.ttl_sum_ext_data_elmt_id;
42
43 cursor c3 is
44 select xel.name
45 from ben_ext_data_elmt xel,
46 ben_ext_where_clause xwc
47 where g_old_rec.ext_data_elmt_id = xwc.cond_ext_data_elmt_id
48 and xel.ext_data_elmt_id = xwc.ext_data_elmt_id;
49
50 l_proc varchar2(72) := g_package||'constraint_error';
51 l_name ben_ext_data_elmt.name%type ;
52 --
53 Begin
54 hr_utility.set_location('Entering:'||l_proc, 5);
55 --
56 If (p_constraint_name = 'BEN_EXT_DATA_ELMT_FK2') Then
57 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
58 fnd_message.set_token('PROCEDURE', l_proc);
59 fnd_message.set_token('STEP','5');
60 fnd_message.raise_error;
61 ElsIf (p_constraint_name = 'BEN_EXT_DATA_ELMT_PK') Then
62 fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
63 fnd_message.set_token('PROCEDURE', l_proc);
64 fnd_message.set_token('STEP','10');
65 fnd_message.raise_error;
66 ElsIf (p_constraint_name = 'BEN_EXT_DATA_ELMT_DECD_FK1') Then
67 fnd_message.set_name('BEN', 'BEN_92477_ELMT_HAS_CHLD2');
68 fnd_message.raise_error;
69 ElsIf (p_constraint_name = 'BEN_EXT_WHERE_CLAUSE_FK1') Then
70 fnd_message.set_name('BEN', 'BEN_92476_ELMT_HAS_CHLD1');
71 fnd_message.raise_error;
72 ElsIf (p_constraint_name = 'BEN_EXT_DATA_ELMT_FK3') Then
73 open c2;
74 fetch c2 into l_name;
75 close c2;
76 fnd_message.set_name('BEN', 'BEN_92475_ELMT_USED_IN_TTL');
77 fnd_message.set_token('DATA_ELMT', l_name);
78 fnd_message.raise_error;
79 ElsIf (p_constraint_name = 'BEN_EXT_WHERE_CLAUSE_FK2') Then
80 open c3;
81 fetch c3 into l_name;
82 close c3;
83 fnd_message.set_name('BEN', 'BEN_92475_ELMT_USED_IN_TTL');
84 fnd_message.set_token('DATA_ELMT', l_name);
85 fnd_message.raise_error;
86 ElsIf (p_constraint_name = 'BEN_EXT_DATA_ELMT_IN_RCD_FK1') Then
87 open c1;
88 fetch c1 into l_name;
89 close c1;
90 fnd_message.set_name('BEN', 'BEN_92474_ELMT_USED_IN_RCD');
91 fnd_message.set_token('RECORD', l_name);
92 fnd_message.raise_error;
93 Else
94 fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
95 fnd_message.set_token('PROCEDURE', l_proc);
96 fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
97 fnd_message.raise_error;
98
99 End If;
100 --
101 hr_utility.set_location(' Leaving:'||l_proc, 10);
102 End constraint_error;
103 --
104 -- ----------------------------------------------------------------------------
105 -- |-----------------------------< api_updating >-----------------------------|
106 -- ----------------------------------------------------------------------------
107 Function api_updating
108 (
109 p_ext_data_elmt_id in number,
110 p_object_version_number in number
111 ) Return Boolean Is
112 --
113 --
114 -- Cursor selects the 'current' row from the HR Schema
115 --
116 Cursor C_Sel1 is
117 select
118 ext_data_elmt_id,
119 name,
120 xml_tag_name,
121 data_elmt_typ_cd,
122 data_elmt_rl,
123 frmt_mask_cd,
124 string_val,
125 dflt_val,
126 max_length_num,
127 just_cd,
128 ttl_fnctn_cd,
129 ttl_cond_oper_cd,
130 ttl_cond_val,
131 ttl_sum_ext_data_elmt_id,
132 ttl_cond_ext_data_elmt_id,
133 ext_fld_id,
134 business_group_id,
135 legislation_code,
136 xel_attribute_category,
137 xel_attribute1,
138 xel_attribute2,
139 xel_attribute3,
140 xel_attribute4,
141 xel_attribute5,
142 xel_attribute6,
143 xel_attribute7,
144 xel_attribute8,
145 xel_attribute9,
146 xel_attribute10,
147 xel_attribute11,
148 xel_attribute12,
149 xel_attribute13,
150 xel_attribute14,
151 xel_attribute15,
152 xel_attribute16,
153 xel_attribute17,
154 xel_attribute18,
155 xel_attribute19,
156 xel_attribute20,
157 xel_attribute21,
158 xel_attribute22,
159 xel_attribute23,
160 xel_attribute24,
161 xel_attribute25,
162 xel_attribute26,
163 xel_attribute27,
164 xel_attribute28,
165 xel_attribute29,
166 xel_attribute30,
167 defined_balance_id,
168 last_update_date,
169 creation_date,
170 last_updated_by,
171 last_update_login,
172 created_by ,
173 object_version_number
174 from ben_ext_data_elmt
175 where ext_data_elmt_id = p_ext_data_elmt_id;
176 --
177 l_proc varchar2(72) := g_package||'api_updating';
181 hr_utility.set_location('Entering:'||l_proc, 5);
178 l_fct_ret boolean;
179 --
180 Begin
182 --
183 If (
184 p_ext_data_elmt_id is null and
185 p_object_version_number is null
186 ) Then
187 --
188 -- One of the primary key arguments is null therefore we must
189 -- set the returning function value to false
190 --
191 l_fct_ret := false;
192 Else
196 ) Then
193 If (
194 p_ext_data_elmt_id = g_old_rec.ext_data_elmt_id and
195 p_object_version_number = g_old_rec.object_version_number
197 hr_utility.set_location(l_proc, 10);
198 --
199 -- The g_old_rec is current therefore we must
200 -- set the returning function to true
201 --
202 l_fct_ret := true;
203 Else
204 --
205 -- Select the current row into g_old_rec
206 --
207 Open C_Sel1;
208 Fetch C_Sel1 Into g_old_rec;
209 If C_Sel1%notfound Then
210 Close C_Sel1;
211 --
212 -- The primary key is invalid therefore we must error
213 --
214 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
215 fnd_message.raise_error;
216 End If;
217 Close C_Sel1;
218 If (p_object_version_number <> g_old_rec.object_version_number) Then
219 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
220 fnd_message.raise_error;
221 End If;
222 hr_utility.set_location(l_proc, 15);
223 l_fct_ret := true;
224 End If;
225 End If;
226 hr_utility.set_location(' Leaving:'||l_proc, 20);
227 Return (l_fct_ret);
228 --
232 -- |---------------------------------< lck >----------------------------------|
229 End api_updating;
230 --
231 -- ----------------------------------------------------------------------------
233 -- ----------------------------------------------------------------------------
234 Procedure lck
235 (
236 p_ext_data_elmt_id in number,
237 p_object_version_number in number
238 ) is
239 --
240 -- Cursor selects the 'current' row from the HR Schema
241 --
242 Cursor C_Sel1 is
243 select ext_data_elmt_id,
244 name,
245 xml_tag_name,
246 data_elmt_typ_cd,
247 data_elmt_rl,
248 frmt_mask_cd,
249 string_val,
250 dflt_val,
251 max_length_num,
252 just_cd,
253 ttl_fnctn_cd,
254 ttl_cond_oper_cd,
255 ttl_cond_val,
256 ttl_sum_ext_data_elmt_id,
257 ttl_cond_ext_data_elmt_id,
258 ext_fld_id,
259 business_group_id,
260 legislation_code,
261 xel_attribute_category,
262 xel_attribute1,
263 xel_attribute2,
264 xel_attribute3,
265 xel_attribute4,
266 xel_attribute5,
267 xel_attribute6,
268 xel_attribute7,
269 xel_attribute8,
270 xel_attribute9,
271 xel_attribute10,
272 xel_attribute11,
273 xel_attribute12,
274 xel_attribute13,
275 xel_attribute14,
276 xel_attribute15,
277 xel_attribute16,
278 xel_attribute17,
279 xel_attribute18,
280 xel_attribute19,
281 xel_attribute20,
282 xel_attribute21,
283 xel_attribute22,
284 xel_attribute23,
285 xel_attribute24,
286 xel_attribute25,
287 xel_attribute26,
288 xel_attribute27,
289 xel_attribute28,
290 xel_attribute29,
291 xel_attribute30,
292 defined_balance_id,
293 last_update_date,
294 creation_date,
295 last_updated_by,
296 last_update_login,
297 created_by ,
298 object_version_number
299 from ben_ext_data_elmt
300 where ext_data_elmt_id = p_ext_data_elmt_id
301 for update nowait;
302 --
303 l_proc varchar2(72) := g_package||'lck';
304 --
305 Begin
306 hr_utility.set_location('Entering:'||l_proc, 5);
307 --
308 -- Add any mandatory argument checking here:
309 -- Example:
310 -- hr_api.mandatory_arg_error
311 -- (p_api_name => l_proc,
312 -- p_argument => 'object_version_number',
313 -- p_argument_value => p_object_version_number);
314 --
315 Open C_Sel1;
316 Fetch C_Sel1 Into g_old_rec;
317 If C_Sel1%notfound then
318 Close C_Sel1;
319 --
320 -- The primary key is invalid therefore we must error
321 --
322 fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
323 fnd_message.raise_error;
324 End If;
325 Close C_Sel1;
326 If (p_object_version_number <> g_old_rec.object_version_number) Then
327 fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
328 fnd_message.raise_error;
329 End If;
330 --
331 hr_utility.set_location(' Leaving:'||l_proc, 10);
332 --
333 -- We need to trap the ORA LOCK exception
334 --
335 Exception
336 When HR_Api.Object_Locked then
337 --
338 -- The object is locked therefore we need to supply a meaningful
339 -- error message.
340 --
341 fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
342 fnd_message.set_token('TABLE_NAME', 'ben_ext_data_elmt');
343 fnd_message.raise_error;
344 End lck;
345 --
346 -- ----------------------------------------------------------------------------
347 -- |-----------------------------< convert_args >-----------------------------|
348 -- ----------------------------------------------------------------------------
349 Function convert_args
350 (
351 p_ext_data_elmt_id in number,
352 p_name in varchar2,
353 p_xml_tag_name in varchar2,
354 p_data_elmt_typ_cd in varchar2,
355 p_data_elmt_rl in number,
356 p_frmt_mask_cd in varchar2,
357 p_string_val in varchar2,
358 p_dflt_val in varchar2,
359 p_max_length_num in number,
360 p_just_cd in varchar2,
361 p_ttl_fnctn_cd in varchar2,
362 p_ttl_cond_oper_cd in varchar2,
363 p_ttl_cond_val in varchar2,
364 p_ttl_sum_ext_data_elmt_id in number,
365 p_ttl_cond_ext_data_elmt_id in number,
366 p_ext_fld_id in number,
367 p_business_group_id in number,
368 p_legislation_code in varchar2,
369 p_xel_attribute_category in varchar2,
370 p_xel_attribute1 in varchar2,
371 p_xel_attribute2 in varchar2,
372 p_xel_attribute3 in varchar2,
373 p_xel_attribute4 in varchar2,
374 p_xel_attribute5 in varchar2,
375 p_xel_attribute6 in varchar2,
376 p_xel_attribute7 in varchar2,
377 p_xel_attribute8 in varchar2,
378 p_xel_attribute9 in varchar2,
379 p_xel_attribute10 in varchar2,
380 p_xel_attribute11 in varchar2,
381 p_xel_attribute12 in varchar2,
382 p_xel_attribute13 in varchar2,
386 p_xel_attribute17 in varchar2,
383 p_xel_attribute14 in varchar2,
384 p_xel_attribute15 in varchar2,
385 p_xel_attribute16 in varchar2,
387 p_xel_attribute18 in varchar2,
388 p_xel_attribute19 in varchar2,
389 p_xel_attribute20 in varchar2,
390 p_xel_attribute21 in varchar2,
391 p_xel_attribute22 in varchar2,
392 p_xel_attribute23 in varchar2,
393 p_xel_attribute24 in varchar2,
394 p_xel_attribute25 in varchar2,
395 p_xel_attribute26 in varchar2,
396 p_xel_attribute27 in varchar2,
397 p_xel_attribute28 in varchar2,
398 p_xel_attribute29 in varchar2,
399 p_xel_attribute30 in varchar2,
400 p_defined_balance_id in number,
401 p_last_update_date in date,
402 p_creation_date in date,
403 p_last_updated_by in number,
404 p_last_update_login in number,
405 p_created_by in number,
406 p_object_version_number in number
407 )
408 Return g_rec_type is
409 --
410 l_rec g_rec_type;
411 l_proc varchar2(72) := g_package||'convert_args';
412 --
413 Begin
414 --
415 hr_utility.set_location('Entering:'||l_proc, 5);
416 --
417 -- Convert arguments into local l_rec structure.
418 --
419 l_rec.ext_data_elmt_id := p_ext_data_elmt_id;
420 l_rec.name := p_name;
421 l_rec.xml_tag_name := p_xml_tag_name ;
422 l_rec.data_elmt_typ_cd := p_data_elmt_typ_cd;
423 l_rec.data_elmt_rl := p_data_elmt_rl;
424 l_rec.frmt_mask_cd := p_frmt_mask_cd;
425 l_rec.string_val := p_string_val;
426 l_rec.dflt_val := p_dflt_val;
427 l_rec.max_length_num := p_max_length_num;
428 l_rec.just_cd := p_just_cd;
429 l_rec.ttl_fnctn_cd := p_ttl_fnctn_cd;
430 l_rec.ttl_cond_oper_cd := p_ttl_cond_oper_cd;
431 l_rec.ttl_cond_val := p_ttl_cond_val;
432 l_rec.ttl_sum_ext_data_elmt_id := p_ttl_sum_ext_data_elmt_id;
433 l_rec.ttl_cond_ext_data_elmt_id := p_ttl_cond_ext_data_elmt_id;
434 l_rec.ext_fld_id := p_ext_fld_id;
435 l_rec.business_group_id := p_business_group_id;
436 l_rec.legislation_code := p_legislation_code;
437 l_rec.xel_attribute_category := p_xel_attribute_category;
438 l_rec.xel_attribute1 := p_xel_attribute1;
439 l_rec.xel_attribute2 := p_xel_attribute2;
440 l_rec.xel_attribute3 := p_xel_attribute3;
441 l_rec.xel_attribute4 := p_xel_attribute4;
442 l_rec.xel_attribute5 := p_xel_attribute5;
443 l_rec.xel_attribute6 := p_xel_attribute6;
444 l_rec.xel_attribute7 := p_xel_attribute7;
445 l_rec.xel_attribute8 := p_xel_attribute8;
446 l_rec.xel_attribute9 := p_xel_attribute9;
447 l_rec.xel_attribute10 := p_xel_attribute10;
448 l_rec.xel_attribute11 := p_xel_attribute11;
449 l_rec.xel_attribute12 := p_xel_attribute12;
450 l_rec.xel_attribute13 := p_xel_attribute13;
451 l_rec.xel_attribute14 := p_xel_attribute14;
452 l_rec.xel_attribute15 := p_xel_attribute15;
453 l_rec.xel_attribute16 := p_xel_attribute16;
454 l_rec.xel_attribute17 := p_xel_attribute17;
455 l_rec.xel_attribute18 := p_xel_attribute18;
456 l_rec.xel_attribute19 := p_xel_attribute19;
457 l_rec.xel_attribute20 := p_xel_attribute20;
458 l_rec.xel_attribute21 := p_xel_attribute21;
459 l_rec.xel_attribute22 := p_xel_attribute22;
460 l_rec.xel_attribute23 := p_xel_attribute23;
461 l_rec.xel_attribute24 := p_xel_attribute24;
462 l_rec.xel_attribute25 := p_xel_attribute25;
463 l_rec.xel_attribute26 := p_xel_attribute26;
464 l_rec.xel_attribute27 := p_xel_attribute27;
465 l_rec.xel_attribute28 := p_xel_attribute28;
466 l_rec.xel_attribute29 := p_xel_attribute29;
467 l_rec.xel_attribute30 := p_xel_attribute30;
468 l_rec.defined_balance_id := p_defined_balance_id;
469 l_rec.last_update_date := p_last_update_date;
470 l_rec.creation_date := p_creation_date;
471 l_rec.last_updated_by := p_last_updated_by;
472 l_rec.last_update_login := p_last_update_login;
473 l_rec.created_by := p_created_by;
474 l_rec.object_version_number := p_object_version_number;
475 --
476 -- Return the plsql record structure.
477 --
478 hr_utility.set_location(' Leaving:'||l_proc, 10);
479 Return(l_rec);
480 --
481 End convert_args;
482 --
483 end ben_xel_shd;