DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_FED_SHD

Source


1 PACKAGE BODY pay_fed_shd 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_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
18   hr_utility.set_location('Entering:'||l_proc, 5);
19   --
20   Return (nvl(g_api_dml, false));
21   --
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   l_proc       varchar2(72) := g_package||'constraint_error';
32 --
33 Begin
34   hr_utility.set_location('Entering:'||l_proc, 5);
35   --
36   If (p_constraint_name = 'PAY_USFTR_CUMULATIVE_FLAG_CHK') Then
37     hr_utility.set_message(801, 'PAY_72783_FED_CUMUL_Y_OR_N');
38     hr_utility.raise_error;
39   ElsIf (p_constraint_name = 'PAY_USFTR_EIC_FILING_STATU_CHK') Then
40     hr_utility.set_message(801,'PAY_72784_FED_EIC_STAT_INVALID');
41     hr_utility.raise_error;
42   ElsIf (p_constraint_name = 'PAY_USFTR_FILING_STATUS_CO_CHK') Then
43     hr_utility.set_message(801,'PAY_72785_FED_FIL_STAT_INVALID');
44     hr_utility.raise_error;
45   ElsIf (p_constraint_name = 'PAY_USFTR_FIT_EXEMPT_CHK') Then
46     hr_utility.set_message(801, 'PAY_72787_FED_FIT_Y_OR_N');
47     hr_utility.raise_error;
48   ElsIf (p_constraint_name = 'PAY_USFTR_FUTA_TAX_EXEMPT_CHK') Then
49     hr_utility.set_message(801, 'PAY_72788_FED_FUTA_Y_OR_N');
50     hr_utility.raise_error;
51   ElsIf (p_constraint_name = 'PAY_USFTR_MEDICARE_TAX_EXE_CHK') Then
52     hr_utility.set_message(801, 'PAY_72789_FED_MED_Y_OR_N');
53     hr_utility.raise_error;
54   ElsIf (p_constraint_name = 'PAY_USFTR_SS_TAX_EXEMPT_CHK') Then
55     hr_utility.set_message(801, 'PAY_72794_FED_SS_Y_OR_N');
56     hr_utility.raise_error;
57   ElsIf (p_constraint_name = 'PAY_USFTR_STATUTORY_EMPLOY_CHK') Then
58     hr_utility.set_message(801, 'PAY_72795_FED_STAT_EMP_Y_OR_N');
59     hr_utility.raise_error;
60   ElsIf (p_constraint_name = 'PAY_US_EMP_FED_TAX_RULES_FK1') Then
61     hr_utility.set_message(801, 'HR_7952_ADDR_NO_STATE_CODE');
62     hr_utility.raise_error;
63   Else
64     hr_utility.set_message(801, 'HR_7877_API_INVALID_CONSTRAINT');
65     hr_utility.set_message_token('PROCEDURE', l_proc);
66     hr_utility.set_message_token('CONSTRAINT_NAME', p_constraint_name);
67     hr_utility.raise_error;
68   End If;
69   --
70   hr_utility.set_location(' Leaving:'||l_proc, 10);
71 End constraint_error;
72 --
73 -- ----------------------------------------------------------------------------
74 -- |-----------------------------< api_updating >-----------------------------|
75 -- ----------------------------------------------------------------------------
76 Function api_updating
77   (p_effective_date            in date,
78    p_emp_fed_tax_rule_id       in number,
79    p_object_version_number      in number
80   ) Return Boolean Is
81 --
82   --
83   -- Cursor selects the 'current' row from the HR Schema
84   --
85   Cursor C_Sel1 is
86     select
87       emp_fed_tax_rule_id,
88       effective_start_date,
89       effective_end_date,
90       assignment_id,
91       sui_state_code,
92       sui_jurisdiction_code,
93       business_group_id,
94       additional_wa_amount,
95       filing_status_code,
96       fit_override_amount,
97       fit_override_rate,
98       withholding_allowances,
99       cumulative_taxation,
100       eic_filing_status_code,
101       fit_additional_tax,
102       nvl(fit_exempt, 'N') fit_exempt,
103       nvl(futa_tax_exempt, 'N') futa_tax_exempt,
104       nvl(medicare_tax_exempt, 'N') medicare_tax_exempt,
105       nvl(ss_tax_exempt, 'N') ss_tax_exempt,
106       nvl(wage_exempt, 'N') wage_exempt,
107       nvl(statutory_employee, 'N') statutory_employee,
108       w2_filed_year,
109       supp_tax_override_rate,
110       excessive_wa_reject_date,
111       object_version_number,
112       attribute_category,
113       attribute1,
114       attribute2,
115       attribute3,
116       attribute4,
117       attribute5,
118       attribute6,
119       attribute7,
120       attribute8,
121       attribute9,
122       attribute10,
123       attribute11,
124       attribute12,
125       attribute13,
126       attribute14,
127       attribute15,
128       attribute16,
129       attribute17,
130       attribute18,
131       attribute19,
132       attribute20,
133       attribute21,
134       attribute22,
135       attribute23,
136       attribute24,
137       attribute25,
138       attribute26,
139       attribute27,
140       attribute28,
141       attribute29,
142       attribute30,
143       fed_information_category,
144       fed_information1,
145       fed_information2,
146       fed_information3,
147       fed_information4,
148       fed_information5,
149       fed_information6,
150       fed_information7,
151       fed_information8,
152       fed_information9,
153       fed_information10,
154       fed_information11,
155       fed_information12,
156       fed_information13,
157       fed_information14,
158       fed_information15,
159       fed_information16,
160       fed_information17,
161       fed_information18,
162       fed_information19,
163       fed_information20,
164       fed_information21,
165       fed_information22,
166       fed_information23,
167       fed_information24,
168       fed_information25,
169       fed_information26,
170       fed_information27,
171       fed_information28,
172       fed_information29,
173       fed_information30
174     from  pay_us_emp_fed_tax_rules_f
175     where emp_fed_tax_rule_id = p_emp_fed_tax_rule_id
176     and   p_effective_date
177     between effective_start_date and effective_end_date;
178 --
179   l_proc      varchar2(72)      := g_package||'api_updating';
180   l_fct_ret      boolean;
181 --
182 Begin
183   hr_utility.set_location('Entering:'||l_proc, 5);
184   --
185   If (p_effective_date is null or
186       p_emp_fed_tax_rule_id is null or
187       p_object_version_number is null) Then
188     --
189     -- One of the primary key arguments is null therefore we must
190     -- set the returning function value to false
191     --
192     l_fct_ret := false;
193   Else
194     If (p_emp_fed_tax_rule_id = g_old_rec.emp_fed_tax_rule_id and
195         p_object_version_number = g_old_rec.object_version_number) Then
196       hr_utility.set_location(l_proc, 10);
197       --
198       -- The g_old_rec is current therefore we must
199       -- set the returning function to true
200       --
201       l_fct_ret := true;
202     Else
203       --
204       -- Select the current row
205       --
206       Open C_Sel1;
207       Fetch C_Sel1 Into g_old_rec;
208       If C_Sel1%notfound Then
209         Close C_Sel1;
210         --
211         -- The primary key is invalid therefore we must error
212         --
213         hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
214         hr_utility.raise_error;
215       End If;
216       Close C_Sel1;
217       If (p_object_version_number <> g_old_rec.object_version_number) Then
218         hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
219         hr_utility.raise_error;
220       End If;
221       hr_utility.set_location(l_proc, 15);
222       l_fct_ret := true;
223     End If;
224   End If;
225   hr_utility.set_location(' Leaving:'||l_proc, 20);
226   Return (l_fct_ret);
227 --
228 End api_updating;
229 --
230 -- ----------------------------------------------------------------------------
231 -- |--------------------------< find_dt_del_modes >---------------------------|
232 -- ----------------------------------------------------------------------------
233 Procedure find_dt_del_modes
234       (p_effective_date       in  date,
235        p_base_key_value       in  number,
236        p_zap                  out nocopy boolean,
237        p_delete               out nocopy boolean,
238        p_future_change        out nocopy boolean,
239        p_delete_next_change   out nocopy boolean) is
240 --
241   l_proc    varchar2(72)   := g_package||'find_dt_del_modes';
242 --
243 --
244 Begin
245   hr_utility.set_location('Entering:'||l_proc, 5);
246   --
247   -- Call the corresponding datetrack api
248   --
249   dt_api.find_dt_del_modes
250       (p_effective_date       => p_effective_date,
251        p_base_table_name      => 'pay_us_emp_fed_tax_rules_f',
252        p_base_key_column      => 'emp_fed_tax_rule_id',
253        p_base_key_value       => p_base_key_value,
254        p_zap                  => p_zap,
255        p_delete               => p_delete,
256        p_future_change        => p_future_change,
257        p_delete_next_change   => p_delete_next_change);
258   --
259        p_delete               := false;
260        p_future_change        := false;
261        p_delete_next_change   := false;
262   --
263   --
264   hr_utility.set_location(' Leaving:'||l_proc, 10);
265 End find_dt_del_modes;
266 --
267 -- ----------------------------------------------------------------------------
268 -- |--------------------------< find_dt_upd_modes >---------------------------|
269 -- ----------------------------------------------------------------------------
270 Procedure find_dt_upd_modes
271       (p_effective_date       in  date,
272        p_base_key_value       in  number,
273        p_correction           out nocopy boolean,
274        p_update               out nocopy boolean,
275        p_update_override      out nocopy boolean,
276        p_update_change_insert out nocopy boolean) is
277 --
278   l_proc       varchar2(72) := g_package||'find_dt_upd_modes';
279 --
280 Begin
281   hr_utility.set_location('Entering:'||l_proc, 5);
282   --
283   -- Call the corresponding datetrack api
284   --
285   dt_api.find_dt_upd_modes
286       (p_effective_date       => p_effective_date,
287        p_base_table_name      => 'pay_us_emp_fed_tax_rules_f',
288        p_base_key_column      => 'emp_fed_tax_rule_id',
289        p_base_key_value       => p_base_key_value,
290        p_correction           => p_correction,
291        p_update               => p_update,
292        p_update_override      => p_update_override,
293        p_update_change_insert => p_update_change_insert);
294   --
295   hr_utility.set_location(' Leaving:'||l_proc, 10);
296 End find_dt_upd_modes;
297 --
298 -- ----------------------------------------------------------------------------
299 -- |------------------------< upd_effective_end_date >------------------------|
300 -- ----------------------------------------------------------------------------
301 Procedure upd_effective_end_date
302       (p_effective_date            in date,
303        p_base_key_value            in number,
304        p_new_effective_end_date    in date,
305        p_validation_start_date     in date,
306        p_validation_end_date       in date,
307        p_object_version_number       out nocopy number) is
308 --
309   l_proc     varchar2(72) := g_package||'upd_effective_end_date';
310   l_object_version_number number;
311 --
312 Begin
313   hr_utility.set_location('Entering:'||l_proc, 5);
314   --
315   -- Because we are updating a row we must get the next object
316   -- version number.
317   --
318   l_object_version_number :=
319     dt_api.get_object_version_number
320       (p_base_table_name      => 'pay_us_emp_fed_tax_rules_f',
321        p_base_key_column      => 'emp_fed_tax_rule_id',
322        p_base_key_value       => p_base_key_value);
323   --
324   hr_utility.set_location(l_proc, 10);
325   pay_fed_shd.g_api_dml := true;  -- Set the api dml status
326   --
327   -- Update the specified datetrack row setting the effective
328   -- end date to the specified new effective end date.
329   --
330   update  pay_us_emp_fed_tax_rules_f t
331   set   t.effective_end_date    = p_new_effective_end_date,
332         t.object_version_number = l_object_version_number
333   where t.emp_fed_tax_rule_id   = p_base_key_value
334   and   p_effective_date
335   between t.effective_start_date and t.effective_end_date;
336   --
337   pay_fed_shd.g_api_dml := false;   -- Unset the api dml status
338   p_object_version_number := l_object_version_number;
339   hr_utility.set_location(' Leaving:'||l_proc, 15);
340 --
341 Exception
342   When Others Then
343     pay_fed_shd.g_api_dml := false;   -- Unset the api dml status
344     Raise;
345 End upd_effective_end_date;
346 --
347 -- ----------------------------------------------------------------------------
348 -- |---------------------------------< lck >----------------------------------|
349 -- ----------------------------------------------------------------------------
350 Procedure lck
351       (p_effective_date        in  date,
352        p_datetrack_mode        in  varchar2,
353        p_emp_fed_tax_rule_id   in  number,
354        p_object_version_number in  number,
355        p_validation_start_date out nocopy date,
356        p_validation_end_date   out nocopy date) is
357 --
358   l_proc    varchar2(72) := g_package||'lck';
359   l_validation_start_date date;
360   l_validation_end_date   date;
361   l_object_invalid        exception;
362   l_argument              varchar2(30);
363   --
364   -- Cursor C_Sel1 selects the current locked row as of session date
365   -- ensuring that the object version numbers match.
366   --
367   Cursor C_Sel1 is
368     select
369       emp_fed_tax_rule_id,
370       effective_start_date,
371       effective_end_date,
372       assignment_id,
373       sui_state_code,
374       sui_jurisdiction_code,
375       business_group_id,
376       additional_wa_amount,
377       filing_status_code,
378       fit_override_amount,
379       fit_override_rate,
380       withholding_allowances,
381       cumulative_taxation,
382       eic_filing_status_code,
383       fit_additional_tax,
384       nvl(fit_exempt , 'N') fit_exempt,   -- Added by vaprakas Bug 6276555
385       nvl(futa_tax_exempt , 'N') futa_tax_exempt,
386       nvl(medicare_tax_exempt , 'N') medicare_tax_exempt,
387       nvl(ss_tax_exempt , 'N') ss_tax_exempt,
388       nvl(wage_exempt , 'N') wage_exempt,
389       nvl(statutory_employee , 'N') statutory_employee,
390       w2_filed_year,
391       supp_tax_override_rate,
392       excessive_wa_reject_date,
393       object_version_number,
394       attribute_category,
395       attribute1,
396       attribute2,
397       attribute3,
398       attribute4,
399       attribute5,
400       attribute6,
401       attribute7,
402       attribute8,
403       attribute9,
404       attribute10,
405       attribute11,
406       attribute12,
407       attribute13,
408       attribute14,
409       attribute15,
410       attribute16,
411       attribute17,
412       attribute18,
413       attribute19,
414       attribute20,
415       attribute21,
416       attribute22,
420       attribute26,
417       attribute23,
418       attribute24,
419       attribute25,
421       attribute27,
422       attribute28,
423       attribute29,
424       attribute30,
425       fed_information_category,
426       fed_information1,
427       fed_information2,
428       fed_information3,
429       fed_information4,
430       fed_information5,
431       fed_information6,
432       fed_information7,
433       fed_information8,
434       fed_information9,
435       fed_information10,
436       fed_information11,
437       fed_information12,
438       fed_information13,
439       fed_information14,
440       fed_information15,
441       fed_information16,
442       fed_information17,
443       fed_information18,
444       fed_information19,
445       fed_information20,
446       fed_information21,
447       fed_information22,
448       fed_information23,
449       fed_information24,
450       fed_information25,
451       fed_information26,
452       fed_information27,
453       fed_information28,
454       fed_information29,
455       fed_information30
456     from    pay_us_emp_fed_tax_rules_f
457     where   emp_fed_tax_rule_id         = p_emp_fed_tax_rule_id
458     and     p_effective_date
459     between effective_start_date and effective_end_date
460     for update nowait;
461   --
462   --
463   --
464 Begin
465   hr_utility.set_location('Entering:'||l_proc, 5);
466   --
467   -- Ensure that all the mandatory arguments are not null
468   --
469   hr_api.mandatory_arg_error(p_api_name       => l_proc,
470                              p_argument       => 'effective_date',
471                              p_argument_value => p_effective_date);
472   --
473   hr_api.mandatory_arg_error(p_api_name       => l_proc,
474                              p_argument       => 'datetrack_mode',
475                              p_argument_value => p_datetrack_mode);
476   --
477   hr_api.mandatory_arg_error(p_api_name       => l_proc,
478                              p_argument       => 'emp_fed_tax_rule_id',
479                              p_argument_value => p_emp_fed_tax_rule_id);
480   --
481   hr_api.mandatory_arg_error(p_api_name       => l_proc,
482                              p_argument       => 'object_version_number',
483                              p_argument_value => p_object_version_number);
484   --
485   -- Check to ensure the datetrack mode is not INSERT.
486   --
487   If (p_datetrack_mode <> 'INSERT') then
488     --
489     -- We must select and lock the current row.
490     --
491     Open  C_Sel1;
492     Fetch C_Sel1 Into g_old_rec;
493     If C_Sel1%notfound then
494       Close C_Sel1;
495       --
496       -- The primary key is invalid therefore we must error
497       --
498       hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
499       hr_utility.raise_error;
500     End If;
501     Close C_Sel1;
502     If (p_object_version_number <> g_old_rec.object_version_number) Then
503         hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
504         hr_utility.raise_error;
505       End If;
506     hr_utility.set_location(l_proc, 15);
507     --
508     --
509     -- Validate the datetrack mode mode getting the validation start
510     -- and end dates for the specified datetrack operation.
511     --
512     dt_api.validate_dt_mode
513       (p_effective_date          => p_effective_date,
514        p_datetrack_mode          => p_datetrack_mode,
515        p_base_table_name         => 'pay_us_emp_fed_tax_rules_f',
516        p_base_key_column         => 'emp_fed_tax_rule_id',
517        p_base_key_value          => p_emp_fed_tax_rule_id,
518        p_enforce_foreign_locking => true,
519        p_validation_start_date   => l_validation_start_date,
520        p_validation_end_date     => l_validation_end_date);
521   Else
522     --
523     -- We are doing a datetrack 'INSERT' which is illegal within this
524     -- procedure therefore we must error (note: to lck on insert the
525     -- private procedure ins_lck should be called).
526     --
527     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
528     hr_utility.set_message_token('PROCEDURE', l_proc);
529     hr_utility.set_message_token('STEP','20');
530     hr_utility.raise_error;
531   End If;
532   --
533   -- Set the validation start and end date OUT arguments
534   --
535   p_validation_start_date := l_validation_start_date;
536   p_validation_end_date   := l_validation_end_date;
537   --
538   hr_utility.set_location(' Leaving:'||l_proc, 30);
539 --
540 -- We need to trap the ORA LOCK exception
541 --
542 Exception
543   When HR_Api.Object_Locked then
544     --
545     -- The object is locked therefore we need to supply a meaningful
546     -- error message.
547     --
548     hr_utility.set_message(801, 'HR_7165_OBJECT_LOCKED');
549     hr_utility.set_message_token('TABLE_NAME', 'pay_us_emp_fed_tax_rules_f');
550     hr_utility.raise_error;
551   When l_object_invalid then
552     --
553     -- The object doesn't exist or is invalid
554     --
555     hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
556     hr_utility.set_message_token('TABLE_NAME', 'pay_us_emp_fed_tax_rules_f');
557     hr_utility.raise_error;
558 End lck;
559 --
560 -- ----------------------------------------------------------------------------
561 -- |-----------------------------< convert_args >-----------------------------|
562 -- ----------------------------------------------------------------------------
563 Function convert_args
564       (
565       p_emp_fed_tax_rule_id           in number,
566       p_effective_start_date          in date,
567       p_effective_end_date            in date,
568       p_assignment_id                 in number,
569       p_sui_state_code                in varchar2,
570       p_sui_jurisdiction_code         in varchar2,
571       p_business_group_id             in number,
572       p_additional_wa_amount          in number,
573       p_filing_status_code            in varchar2,
574       p_fit_override_amount           in number,
575       p_fit_override_rate             in number,
576       p_withholding_allowances        in number,
577       p_cumulative_taxation           in varchar2,
578       p_eic_filing_status_code        in varchar2,
579       p_fit_additional_tax            in number,
580       p_fit_exempt                    in varchar2,
581       p_futa_tax_exempt               in varchar2,
582       p_medicare_tax_exempt           in varchar2,
583       p_ss_tax_exempt                 in varchar2,
584       p_wage_exempt                   in varchar2,
585       p_statutory_employee            in varchar2,
586       p_w2_filed_year                 in number,
587       p_supp_tax_override_rate        in number,
588       p_excessive_wa_reject_date      in date,
589       p_object_version_number         in number,
590       p_attribute_category              in varchar2,
591       p_attribute1                      in varchar2,
592       p_attribute2                      in varchar2,
593       p_attribute3                      in varchar2,
594       p_attribute4                      in varchar2,
595       p_attribute5                      in varchar2,
596       p_attribute6                      in varchar2,
597       p_attribute7                      in varchar2,
598       p_attribute8                      in varchar2,
599       p_attribute9                      in varchar2,
600       p_attribute10                     in varchar2,
601       p_attribute11                     in varchar2,
602       p_attribute12                     in varchar2,
603       p_attribute13                     in varchar2,
604       p_attribute14                     in varchar2,
605       p_attribute15                     in varchar2,
606       p_attribute16                     in varchar2,
607       p_attribute17                     in varchar2,
608       p_attribute18                     in varchar2,
609       p_attribute19                     in varchar2,
610       p_attribute20                     in varchar2,
611       p_attribute21                     in varchar2,
612       p_attribute22                     in varchar2,
613       p_attribute23                     in varchar2,
614       p_attribute24                     in varchar2,
615       p_attribute25                     in varchar2,
616       p_attribute26                     in varchar2,
617       p_attribute27                     in varchar2,
618       p_attribute28                     in varchar2,
622       p_fed_information1                in varchar2,
619       p_attribute29                     in varchar2,
620       p_attribute30                     in varchar2,
621       p_fed_information_category        in varchar2,
623       p_fed_information2                in varchar2,
624       p_fed_information3                in varchar2,
625       p_fed_information4                in varchar2,
626       p_fed_information5                in varchar2,
627       p_fed_information6                in varchar2,
628       p_fed_information7                in varchar2,
629       p_fed_information8                in varchar2,
630       p_fed_information9                in varchar2,
631       p_fed_information10               in varchar2,
632       p_fed_information11               in varchar2,
633       p_fed_information12               in varchar2,
634       p_fed_information13               in varchar2,
635       p_fed_information14               in varchar2,
636       p_fed_information15               in varchar2,
637       p_fed_information16               in varchar2,
638       p_fed_information17               in varchar2,
639       p_fed_information18               in varchar2,
640       p_fed_information19               in varchar2,
641       p_fed_information20               in varchar2,
642       p_fed_information21               in varchar2,
643       p_fed_information22               in varchar2,
644       p_fed_information23               in varchar2,
645       p_fed_information24               in varchar2,
646       p_fed_information25               in varchar2,
647       p_fed_information26               in varchar2,
648       p_fed_information27               in varchar2,
649       p_fed_information28               in varchar2,
650       p_fed_information29               in varchar2,
651       p_fed_information30               in varchar2
652       )
653       Return g_rec_type is
654 --
655   l_rec        g_rec_type;
656   l_proc  varchar2(72) := g_package||'convert_args';
657 --
658 Begin
659   --
660   hr_utility.set_location('Entering:'||l_proc, 5);
661   --
662   -- Convert arguments into local l_rec structure.
663   --
664   l_rec.emp_fed_tax_rule_id              := p_emp_fed_tax_rule_id;
665   l_rec.effective_start_date             := p_effective_start_date;
666   l_rec.effective_end_date               := p_effective_end_date;
667   l_rec.assignment_id                    := p_assignment_id;
668   l_rec.sui_state_code                   := p_sui_state_code;
669   l_rec.sui_jurisdiction_code            := p_sui_jurisdiction_code;
670   l_rec.business_group_id                := p_business_group_id;
671   l_rec.additional_wa_amount             := p_additional_wa_amount;
672   l_rec.filing_status_code               := p_filing_status_code;
673   l_rec.fit_override_amount              := p_fit_override_amount;
674   l_rec.fit_override_rate                := p_fit_override_rate;
675   l_rec.withholding_allowances           := p_withholding_allowances;
676   l_rec.cumulative_taxation              := p_cumulative_taxation;
677   l_rec.eic_filing_status_code           := p_eic_filing_status_code;
678   l_rec.fit_additional_tax               := p_fit_additional_tax;
679   l_rec.fit_exempt                       := p_fit_exempt;
680   l_rec.futa_tax_exempt                  := p_futa_tax_exempt;
681   l_rec.medicare_tax_exempt              := p_medicare_tax_exempt;
682   l_rec.ss_tax_exempt                    := p_ss_tax_exempt;
683   l_rec.wage_exempt                      := p_wage_exempt;
684   l_rec.statutory_employee               := p_statutory_employee;
685   l_rec.w2_filed_year                    := p_w2_filed_year;
686   l_rec.supp_tax_override_rate           := p_supp_tax_override_rate;
687   l_rec.excessive_wa_reject_date         := p_excessive_wa_reject_date;
688   l_rec.object_version_number            := p_object_version_number;
689   l_rec.attribute_category               := p_attribute_category;
690   l_rec.attribute1                       := p_attribute1;
691   l_rec.attribute2                       := p_attribute2;
692   l_rec.attribute3                       := p_attribute3;
693   l_rec.attribute4                       := p_attribute4;
694   l_rec.attribute5                       := p_attribute5;
695   l_rec.attribute6                       := p_attribute6;
696   l_rec.attribute7                       := p_attribute7;
697   l_rec.attribute8                       := p_attribute8;
698   l_rec.attribute9                       := p_attribute9;
699   l_rec.attribute10                      := p_attribute10;
700   l_rec.attribute11                      := p_attribute11;
701   l_rec.attribute12                      := p_attribute12;
702   l_rec.attribute13                      := p_attribute13;
703   l_rec.attribute14                      := p_attribute14;
704   l_rec.attribute15                      := p_attribute15;
705   l_rec.attribute16                      := p_attribute16;
706   l_rec.attribute17                      := p_attribute17;
707   l_rec.attribute18                      := p_attribute18;
708   l_rec.attribute19                      := p_attribute19;
709   l_rec.attribute20                      := p_attribute20;
710   l_rec.attribute21                      := p_attribute21;
711   l_rec.attribute22                      := p_attribute22;
712   l_rec.attribute23                      := p_attribute23;
713   l_rec.attribute24                      := p_attribute24;
714   l_rec.attribute25                      := p_attribute25;
715   l_rec.attribute26                      := p_attribute26;
716   l_rec.attribute27                      := p_attribute27;
717   l_rec.attribute28                      := p_attribute28;
718   l_rec.attribute29                      := p_attribute29;
719   l_rec.attribute30                      := p_attribute30;
720   l_rec.fed_information_category         := p_fed_information_category;
721   l_rec.fed_information1                 := p_fed_information1;
722   l_rec.fed_information2                 := p_fed_information2;
723   l_rec.fed_information3                 := p_fed_information3;
724   l_rec.fed_information4                 := p_fed_information4;
725   l_rec.fed_information5                 := p_fed_information5;
726   l_rec.fed_information6                 := p_fed_information6;
727   l_rec.fed_information7                 := p_fed_information7;
728   l_rec.fed_information8                 := p_fed_information8;
729   l_rec.fed_information9                 := p_fed_information9;
730   l_rec.fed_information10                := p_fed_information10;
731   l_rec.fed_information11                := p_fed_information11;
732   l_rec.fed_information12                := p_fed_information12;
733   l_rec.fed_information13                := p_fed_information13;
734   l_rec.fed_information14                := p_fed_information14;
735   l_rec.fed_information15                := p_fed_information15;
736   l_rec.fed_information16                := p_fed_information16;
737   l_rec.fed_information17                := p_fed_information17;
738   l_rec.fed_information18                := p_fed_information18;
739   l_rec.fed_information19                := p_fed_information19;
740   l_rec.fed_information20                := p_fed_information20;
741   l_rec.fed_information21                := p_fed_information21;
742   l_rec.fed_information22                := p_fed_information22;
743   l_rec.fed_information23                := p_fed_information23;
744   l_rec.fed_information24                := p_fed_information24;
748   l_rec.fed_information28                := p_fed_information28;
745   l_rec.fed_information25                := p_fed_information25;
746   l_rec.fed_information26                := p_fed_information26;
747   l_rec.fed_information27                := p_fed_information27;
749   l_rec.fed_information29                := p_fed_information29;
750   l_rec.fed_information30                      := p_fed_information30;
751 
752   --
753   -- Return the plsql record structure.
754   --
755   hr_utility.set_location(' Leaving:'||l_proc, 10);
756   Return(l_rec);
757 End convert_args;
758 --
759 end pay_fed_shd;