[Home] [Help]
PACKAGE BODY: APPS.PAY_SET_SHD
Source
1 Package Body pay_set_shd as
2 /* $Header: pysetrhi.pkb 120.0 2005/05/29 08:39:23 appldev noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' pay_set_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 = 'PAY_SHADOW_ELEMENT_TYPES_FK1') Then
22 hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
23 hr_utility.set_message_token('PROCEDURE', l_proc);
24 hr_utility.set_message_token('STEP','5');
25 hr_utility.raise_error;
26 ElsIf (p_constraint_name = 'PAY_SHADOW_ELEMENT_TYPES_FK2') Then
27 hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
28 hr_utility.set_message_token('PROCEDURE', l_proc);
29 hr_utility.set_message_token('STEP','10');
30 hr_utility.raise_error;
31 ElsIf (p_constraint_name = 'PAY_SHADOW_ELEMENT_TYPES_FK3') Then
32 hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
33 hr_utility.set_message_token('PROCEDURE', l_proc);
34 hr_utility.set_message_token('STEP','15');
35 hr_utility.raise_error;
36 ElsIf (p_constraint_name = 'PAY_SHADOW_ELEMENT_TYPES_PK') Then
37 hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
38 hr_utility.set_message_token('PROCEDURE', l_proc);
39 hr_utility.set_message_token('STEP','20');
40 hr_utility.raise_error;
41 Else
42 hr_utility.set_message(801, 'HR_7877_API_INVALID_CONSTRAINT');
43 hr_utility.set_message_token('PROCEDURE', l_proc);
44 hr_utility.set_message_token('CONSTRAINT_NAME', p_constraint_name);
45 hr_utility.raise_error;
46 End If;
47 --
48 hr_utility.set_location(' Leaving:'||l_proc, 10);
49 End constraint_error;
50 --
51 -- ----------------------------------------------------------------------------
52 -- |-----------------------------< api_updating >-----------------------------|
53 -- ----------------------------------------------------------------------------
54 Function api_updating
55 (
56 p_element_type_id in number,
57 p_object_version_number in number
58 ) Return Boolean Is
59 --
60 --
61 -- Cursor selects the 'current' row from the HR Schema
62 --
63 Cursor C_Sel1 is
64 select
65 element_type_id,
66 template_id,
67 classification_name,
68 additional_entry_allowed_flag,
69 adjustment_only_flag,
70 closed_for_entry_flag,
71 element_name,
72 indirect_only_flag,
73 multiple_entries_allowed_flag,
74 multiply_value_flag,
75 post_termination_rule,
76 process_in_run_flag,
77 relative_processing_priority,
78 processing_type,
79 standard_link_flag,
80 input_currency_code,
81 output_currency_code,
82 benefit_classification_name,
83 description,
84 qualifying_age,
85 qualifying_length_of_service,
86 qualifying_units,
87 reporting_name,
88 attribute_category,
89 attribute1,
90 attribute2,
91 attribute3,
92 attribute4,
93 attribute5,
94 attribute6,
95 attribute7,
96 attribute8,
97 attribute9,
98 attribute10,
99 attribute11,
100 attribute12,
101 attribute13,
102 attribute14,
103 attribute15,
104 attribute16,
105 attribute17,
106 attribute18,
107 attribute19,
108 attribute20,
109 element_information_category,
110 element_information1,
111 element_information2,
112 element_information3,
113 element_information4,
114 element_information5,
115 element_information6,
116 element_information7,
117 element_information8,
118 element_information9,
119 element_information10,
120 element_information11,
121 element_information12,
122 element_information13,
123 element_information14,
124 element_information15,
125 element_information16,
126 element_information17,
127 element_information18,
128 element_information19,
129 element_information20,
130 third_party_pay_only_flag,
131 skip_formula,
132 payroll_formula_id,
133 exclusion_rule_id,
134 iterative_flag,
135 iterative_priority,
136 iterative_formula_name,
137 process_mode,
138 grossup_flag,
139 advance_indicator,
140 advance_payable,
141 advance_deduction,
142 process_advance_entry,
143 proration_group,
144 proration_formula,
145 recalc_event_group,
146 once_each_period_flag,
147 object_version_number
148 from pay_shadow_element_types
149 where element_type_id = p_element_type_id;
150 --
151 l_proc varchar2(72) := g_package||'api_updating';
152 l_fct_ret boolean;
153 --
154 Begin
155 hr_utility.set_location('Entering:'||l_proc, 5);
156 --
157 If (
158 p_element_type_id is null and
159 p_object_version_number is null
160 ) Then
161 --
162 -- One of the primary key arguments is null therefore we must
163 -- set the returning function value to false
164 --
165 l_fct_ret := false;
166 Else
167 If (
168 p_element_type_id = g_old_rec.element_type_id and
169 p_object_version_number = g_old_rec.object_version_number
170 ) Then
171 hr_utility.set_location(l_proc, 10);
172 --
173 -- The g_old_rec is current therefore we must
174 -- set the returning function to true
175 --
176 l_fct_ret := true;
177 Else
178 --
179 -- Select the current row into g_old_rec
180 --
181 Open C_Sel1;
182 Fetch C_Sel1 Into g_old_rec;
183 If C_Sel1%notfound Then
184 Close C_Sel1;
185 --
186 -- The primary key is invalid therefore we must error
187 --
188 hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
189 hr_utility.raise_error;
190 End If;
191 Close C_Sel1;
192 If (p_object_version_number <> g_old_rec.object_version_number) Then
193 hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
194 hr_utility.raise_error;
195 End If;
196 hr_utility.set_location(l_proc, 15);
197 l_fct_ret := true;
198 End If;
199 End If;
200 hr_utility.set_location(' Leaving:'||l_proc, 20);
201 Return (l_fct_ret);
202 --
203 End api_updating;
204 --
205 -- ----------------------------------------------------------------------------
206 -- |---------------------------------< lck >----------------------------------|
207 -- ----------------------------------------------------------------------------
208 Procedure lck
209 (
210 p_element_type_id in number,
211 p_object_version_number in number
212 ) is
213 --
214 -- Cursor selects the 'current' row from the HR Schema
215 --
216 Cursor C_Sel1 is
217 select element_type_id,
218 template_id,
219 classification_name,
220 additional_entry_allowed_flag,
221 adjustment_only_flag,
222 closed_for_entry_flag,
223 element_name,
224 indirect_only_flag,
225 multiple_entries_allowed_flag,
226 multiply_value_flag,
227 post_termination_rule,
228 process_in_run_flag,
229 relative_processing_priority,
230 processing_type,
231 standard_link_flag,
232 input_currency_code,
233 output_currency_code,
234 benefit_classification_name,
235 description,
236 qualifying_age,
237 qualifying_length_of_service,
238 qualifying_units,
239 reporting_name,
240 attribute_category,
241 attribute1,
242 attribute2,
243 attribute3,
244 attribute4,
245 attribute5,
246 attribute6,
247 attribute7,
248 attribute8,
249 attribute9,
250 attribute10,
251 attribute11,
252 attribute12,
253 attribute13,
254 attribute14,
255 attribute15,
256 attribute16,
257 attribute17,
258 attribute18,
259 attribute19,
260 attribute20,
261 element_information_category,
262 element_information1,
263 element_information2,
264 element_information3,
265 element_information4,
266 element_information5,
267 element_information6,
268 element_information7,
269 element_information8,
270 element_information9,
271 element_information10,
272 element_information11,
273 element_information12,
274 element_information13,
275 element_information14,
276 element_information15,
277 element_information16,
278 element_information17,
279 element_information18,
280 element_information19,
281 element_information20,
282 third_party_pay_only_flag,
283 skip_formula,
284 payroll_formula_id,
285 exclusion_rule_id,
286 iterative_flag,
287 iterative_priority,
288 iterative_formula_name,
289 process_mode,
290 grossup_flag,
291 advance_indicator,
292 advance_payable,
293 advance_deduction,
294 process_advance_entry,
295 proration_group,
296 proration_formula,
297 recalc_event_group,
298 once_each_period_flag,
299 object_version_number
300 from pay_shadow_element_types
301 where element_type_id = p_element_type_id
302 for update nowait;
303 --
304 l_proc varchar2(72) := g_package||'lck';
305 --
306 Begin
307 hr_utility.set_location('Entering:'||l_proc, 5);
308 hr_api.mandatory_arg_error
309 (p_api_name => l_proc,
310 p_argument => 'p_element_type_id',
311 p_argument_value => p_element_type_id);
312 hr_api.mandatory_arg_error
313 (p_api_name => l_proc,
314 p_argument => 'object_version_number',
315 p_argument_value => p_object_version_number);
316 Open C_Sel1;
317 Fetch C_Sel1 Into g_old_rec;
318 If C_Sel1%notfound then
319 Close C_Sel1;
320 --
321 -- The primary key is invalid therefore we must error
322 --
323 hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
324 hr_utility.raise_error;
325 End If;
326 Close C_Sel1;
327 If (p_object_version_number <> g_old_rec.object_version_number) Then
328 hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
329 hr_utility.raise_error;
330 End If;
331 --
332 hr_utility.set_location(' Leaving:'||l_proc, 10);
333 --
334 -- We need to trap the ORA LOCK exception
335 --
336 Exception
337 When HR_Api.Object_Locked then
338 --
339 -- The object is locked therefore we need to supply a meaningful
340 -- error message.
341 --
342 hr_utility.set_message(801, 'HR_7165_OBJECT_LOCKED');
343 hr_utility.set_message_token('TABLE_NAME', 'pay_shadow_element_types');
344 hr_utility.raise_error;
345 End lck;
346 --
347 -- ----------------------------------------------------------------------------
348 -- |-----------------------------< convert_args >-----------------------------|
349 -- ----------------------------------------------------------------------------
350 Function convert_args
351 (
352 p_element_type_id in number,
353 p_template_id in number,
354 p_classification_name in varchar2,
355 p_additional_entry_allowed_fla in varchar2,
356 p_adjustment_only_flag in varchar2,
357 p_closed_for_entry_flag in varchar2,
358 p_element_name in varchar2,
359 p_indirect_only_flag in varchar2,
360 p_multiple_entries_allowed_fla in varchar2,
361 p_multiply_value_flag in varchar2,
362 p_post_termination_rule in varchar2,
363 p_process_in_run_flag in varchar2,
364 p_relative_processing_priority in number,
365 p_processing_type in varchar2,
366 p_standard_link_flag in varchar2,
367 p_input_currency_code in varchar2,
368 p_output_currency_code in varchar2,
369 p_benefit_classification_name in varchar2,
370 p_description in varchar2,
371 p_qualifying_age in number,
372 p_qualifying_length_of_service in number,
373 p_qualifying_units in varchar2,
374 p_reporting_name in varchar2,
375 p_attribute_category in varchar2,
376 p_attribute1 in varchar2,
377 p_attribute2 in varchar2,
378 p_attribute3 in varchar2,
379 p_attribute4 in varchar2,
380 p_attribute5 in varchar2,
381 p_attribute6 in varchar2,
382 p_attribute7 in varchar2,
383 p_attribute8 in varchar2,
384 p_attribute9 in varchar2,
385 p_attribute10 in varchar2,
386 p_attribute11 in varchar2,
387 p_attribute12 in varchar2,
388 p_attribute13 in varchar2,
389 p_attribute14 in varchar2,
390 p_attribute15 in varchar2,
391 p_attribute16 in varchar2,
395 p_attribute20 in varchar2,
392 p_attribute17 in varchar2,
393 p_attribute18 in varchar2,
394 p_attribute19 in varchar2,
396 p_element_information_category in varchar2,
397 p_element_information1 in varchar2,
398 p_element_information2 in varchar2,
399 p_element_information3 in varchar2,
400 p_element_information4 in varchar2,
401 p_element_information5 in varchar2,
402 p_element_information6 in varchar2,
403 p_element_information7 in varchar2,
404 p_element_information8 in varchar2,
405 p_element_information9 in varchar2,
406 p_element_information10 in varchar2,
407 p_element_information11 in varchar2,
408 p_element_information12 in varchar2,
409 p_element_information13 in varchar2,
410 p_element_information14 in varchar2,
411 p_element_information15 in varchar2,
412 p_element_information16 in varchar2,
413 p_element_information17 in varchar2,
414 p_element_information18 in varchar2,
415 p_element_information19 in varchar2,
416 p_element_information20 in varchar2,
417 p_third_party_pay_only_flag in varchar2,
418 p_skip_formula in varchar2,
419 p_payroll_formula_id in number,
420 p_exclusion_rule_id in number,
421 p_iterative_flag in varchar2,
422 p_iterative_priority in number,
423 p_iterative_formula_name in varchar2,
424 p_process_mode in varchar2,
425 p_grossup_flag in varchar2,
426 p_advance_indicator in varchar2,
427 p_advance_payable in varchar2,
428 p_advance_deduction in varchar2,
429 p_process_advance_entry in varchar2,
430 p_proration_group in varchar2,
431 p_proration_formula in varchar2,
432 p_recalc_event_group in varchar2,
433 p_once_each_period_flag in varchar2,
434 p_object_version_number in number
435 )
436 Return g_rec_type is
437 --
438 l_rec g_rec_type;
439 l_proc varchar2(72) := g_package||'convert_args';
440 --
441 Begin
442 --
443 hr_utility.set_location('Entering:'||l_proc, 5);
444 --
445 -- Convert arguments into local l_rec structure.
446 --
447 l_rec.element_type_id := p_element_type_id;
448 l_rec.template_id := p_template_id;
449 l_rec.classification_name := p_classification_name;
450 l_rec.additional_entry_allowed_flag := p_additional_entry_allowed_fla;
451 l_rec.adjustment_only_flag := p_adjustment_only_flag;
452 l_rec.closed_for_entry_flag := p_closed_for_entry_flag;
453 l_rec.element_name := p_element_name;
454 l_rec.indirect_only_flag := p_indirect_only_flag;
455 l_rec.multiple_entries_allowed_flag := p_multiple_entries_allowed_fla;
456 l_rec.multiply_value_flag := p_multiply_value_flag;
457 l_rec.post_termination_rule := p_post_termination_rule;
458 l_rec.process_in_run_flag := p_process_in_run_flag;
459 l_rec.relative_processing_priority := p_relative_processing_priority;
460 l_rec.processing_type := p_processing_type;
461 l_rec.standard_link_flag := p_standard_link_flag;
462 l_rec.input_currency_code := p_input_currency_code;
463 l_rec.output_currency_code := p_output_currency_code;
464 l_rec.benefit_classification_name := p_benefit_classification_name;
465 l_rec.description := p_description;
466 l_rec.qualifying_age := p_qualifying_age;
467 l_rec.qualifying_length_of_service := p_qualifying_length_of_service;
468 l_rec.qualifying_units := p_qualifying_units;
469 l_rec.reporting_name := p_reporting_name;
470 l_rec.attribute_category := p_attribute_category;
471 l_rec.attribute1 := p_attribute1;
472 l_rec.attribute2 := p_attribute2;
473 l_rec.attribute3 := p_attribute3;
474 l_rec.attribute4 := p_attribute4;
475 l_rec.attribute5 := p_attribute5;
476 l_rec.attribute6 := p_attribute6;
477 l_rec.attribute7 := p_attribute7;
478 l_rec.attribute8 := p_attribute8;
479 l_rec.attribute9 := p_attribute9;
480 l_rec.attribute10 := p_attribute10;
481 l_rec.attribute11 := p_attribute11;
482 l_rec.attribute12 := p_attribute12;
483 l_rec.attribute13 := p_attribute13;
484 l_rec.attribute14 := p_attribute14;
485 l_rec.attribute15 := p_attribute15;
486 l_rec.attribute16 := p_attribute16;
487 l_rec.attribute17 := p_attribute17;
488 l_rec.attribute18 := p_attribute18;
489 l_rec.attribute19 := p_attribute19;
490 l_rec.attribute20 := p_attribute20;
491 l_rec.element_information_category := p_element_information_category;
495 l_rec.element_information4 := p_element_information4;
492 l_rec.element_information1 := p_element_information1;
493 l_rec.element_information2 := p_element_information2;
494 l_rec.element_information3 := p_element_information3;
496 l_rec.element_information5 := p_element_information5;
497 l_rec.element_information6 := p_element_information6;
498 l_rec.element_information7 := p_element_information7;
499 l_rec.element_information8 := p_element_information8;
500 l_rec.element_information9 := p_element_information9;
501 l_rec.element_information10 := p_element_information10;
502 l_rec.element_information11 := p_element_information11;
503 l_rec.element_information12 := p_element_information12;
504 l_rec.element_information13 := p_element_information13;
505 l_rec.element_information14 := p_element_information14;
506 l_rec.element_information15 := p_element_information15;
510 l_rec.element_information19 := p_element_information19;
507 l_rec.element_information16 := p_element_information16;
508 l_rec.element_information17 := p_element_information17;
509 l_rec.element_information18 := p_element_information18;
511 l_rec.element_information20 := p_element_information20;
512 l_rec.third_party_pay_only_flag := p_third_party_pay_only_flag;
513 l_rec.skip_formula := p_skip_formula;
514 l_rec.payroll_formula_id := p_payroll_formula_id;
515 l_rec.exclusion_rule_id := p_exclusion_rule_id;
516 l_rec.iterative_flag := p_iterative_flag;
517 l_rec.iterative_priority := p_iterative_priority;
518 l_rec.iterative_formula_name := p_iterative_formula_name;
519 l_rec.process_mode := p_process_mode;
520 l_rec.grossup_flag := p_grossup_flag;
521 l_rec.advance_indicator := p_advance_indicator;
522 l_rec.advance_payable := p_advance_payable;
523 l_rec.advance_deduction := p_advance_deduction;
524 l_rec.process_advance_entry := p_process_advance_entry;
525 l_rec.proration_group := p_proration_group;
526 l_rec.proration_formula := p_proration_formula;
527 l_rec.recalc_event_group := p_recalc_event_group;
528 l_rec.once_each_period_flag := p_once_each_period_flag;
529 l_rec.object_version_number := p_object_version_number;
530 --
531 -- Return the plsql record structure.
532 --
533 hr_utility.set_location(' Leaving:'||l_proc, 10);
534 Return(l_rec);
535 --
536 End convert_args;
537 --
538 end pay_set_shd;