[Home] [Help]
PACKAGE BODY: APPS.PAY_FED_INS
Source
1 Package Body pay_fed_ins as
2 /* $Header: pyfedrhi.pkb 120.1.12000000.4 2007/07/26 11:08:20 vaprakas noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' pay_fed_ins.'; -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |----------------------------< dt_insert_dml >-----------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 -- This procedure controls the actual dml insert logic for datetrack. The
17 -- functions of this procedure are as follows:
18 -- 1) Get the object_version_number.
19 -- 2) To set the effective start and end dates to the corresponding
20 -- validation start and end dates. Also, the object version number
21 -- record attribute is set.
22 -- 3) To set and unset the g_api_dml status as required (as we are about to
23 -- perform dml).
24 -- 4) To insert the row into the schema with the derived effective start
25 -- and end dates and the object version number.
26 -- 5) To trap any constraint violations that may have occurred.
27 -- 6) To raise any other errors.
28 --
29 -- Prerequisites:
30 -- This is an internal private procedure which must be called from the
31 -- insert_dml and pre_update (logic permitting) procedure and must have
32 -- all mandatory arguments set.
33 --
34 -- In Parameters:
35 -- A Pl/Sql record structre.
36 --
37 -- Post Success:
38 -- The specified row will be inserted into the schema.
39 --
40 -- Post Failure:
41 -- On the insert dml failure it is important to note that we always reset the
42 -- g_api_dml status to false.
43 -- If a check or unique integrity constraint violation is raised the
44 -- constraint_error procedure will be called.
45 -- If any other error is reported, the error will be raised after the
46 -- g_api_dml status is reset.
47 --
48 -- Developer Implementation Notes:
49 -- This is an internal datetrack maintenance procedure which should
50 -- not be modified in anyway.
51 --
52 -- Access Status:
53 -- Internal Row Handler Use Only.
54 --
55 -- {End Of Comments}
56 -- ----------------------------------------------------------------------------
57 Procedure dt_insert_dml
58 (p_rec in out nocopy pay_fed_shd.g_rec_type,
59 p_effective_date in date,
60 p_datetrack_mode in varchar2,
61 p_validation_start_date in date,
62 p_validation_end_date in date) is
63 --
64 -- Cursor to select 'old' created AOL who column values
65 --
66 Cursor C_Sel1 Is
67 select t.created_by,
68 t.creation_date
69 from pay_us_emp_fed_tax_rules_f t
70 where t.emp_fed_tax_rule_id = p_rec.emp_fed_tax_rule_id
71 and t.effective_start_date =
72 pay_fed_shd.g_old_rec.effective_start_date
73 and t.effective_end_date = (p_validation_start_date - 1);
74 --
75 l_proc varchar2(72) := g_package||'dt_insert_dml';
76 l_created_by pay_us_emp_fed_tax_rules_f.created_by%TYPE;
77 l_creation_date pay_us_emp_fed_tax_rules_f.creation_date%TYPE;
78 l_last_update_date pay_us_emp_fed_tax_rules_f.last_update_date%TYPE;
79 l_last_updated_by pay_us_emp_fed_tax_rules_f.last_updated_by%TYPE;
80 l_last_update_login pay_us_emp_fed_tax_rules_f.last_update_login%TYPE;
81 --
82 Begin
83 hr_utility.set_location('Entering:'||l_proc, 5);
84 --
85 -- Get the object version number for the insert
86 --
87 p_rec.object_version_number :=
88 dt_api.get_object_version_number
89 (p_base_table_name => 'pay_us_emp_fed_tax_rules_f',
90 p_base_key_column => 'emp_fed_tax_rule_id',
91 p_base_key_value => p_rec.emp_fed_tax_rule_id);
92 --
93 -- Set the effective start and end dates to the corresponding
94 -- validation start and end dates
95 --
96 p_rec.effective_start_date := p_validation_start_date;
97 p_rec.effective_end_date := p_validation_end_date;
98 --
99 -- If the datetrack_mode is not INSERT then we must populate the WHO
100 -- columns with the 'old' creation values and 'new' updated values.
101 --
102 If (p_datetrack_mode <> 'INSERT') then
103 hr_utility.set_location(l_proc, 10);
104 --
105 -- Select the 'old' created values
106 --
107 Open C_Sel1;
108 Fetch C_Sel1 Into l_created_by, l_creation_date;
109 If C_Sel1%notfound Then
110 --
111 -- The previous 'old' created row has not been found. We need
112 -- to error as an internal datetrack problem exists.
113 --
114 Close C_Sel1;
115 hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
116 hr_utility.set_message_token('PROCEDURE', l_proc);
117 hr_utility.set_message_token('STEP','10');
118 hr_utility.raise_error;
119 End If;
120 Close C_Sel1;
121 --
122 -- Set the AOL updated WHO values
123 --
124 l_last_update_date := sysdate;
125 l_last_updated_by := fnd_global.user_id;
126 l_last_update_login := fnd_global.login_id;
127 End If;
128 --
132 --
129 pay_fed_shd.g_api_dml := true; -- Set the api dml status
130 --
131 -- Insert the row into: pay_us_emp_fed_tax_rules_f
133 insert into pay_us_emp_fed_tax_rules_f
134 ( emp_fed_tax_rule_id,
135 effective_start_date,
136 effective_end_date,
137 assignment_id,
138 sui_state_code,
139 sui_jurisdiction_code,
140 business_group_id,
141 additional_wa_amount,
142 filing_status_code,
143 fit_override_amount,
144 fit_override_rate,
145 withholding_allowances,
146 cumulative_taxation,
147 eic_filing_status_code,
148 fit_additional_tax,
149 fit_exempt,
150 futa_tax_exempt,
151 medicare_tax_exempt,
152 ss_tax_exempt,
153 wage_exempt,
154 statutory_employee,
155 w2_filed_year,
156 supp_tax_override_rate,
157 excessive_wa_reject_date,
158 object_version_number
159 , created_by,
160 creation_date,
161 last_update_date,
162 last_updated_by,
163 last_update_login,
164 attribute_category,
165 attribute1,
166 attribute2,
167 attribute3,
168 attribute4,
169 attribute5,
170 attribute6,
171 attribute7,
172 attribute8,
173 attribute9,
174 attribute10,
175 attribute11,
176 attribute12,
177 attribute13,
178 attribute14,
179 attribute15,
180 attribute16,
181 attribute17,
182 attribute18,
183 attribute19,
184 attribute20,
185 attribute21,
186 attribute22,
187 attribute23,
188 attribute24,
189 attribute25,
190 attribute26,
191 attribute27,
192 attribute28,
193 attribute29,
194 attribute30,
195 fed_information_category,
196 fed_information1,
197 fed_information2,
198 fed_information3,
199 fed_information4,
200 fed_information5,
201 fed_information6,
202 fed_information7,
203 fed_information8,
204 fed_information9,
205 fed_information10,
206 fed_information11,
207 fed_information12,
208 fed_information13,
209 fed_information14,
210 fed_information15,
211 fed_information16,
212 fed_information17,
213 fed_information18,
214 fed_information19,
215 fed_information20,
216 fed_information21,
217 fed_information22,
218 fed_information23,
219 fed_information24,
220 fed_information25,
221 fed_information26,
222 fed_information27,
223 fed_information28,
224 fed_information29,
225 fed_information30
226 )
227 Values
228 ( p_rec.emp_fed_tax_rule_id,
229 p_rec.effective_start_date,
230 p_rec.effective_end_date,
231 p_rec.assignment_id,
232 p_rec.sui_state_code,
233 p_rec.sui_jurisdiction_code,
234 p_rec.business_group_id,
235 p_rec.additional_wa_amount,
236 p_rec.filing_status_code,
237 p_rec.fit_override_amount,
238 p_rec.fit_override_rate,
239 p_rec.withholding_allowances,
240 p_rec.cumulative_taxation,
241 p_rec.eic_filing_status_code,
242 p_rec.fit_additional_tax,
243 nvl(p_rec.fit_exempt, 'N'),
244 nvl(p_rec.futa_tax_exempt, 'N'),
245 nvl(p_rec.medicare_tax_exempt, 'N'),
246 nvl(p_rec.ss_tax_exempt, 'N'),
247 nvl(p_rec.wage_exempt, 'N'),
248 nvl(p_rec.statutory_employee, 'N'),
249 p_rec.w2_filed_year,
250 p_rec.supp_tax_override_rate,
251 p_rec.excessive_wa_reject_date,
252 p_rec.object_version_number
253 , l_created_by,
254 l_creation_date,
255 l_last_update_date,
256 l_last_updated_by,
257 l_last_update_login,
258 p_rec.attribute_category,
259 p_rec.attribute1,
260 p_rec.attribute2,
261 p_rec.attribute3,
262 p_rec.attribute4,
263 p_rec.attribute5,
264 p_rec.attribute6,
265 p_rec.attribute7,
266 p_rec.attribute8,
267 p_rec.attribute9,
268 p_rec.attribute10,
269 p_rec.attribute11,
270 p_rec.attribute12,
271 p_rec.attribute13,
272 p_rec.attribute14,
273 p_rec.attribute15,
274 p_rec.attribute16,
275 p_rec.attribute17,
276 p_rec.attribute18,
277 p_rec.attribute19,
278 p_rec.attribute20,
279 p_rec.attribute21,
280 p_rec.attribute22,
281 p_rec.attribute23,
282 p_rec.attribute24,
283 p_rec.attribute25,
284 p_rec.attribute26,
285 p_rec.attribute27,
286 p_rec.attribute28,
287 p_rec.attribute29,
288 p_rec.attribute30,
289 p_rec.fed_information_category,
290 p_rec.fed_information1,
291 p_rec.fed_information2,
292 p_rec.fed_information3,
293 p_rec.fed_information4,
294 p_rec.fed_information5,
295 p_rec.fed_information6,
296 p_rec.fed_information7,
297 p_rec.fed_information8,
298 p_rec.fed_information9,
299 p_rec.fed_information10,
300 p_rec.fed_information11,
301 p_rec.fed_information12,
302 p_rec.fed_information13,
306 p_rec.fed_information17,
303 p_rec.fed_information14,
304 p_rec.fed_information15,
305 p_rec.fed_information16,
307 p_rec.fed_information18,
308 p_rec.fed_information19,
309 p_rec.fed_information20,
310 p_rec.fed_information21,
311 p_rec.fed_information22,
312 p_rec.fed_information23,
313 p_rec.fed_information24,
314 p_rec.fed_information25,
315 p_rec.fed_information26,
316 p_rec.fed_information27,
317 p_rec.fed_information28,
318 p_rec.fed_information29,
319 p_rec.fed_information30 );
320 --
321 pay_fed_shd.g_api_dml := false; -- Unset the api dml status
322 hr_utility.set_location(' Leaving:'||l_proc, 15);
323 --
324 Exception
325 When hr_api.check_integrity_violated Then
326 -- A check constraint has been violated
327 pay_fed_shd.g_api_dml := false; -- Unset the api dml status
328 pay_fed_shd.constraint_error
329 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
330 When hr_api.unique_integrity_violated Then
331 -- Unique integrity has been violated
332 pay_fed_shd.g_api_dml := false; -- Unset the api dml status
333 pay_fed_shd.constraint_error
334 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
335 When Others Then
336 pay_fed_shd.g_api_dml := false; -- Unset the api dml status
337 Raise;
338 End dt_insert_dml;
339 --
340 -- ----------------------------------------------------------------------------
341 -- |------------------------------< insert_dml >------------------------------|
342 -- ----------------------------------------------------------------------------
343 Procedure insert_dml
344 (p_rec in out nocopy pay_fed_shd.g_rec_type,
345 p_effective_date in date,
346 p_datetrack_mode in varchar2,
347 p_validation_start_date in date,
348 p_validation_end_date in date) is
349 --
350 l_proc varchar2(72) := g_package||'insert_dml';
351 --
352 Begin
353 hr_utility.set_location('Entering:'||l_proc, 5);
354 --
355 dt_insert_dml(p_rec => p_rec,
356 p_effective_date => p_effective_date,
357 p_datetrack_mode => p_datetrack_mode,
358 p_validation_start_date => p_validation_start_date,
359 p_validation_end_date => p_validation_end_date);
360 --
361 hr_utility.set_location(' Leaving:'||l_proc, 10);
362 End insert_dml;
363 --
364 -- ----------------------------------------------------------------------------
365 -- |------------------------------< pre_insert >------------------------------|
366 -- ----------------------------------------------------------------------------
367 -- {Start Of Comments}
368 --
369 -- Description:
370 -- This private procedure contains any processing which is required before
371 -- the insert dml. Presently, if the entity has a corresponding primary
372 -- key which is maintained by an associating sequence, the primary key for
373 -- the entity will be populated with the next sequence value in
374 -- preparation for the insert dml.
375 -- Also, if comments are defined for this entity, the comments insert
376 -- logic will also be called, generating a comment_id if required.
377 --
378 -- Prerequisites:
379 -- This is an internal procedure which is called from the ins procedure.
380 --
381 -- In Parameters:
382 -- A Pl/Sql record structre.
383 --
384 -- Post Success:
385 -- Processing continues.
386 --
387 -- Post Failure:
388 -- If an error has occurred, an error message and exception will be raised
389 -- but not handled.
390 --
391 -- Developer Implementation Notes:
392 -- Any pre-processing required before the insert dml is issued should be
393 -- coded within this procedure. As stated above, a good example is the
394 -- generation of a primary key number via a corresponding sequence.
395 -- It is important to note that any 3rd party maintenance should be reviewed
396 -- before placing in this procedure.
397 --
398 -- Access Status:
399 -- Internal Row Handler Use Only.
400 --
401 -- {End Of Comments}
402 -- ----------------------------------------------------------------------------
403 Procedure pre_insert
404 (p_rec in out nocopy pay_fed_shd.g_rec_type,
405 p_effective_date in date,
406 p_datetrack_mode in varchar2,
407 p_validation_start_date in date,
408 p_validation_end_date in date) is
409 --
410 l_proc varchar2(72) := g_package||'pre_insert';
411 --
412 Cursor C_Sel1 is select pay_us_emp_fed_tax_rules_s.nextval from sys.dual;
413 --
414 Begin
415 hr_utility.set_location('Entering:'||l_proc, 5);
416 --
417 --
418 -- Select the next sequence number
419 --
420 Open C_Sel1;
421 Fetch C_Sel1 Into p_rec.emp_fed_tax_rule_id;
422 Close C_Sel1;
423 --
424 --
425 hr_utility.set_location(' Leaving:'||l_proc, 10);
426 End pre_insert;
427 --
428 -- ----------------------------------------------------------------------------
429 -- |-----------------------------< post_insert >------------------------------|
430 -- ----------------------------------------------------------------------------
431 -- {Start Of Comments}
432 --
433 -- Description:
434 -- This private procedure contains any processing which is required after the
435 -- insert dml.
436 --
437 -- Prerequisites:
438 -- This is an internal procedure which is called from the ins procedure.
439 --
440 -- In Parameters:
441 -- A Pl/Sql record structre.
442 --
443 -- Post Success:
444 -- Processing continues.
445 --
446 -- Post Failure:
447 -- If an error has occurred, an error message and exception will be raised
448 -- but not handled.
449 --
450 -- Developer Implementation Notes:
451 -- Any post-processing required after the insert dml is issued should be
452 -- coded within this procedure. It is important to note that any 3rd party
453 -- maintenance should be reviewed before placing in this procedure.
454 --
455 -- Access Status:
456 -- Internal Row Handler Use Only.
457 --
458 -- {End Of Comments}
459 -- ----------------------------------------------------------------------------
460 Procedure post_insert
461 (p_rec in pay_fed_shd.g_rec_type,
462 p_effective_date in date,
463 p_datetrack_mode in varchar2,
464 p_validation_start_date in date,
465 p_validation_end_date in date) is
466 --
467 l_proc varchar2(72) := g_package||'post_insert';
468 --
469 Begin
470 hr_utility.set_location('Entering:'||l_proc, 5);
471 --
472 --
473 -- Start of API User Hook for post_insert.
474 --
475 begin
476 --
477 /* pay_fed_rki.after_insert
478 (
479 p_emp_fed_tax_rule_id =>p_rec.emp_fed_tax_rule_id
480 ,p_effective_start_date =>p_rec.effective_start_date
481 ,p_effective_end_date =>p_rec.effective_end_date
482 ,p_assignment_id =>p_rec.assignment_id
483 ,p_sui_state_code =>p_rec.sui_state_code
484 ,p_sui_jurisdiction_code =>p_rec.sui_jurisdiction_code
485 ,p_business_group_id =>p_rec.business_group_id
486 ,p_additional_wa_amount =>p_rec.additional_wa_amount
487 ,p_filing_status_code =>p_rec.filing_status_code
488 ,p_fit_override_amount =>p_rec.fit_override_amount
489 ,p_fit_override_rate =>p_rec.fit_override_rate
490 ,p_withholding_allowances =>p_rec.withholding_allowances
491 ,p_cumulative_taxation =>p_rec.cumulative_taxation
492 ,p_eic_filing_status_code =>p_rec.eic_filing_status_code
493 ,p_fit_additional_tax =>p_rec.fit_additional_tax
494 ,p_fit_exempt =>p_rec.fit_exempt
495 ,p_futa_tax_exempt =>p_rec.futa_tax_exempt
496 ,p_medicare_tax_exempt =>p_rec.medicare_tax_exempt
497 ,p_ss_tax_exempt =>p_rec.ss_tax_exempt
498 ,p_wage_exempt =>p_rec.wage_exempt
499 ,p_statutory_employee =>p_rec.statutory_employee
500 ,p_w2_filed_year =>p_rec.w2_filed_year
501 ,p_supp_tax_override_rate =>p_rec.supp_tax_override_rate
502 ,p_excessive_wa_reject_date =>p_rec.excessive_wa_reject_date
503 ,p_object_version_number =>p_rec.object_version_number
504 ,p_effective_date =>p_effective_date
505 ,p_validation_start_date =>p_validation_start_date
506 ,p_validation_end_date =>p_validation_end_date
507 );
508 --
509 exception
510 --
511 when hr_api.cannot_find_prog_unit then
512 --
513 hr_api.cannot_find_prog_unit_error
514 (p_module_name => 'PAY_US_EMP_FED_TAX_RULES_F
515 ,p_hook_type => 'AI');
516 --
517 */
518 null;
519 --
520 end;
521 --
522 -- End of API User Hook for post_insert.
523 --
524 --
525 hr_utility.set_location(' Leaving:'||l_proc, 10);
526 End post_insert;
527 --
528 -- ----------------------------------------------------------------------------
529 -- |-------------------------------< ins_lck >--------------------------------|
530 -- ----------------------------------------------------------------------------
531 -- {Start Of Comments}
532 --
533 -- Description:
534 -- The ins_lck process has one main function to perform. When inserting
535 -- a datetracked row, we must validate the DT mode.
536 -- be manipulated.
537 --
538 -- Prerequisites:
539 -- This procedure can only be called for the datetrack mode of INSERT.
540 --
541 -- In Parameters:
542 --
543 -- Post Success:
544 -- On successful completion of the ins_lck process the parental
545 -- datetracked rows will be locked providing the p_enforce_foreign_locking
546 -- argument value is TRUE.
547 -- If the p_enforce_foreign_locking argument value is FALSE then the
548 -- parential rows are not locked.
549 --
550 -- Post Failure:
551 -- The Lck process can fail for:
552 -- 1) When attempting to lock the row the row could already be locked by
553 -- another user. This will raise the HR_Api.Object_Locked exception.
554 -- 2) When attempting to the lock the parent which doesn't exist.
555 -- For the entity to be locked the parent must exist!
556 --
557 -- Developer Implementation Notes:
558 -- None.
559 --
560 -- Access Status:
561 -- Internal Row Handler Use Only.
562 --
563 -- {End Of Comments}
564 -- ----------------------------------------------------------------------------
565 Procedure ins_lck
566 (p_effective_date in date,
567 p_datetrack_mode in varchar2,
568 p_rec in pay_fed_shd.g_rec_type,
569 p_validation_start_date out nocopy date,
570 p_validation_end_date out nocopy date) is
571 --
572 l_proc varchar2(72) := g_package||'ins_lck';
573 l_validation_start_date date;
574 l_validation_end_date date;
575 --
576 Begin
577 hr_utility.set_location('Entering:'||l_proc, 5);
578 --
579 -- Validate the datetrack mode mode getting the validation start
580 -- and end dates for the specified datetrack operation.
581 --
582 dt_api.validate_dt_mode
583 (p_effective_date => p_effective_date,
584 p_datetrack_mode => p_datetrack_mode,
585 p_base_table_name => 'pay_us_emp_fed_tax_rules_f',
586 p_base_key_column => 'emp_fed_tax_rule_id',
587 p_base_key_value => p_rec.emp_fed_tax_rule_id,
588 p_parent_table_name1 => 'per_assignments_f',
589 p_parent_key_column1 => 'assignment_id',
590 p_parent_key_value1 => p_rec.assignment_id,
591 p_enforce_foreign_locking => true,
592 p_validation_start_date => l_validation_start_date,
593 p_validation_end_date => l_validation_end_date);
594 --
595 -- Set the validation start and end date OUT arguments
596 --
597 p_validation_start_date := l_validation_start_date;
598 p_validation_end_date := l_validation_end_date;
599 --
600 hr_utility.set_location(' Leaving:'||l_proc, 10);
601 --
602 End ins_lck;
603 --
604 -- ----------------------------------------------------------------------------
605 -- |---------------------------------< ins >----------------------------------|
606 -- ----------------------------------------------------------------------------
607 Procedure ins
608 (
609 p_rec in out nocopy pay_fed_shd.g_rec_type,
610 p_effective_date in date
611 ) is
612 --
613 l_proc varchar2(72) := g_package||'ins';
614 l_datetrack_mode varchar2(30) := 'INSERT';
615 l_validation_start_date date;
616 l_validation_end_date date;
617 --
618 Begin
619 hr_utility.set_location('Entering:'||l_proc, 5);
620 --
621 -- Call the lock operation
622 --
623 ins_lck
624 (p_effective_date => p_effective_date,
625 p_datetrack_mode => l_datetrack_mode,
626 p_rec => p_rec,
627 p_validation_start_date => l_validation_start_date,
628 p_validation_end_date => l_validation_end_date);
629 --
630 -- Call the supporting insert validate operations
631 --
632 pay_fed_bus.insert_validate
633 (p_rec => p_rec,
634 p_effective_date => p_effective_date,
635 p_datetrack_mode => l_datetrack_mode,
636 p_validation_start_date => l_validation_start_date,
637 p_validation_end_date => l_validation_end_date);
638 --
639 -- Call the supporting pre-insert operation
640 --
641 pre_insert
642 (p_rec => p_rec,
643 p_effective_date => p_effective_date,
644 p_datetrack_mode => l_datetrack_mode,
645 p_validation_start_date => l_validation_start_date,
646 p_validation_end_date => l_validation_end_date);
647 --
648 -- Insert the row
649 --
650 insert_dml
651 (p_rec => p_rec,
652 p_effective_date => p_effective_date,
653 p_datetrack_mode => l_datetrack_mode,
654 p_validation_start_date => l_validation_start_date,
655 p_validation_end_date => l_validation_end_date);
656 --
657 -- Call the supporting post-insert operation
658 --
659 post_insert
660 (p_rec => p_rec,
661 p_effective_date => p_effective_date,
662 p_datetrack_mode => l_datetrack_mode,
663 p_validation_start_date => l_validation_start_date,
664 p_validation_end_date => l_validation_end_date);
665 end ins;
666 --
667 -- ----------------------------------------------------------------------------
668 -- |---------------------------------< ins >----------------------------------|
669 -- ----------------------------------------------------------------------------
670 Procedure ins
671 (
672 p_emp_fed_tax_rule_id out nocopy number,
673 p_effective_start_date out nocopy date,
674 p_effective_end_date out nocopy date,
675 p_assignment_id in number,
676 p_sui_state_code in varchar2,
677 p_sui_jurisdiction_code in varchar2,
678 p_business_group_id in number,
679 p_additional_wa_amount in number default 0,
680 p_filing_status_code in varchar2,
681 p_fit_override_amount in number,
682 p_fit_override_rate in number,
683 p_withholding_allowances in number,
684 p_cumulative_taxation in varchar2 default null,
685 p_eic_filing_status_code in varchar2 default null,
686 p_fit_additional_tax in number default null,
687 p_fit_exempt in varchar2 default null,
688 p_futa_tax_exempt in varchar2 default null,
689 p_medicare_tax_exempt in varchar2 default null,
690 p_ss_tax_exempt in varchar2 default null,
691 p_wage_exempt in varchar2 default null,
692 p_statutory_employee in varchar2 default null,
693 p_w2_filed_year in number default null,
694 p_supp_tax_override_rate in number default null,
695 p_excessive_wa_reject_date in date default null,
696 p_object_version_number out nocopy number,
697 p_effective_date in date,
698 p_attribute_category in varchar2 default null,
699 p_attribute1 in varchar2 default null,
700 p_attribute2 in varchar2 default null,
701 p_attribute3 in varchar2 default null,
702 p_attribute4 in varchar2 default null,
703 p_attribute5 in varchar2 default null,
704 p_attribute6 in varchar2 default null,
705 p_attribute7 in varchar2 default null,
706 p_attribute8 in varchar2 default null,
707 p_attribute9 in varchar2 default null,
708 p_attribute10 in varchar2 default null,
709 p_attribute11 in varchar2 default null,
710 p_attribute12 in varchar2 default null,
711 p_attribute13 in varchar2 default null,
712 p_attribute14 in varchar2 default null,
713 p_attribute15 in varchar2 default null,
714 p_attribute16 in varchar2 default null,
715 p_attribute17 in varchar2 default null,
716 p_attribute18 in varchar2 default null,
717 p_attribute19 in varchar2 default null,
718 p_attribute20 in varchar2 default null,
719 p_attribute21 in varchar2 default null,
720 p_attribute22 in varchar2 default null,
721 p_attribute23 in varchar2 default null,
722 p_attribute24 in varchar2 default null,
723 p_attribute25 in varchar2 default null,
724 p_attribute26 in varchar2 default null,
725 p_attribute27 in varchar2 default null,
726 p_attribute28 in varchar2 default null,
727 p_attribute29 in varchar2 default null,
728 p_attribute30 in varchar2 default null,
729 p_fed_information_category in varchar2 default null,
730 p_fed_information1 in varchar2 default null,
731 p_fed_information2 in varchar2 default null,
732 p_fed_information3 in varchar2 default null,
733 p_fed_information4 in varchar2 default null,
734 p_fed_information5 in varchar2 default null,
735 p_fed_information6 in varchar2 default null,
736 p_fed_information7 in varchar2 default null,
737 p_fed_information8 in varchar2 default null,
738 p_fed_information9 in varchar2 default null,
739 p_fed_information10 in varchar2 default null,
740 p_fed_information11 in varchar2 default null,
741 p_fed_information12 in varchar2 default null,
742 p_fed_information13 in varchar2 default null,
743 p_fed_information14 in varchar2 default null,
744 p_fed_information15 in varchar2 default null,
745 p_fed_information16 in varchar2 default null,
746 p_fed_information17 in varchar2 default null,
747 p_fed_information18 in varchar2 default null,
748 p_fed_information19 in varchar2 default null,
749 p_fed_information20 in varchar2 default null,
750 p_fed_information21 in varchar2 default null,
751 p_fed_information22 in varchar2 default null,
752 p_fed_information23 in varchar2 default null,
753 p_fed_information24 in varchar2 default null,
754 p_fed_information25 in varchar2 default null,
755 p_fed_information26 in varchar2 default null,
756 p_fed_information27 in varchar2 default null,
757 p_fed_information28 in varchar2 default null,
758 p_fed_information29 in varchar2 default null,
759 p_fed_information30 in varchar2 default null
760 ) is
761 --
762 l_rec pay_fed_shd.g_rec_type;
763 l_proc varchar2(72) := g_package||'ins';
764 --
765 Begin
766 hr_utility.set_location('Entering:'||l_proc, 5);
767 --
768 -- Call conversion function to turn arguments into the
769 -- p_rec structure.
770 --
771 l_rec :=
772 pay_fed_shd.convert_args
773 (
774 null,
775 null,
776 null,
777 p_assignment_id,
778 p_sui_state_code,
779 p_sui_jurisdiction_code,
780 p_business_group_id,
781 p_additional_wa_amount,
782 p_filing_status_code,
783 p_fit_override_amount,
784 p_fit_override_rate,
785 p_withholding_allowances,
786 p_cumulative_taxation,
787 p_eic_filing_status_code,
788 p_fit_additional_tax,
789 p_fit_exempt,
790 p_futa_tax_exempt,
791 p_medicare_tax_exempt,
792 p_ss_tax_exempt,
793 p_wage_exempt,
794 p_statutory_employee,
795 p_w2_filed_year,
796 p_supp_tax_override_rate,
797 p_excessive_wa_reject_date,
798 null,
799 p_attribute_category,
800 p_attribute1 ,
801 p_attribute2 ,
802 p_attribute3 ,
803 p_attribute4 ,
804 p_attribute5 ,
805 p_attribute6 ,
806 p_attribute7 ,
807 p_attribute8 ,
808 p_attribute9 ,
809 p_attribute10,
810 p_attribute11,
811 p_attribute12,
812 p_attribute13,
813 p_attribute14,
814 p_attribute15,
815 p_attribute16,
816 p_attribute17,
817 p_attribute18,
818 p_attribute19,
819 p_attribute20,
820 p_attribute21,
821 p_attribute22,
822 p_attribute23,
823 p_attribute24,
824 p_attribute25,
825 p_attribute26,
826 p_attribute27,
827 p_attribute28,
828 p_attribute29,
829 p_attribute30,
830 p_fed_information_category,
831 p_fed_information1 ,
832 p_fed_information2 ,
833 p_fed_information3 ,
834 p_fed_information4 ,
835 p_fed_information5 ,
836 p_fed_information6 ,
837 p_fed_information7 ,
838 p_fed_information8 ,
839 p_fed_information9 ,
840 p_fed_information10,
841 p_fed_information11,
842 p_fed_information12,
843 p_fed_information13,
844 p_fed_information14,
845 p_fed_information15,
846 p_fed_information16,
847 p_fed_information17,
848 p_fed_information18,
849 p_fed_information19,
850 p_fed_information20,
851 p_fed_information21,
852 p_fed_information22,
853 p_fed_information23,
854 p_fed_information24,
855 p_fed_information25,
856 p_fed_information26,
857 p_fed_information27,
858 p_fed_information28,
859 p_fed_information29,
860 p_fed_information30
861 );
862 --
863 -- Having converted the arguments into the pay_fed_rec
864 -- plsql record structure we call the corresponding record
865 -- business process.
866 --
867 ins(l_rec, p_effective_date);
868 --
869 -- Set the OUT arguments.
870 --
871 p_emp_fed_tax_rule_id := l_rec.emp_fed_tax_rule_id;
872 p_effective_start_date := l_rec.effective_start_date;
873 p_effective_end_date := l_rec.effective_end_date;
874 p_object_version_number := l_rec.object_version_number;
875 --
876 --
877 hr_utility.set_location(' Leaving:'||l_proc, 10);
878 End ins;
879 --
880 end pay_fed_ins;