1 PACKAGE pay_federal_tax_rule_api AS
2 /* $Header: pyfedapi.pkh 120.3 2007/07/16 02:07:21 ahanda noship $ */
3 /*#
4 * This package contains federal tax rules APIs.
5 * @rep:scope public
6 * @rep:product per
7 * @rep:displayname Federal Tax Rule
8 */
9 --
10 --
11 -- ----------------------------------------------------------------------------
12 -- |----------------------------------< lck >---------------------------------|
13 -- ----------------------------------------------------------------------------
14 -- {Start Of Comments}
15 --
16 -- Description:
17 -- The Lck process for datetrack is complicated and comprises of the
18 -- following processing
19 -- The processing steps are as follows:
20 -- 1) The row to be updated or deleted must be locked.
21 -- By locking this row, the g_old_rec record data type is populated.
22 -- 2) The datetrack mode is then validated to ensure the operation is
23 -- valid. If the mode is valid the validation start and end dates for
24 -- the mode will be derived and returned. Any required locking is
25 -- completed when the datetrack mode is validated.
26 --
27 -- Prerequisites:
28 -- None.
29 --
30 -- In Parameters:
31 -- Name Reqd Type Description
32 -- p_emp_county_tax_rule_id Yes number PK of record
33 -- p_object_version_number Yes number OVN of record
34 -- p_effective_date Yes date Session Date.
35 -- p_datetrack_mode Yes varchar2 Datetrack mode.
36 --
37 -- Post Success:
38 -- On successful completion of the Lck process the row to be updated or
39 -- deleted will be locked and selected into the global data structure
40 -- g_old_rec.
41 --
42 -- Name Type Description
43 -- p_validation_start_date Yes Derived Effective Start Date.
44 -- p_validation_end_date Yes Derived Effective End Date.
45 --
46 -- Post Failure:
47 -- The Lck process can fail for three reasons:
48 -- 1) When attempting to lock the row the row could already be locked by
49 -- another user. This will raise the HR_Api.Object_Locked exception.
50 -- 2) The row which is required to be locked doesn't exist in the HR Schema.
51 -- This error is trapped and reported using the message name
52 -- 'HR_7220_INVALID_PRIMARY_KEY'.
53 -- 3) The row although existing in the HR Schema has a different object
54 -- version number than the object version number specified.
55 -- This error is trapped and reported using the message name
56 -- 'HR_7155_OBJECT_INVALID'.
57 --
58 -- Access Status:
59 -- Public.
60 --
61 -- {End Of Comments}
62 --
63 procedure lck
64 (
65 p_emp_fed_tax_rule_id in number
66 ,p_object_version_number in number
67 ,p_effective_date in date
68 ,p_datetrack_mode in varchar2
69 ,p_validation_start_date out nocopy date
70 ,p_validation_end_date out nocopy date
71 );
72 --
73 -- ----------------------------------------------------------------------------
74 -- |---------------------------< update_fed_tax_rule >------------------------|
75 -- ----------------------------------------------------------------------------
76 --
77 -- {Start Of Comments}
78 /*#
79 * This API update the United States federal level tax details for an employee
80 * assignment.
81 *
82 * It also maintains the associated Workers Compensation entries. This API is
83 * licensed for use with Human Resources.
84 *
85 * <p><b>Licensing</b><br>
86 * This API is licensed for use with Human Resources.
87 *
88 * <p><b>Prerequisites</b><br>
89 * A valid federal tax rule record must exist on the effective date.
90 *
91 * <p><b>Post Success</b><br>
92 * The federal tax rule for the assignment will be updated.
93 *
94 * <p><b>Post Failure</b><br>
95 * The federal tax rule will not be updated and an error will be raised.
96 * @param p_validate If true, then validation alone will be performed and the
97 * database will remain unchanged. If false and all validation checks pass,
98 * then the database will be modified.
99 * @param p_effective_date Determines when the DateTrack operation comes into
100 * force.
101 * @param p_datetrack_update_mode Indicates which DateTrack mode to use when
102 * updating the record. You must set to either UPDATE, CORRECTION,
103 * UPDATE_OVERRIDE or UPDATE_CHANGE_INSERT. Modes available for use with a
104 * particular record depend on the dates of previous record changes and the
105 * effective date of this change.
106 * @param p_emp_fed_tax_rule_id {@rep:casecolumn
107 * PAY_US_EMP_FED_TAX_RULES_F.EMP_FED_TAX_RULE_ID}
108 * @param p_object_version_number Pass in the current version number of the
109 * federal tax rule to be updated. When the API completes, if P_VALIDATE is
110 * false, then set the new version number of the updated federal tax rule. If
111 * P_VALIDATE is true, then set to the same value which was passed in.
112 * @param p_sui_state_code SUI state code.
113 * @param p_additional_wa_amount The additional W4 withholding allowance
114 * amount.
115 * @param p_filing_status_code Filing status code. Valid values are identified
116 * by 'US_FS_nn' where nn is the state code.
117 * @param p_fit_override_amount {@rep:casecolumn
118 * PAY_US_EMP_FED_TAX_RULES_F.FIT_OVERRIDE_AMOUNT}
119 * @param p_fit_override_rate {@rep:casecolumn
120 * PAY_US_EMP_FED_TAX_RULES_F.FIT_OVERRIDE_RATE}
121 * @param p_withholding_allowances W4 withholding allowances.
122 * @param p_cumulative_taxation Cumulative taxation flag. Valid values are
123 * defined by 'YES_NO' lookup type.
124 * @param p_eic_filing_status_code EIC filing status. Valid values are defined
125 * by 'US_EIC_FILING_STATUS' lookup type.
126 * @param p_fit_additional_tax Additional federal income tax.
127 * @param p_fit_exempt Federal income tax exemption flag. Valid values are
128 * defined by 'YES_NO' lookup type.
129 * @param p_futa_tax_exempt FUTA exemption flag. Valid values are defined by
130 * 'YES_NO' lookup type.
131 * @param p_medicare_tax_exempt Medicare exemption flag. Valid values are
132 * defined by 'YES_NO' lookup type.
133 * @param p_ss_tax_exempt SS exemption flag. Valid values are defined by
134 * 'YES_NO' lookup type.
135 * @param p_wage_exempt Wage Reporting exemption flag. Valid values are defined by
136 * 'YES_NO' lookup type.
137 * @param p_statutory_employee Statutory employee flag. Valid values are
138 * defined by 'YES_NO' lookup type.
139 * @param p_w2_filed_year {@rep:casecolumn
140 * PAY_US_EMP_FED_TAX_RULES_F.W2_FILED_YEAR}
141 * @param p_supp_tax_override_rate {@rep:casecolumn
142 * PAY_US_EMP_FED_TAX_RULES_F.SUPP_TAX_OVERRIDE_RATE}
143 * @param p_excessive_wa_reject_date {@rep:casecolumn
144 * PAY_US_EMP_FED_TAX_RULES_F.EXCESSIVE_WA_REJECT_DATE}
145 * @param p_attribute_category This context value determines which flexfield
146 * structure to use with the descriptive flexfield segments.
147 * @param p_attribute1 Descriptive flexfield segment.
148 * @param p_attribute2 Descriptive flexfield segment.
149 * @param p_attribute3 Descriptive flexfield segment.
150 * @param p_attribute4 Descriptive flexfield segment.
151 * @param p_attribute5 Descriptive flexfield segment.
152 * @param p_attribute6 Descriptive flexfield segment.
153 * @param p_attribute7 Descriptive flexfield segment.
154 * @param p_attribute8 Descriptive flexfield segment.
155 * @param p_attribute9 Descriptive flexfield segment.
156 * @param p_attribute10 Descriptive flexfield segment.
157 * @param p_attribute11 Descriptive flexfield segment.
158 * @param p_attribute12 Descriptive flexfield segment.
159 * @param p_attribute13 Descriptive flexfield segment.
160 * @param p_attribute14 Descriptive flexfield segment.
161 * @param p_attribute15 Descriptive flexfield segment.
162 * @param p_attribute16 Descriptive flexfield segment.
163 * @param p_attribute17 Descriptive flexfield segment.
164 * @param p_attribute18 Descriptive flexfield segment.
165 * @param p_attribute19 Descriptive flexfield segment.
166 * @param p_attribute20 Descriptive flexfield segment.
167 * @param p_attribute21 Descriptive flexfield segment.
168 * @param p_attribute22 Descriptive flexfield segment.
169 * @param p_attribute23 Descriptive flexfield segment.
170 * @param p_attribute24 Descriptive flexfield segment.
171 * @param p_attribute25 Descriptive flexfield segment.
172 * @param p_attribute26 Descriptive flexfield segment.
173 * @param p_attribute27 Descriptive flexfield segment.
174 * @param p_attribute28 Descriptive flexfield segment.
175 * @param p_attribute29 Descriptive flexfield segment.
176 * @param p_attribute30 Descriptive flexfield segment.
177 * @param p_fed_information_category {@rep:casecolumn
178 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION_CATEGORY}
179 * @param p_fed_information1 {@rep:casecolumn
180 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION1}
181 * @param p_fed_information2 {@rep:casecolumn
182 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION2}
183 * @param p_fed_information3 {@rep:casecolumn
184 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION3}
185 * @param p_fed_information4 {@rep:casecolumn
186 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION4}
187 * @param p_fed_information5 {@rep:casecolumn
188 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION5}
189 * @param p_fed_information6 {@rep:casecolumn
190 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION6}
191 * @param p_fed_information7 {@rep:casecolumn
192 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION7}
193 * @param p_fed_information8 {@rep:casecolumn
194 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION8}
195 * @param p_fed_information9 {@rep:casecolumn
196 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION9}
197 * @param p_fed_information10 {@rep:casecolumn
198 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION10}
199 * @param p_fed_information11 {@rep:casecolumn
200 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION11}
201 * @param p_fed_information12 {@rep:casecolumn
202 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION12}
203 * @param p_fed_information13 {@rep:casecolumn
204 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION13}
205 * @param p_fed_information14 {@rep:casecolumn
206 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION14}
207 * @param p_fed_information15 {@rep:casecolumn
208 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION15}
209 * @param p_fed_information16 {@rep:casecolumn
210 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION16}
211 * @param p_fed_information17 {@rep:casecolumn
212 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION17}
213 * @param p_fed_information18 {@rep:casecolumn
214 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION18}
215 * @param p_fed_information19 {@rep:casecolumn
216 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION19}
217 * @param p_fed_information20 {@rep:casecolumn
218 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION20}
219 * @param p_fed_information21 {@rep:casecolumn
220 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION21}
221 * @param p_fed_information22 {@rep:casecolumn
222 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION22}
223 * @param p_fed_information23 {@rep:casecolumn
224 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION23}
225 * @param p_fed_information24 {@rep:casecolumn
226 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION24}
227 * @param p_fed_information25 {@rep:casecolumn
228 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION25}
229 * @param p_fed_information26 {@rep:casecolumn
230 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION26}
231 * @param p_fed_information27 {@rep:casecolumn
232 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION27}
233 * @param p_fed_information28 {@rep:casecolumn
234 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION28}
235 * @param p_fed_information29 {@rep:casecolumn
236 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION29}
237 * @param p_fed_information30 {@rep:casecolumn
238 * PAY_US_EMP_FED_TAX_RULES_F.FED_INFORMATION30}
239 * @param p_effective_start_date If P_VALIDATE is false, then set to the
240 * effective start date on the updated federal tax rule row which now exists as
241 * of the effective date. If p_validate is true, then set to null.
242 * @param p_effective_end_date If P_VALIDATE is false, then set to the
243 * effective end date on the updated federal tax rule row which now exists as
244 * of the effective date. If p_validate is true, then set to null.
245 * @rep:displayname Update Federal Tax Rule
246 * @rep:category BUSINESS_ENTITY PAY_EMP_TAX_INFO
247 * @rep:category MISC_EXTENSIONS HR_DATAPUMP
248 * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
249 * @rep:scope public
250 * @rep:lifecycle active
251 * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
252 */
253 --
254 -- {End Of Comments}
255 --
256 procedure update_fed_tax_rule
257 (
258 p_validate IN boolean default false
259 ,p_effective_date IN date
260 ,p_datetrack_update_mode IN varchar2
261 ,p_emp_fed_tax_rule_id IN number
262 ,p_object_version_number IN OUT nocopy number
263 ,p_sui_state_code IN varchar2 default hr_api.g_varchar2
264 ,p_additional_wa_amount IN number default hr_api.g_number
265 ,p_filing_status_code IN varchar2 default hr_api.g_varchar2
266 ,p_fit_override_amount IN number default hr_api.g_number
267 ,p_fit_override_rate IN number default hr_api.g_number
268 ,p_withholding_allowances IN number default hr_api.g_number
269 ,p_cumulative_taxation IN varchar2 default hr_api.g_varchar2
270 ,p_eic_filing_status_code IN varchar2 default hr_api.g_varchar2
271 ,p_fit_additional_tax IN number default hr_api.g_number
272 ,p_fit_exempt IN varchar2 default hr_api.g_varchar2
273 ,p_futa_tax_exempt IN varchar2 default hr_api.g_varchar2
274 ,p_medicare_tax_exempt IN varchar2 default hr_api.g_varchar2
275 ,p_ss_tax_exempt IN varchar2 default hr_api.g_varchar2
276 ,p_wage_exempt IN varchar2 default hr_api.g_varchar2
277 ,p_statutory_employee IN varchar2 default hr_api.g_varchar2
278 ,p_w2_filed_year IN number default hr_api.g_number
279 ,p_supp_tax_override_rate IN number default hr_api.g_number
280 ,p_excessive_wa_reject_date IN date default hr_api.g_date
281 ,p_attribute_category in varchar2 default hr_api.g_varchar2
282 ,p_attribute1 in varchar2 default hr_api.g_varchar2
283 ,p_attribute2 in varchar2 default hr_api.g_varchar2
284 ,p_attribute3 in varchar2 default hr_api.g_varchar2
285 ,p_attribute4 in varchar2 default hr_api.g_varchar2
286 ,p_attribute5 in varchar2 default hr_api.g_varchar2
287 ,p_attribute6 in varchar2 default hr_api.g_varchar2
288 ,p_attribute7 in varchar2 default hr_api.g_varchar2
289 ,p_attribute8 in varchar2 default hr_api.g_varchar2
290 ,p_attribute9 in varchar2 default hr_api.g_varchar2
291 ,p_attribute10 in varchar2 default hr_api.g_varchar2
292 ,p_attribute11 in varchar2 default hr_api.g_varchar2
293 ,p_attribute12 in varchar2 default hr_api.g_varchar2
294 ,p_attribute13 in varchar2 default hr_api.g_varchar2
295 ,p_attribute14 in varchar2 default hr_api.g_varchar2
296 ,p_attribute15 in varchar2 default hr_api.g_varchar2
297 ,p_attribute16 in varchar2 default hr_api.g_varchar2
298 ,p_attribute17 in varchar2 default hr_api.g_varchar2
299 ,p_attribute18 in varchar2 default hr_api.g_varchar2
300 ,p_attribute19 in varchar2 default hr_api.g_varchar2
301 ,p_attribute20 in varchar2 default hr_api.g_varchar2
302 ,p_attribute21 in varchar2 default hr_api.g_varchar2
303 ,p_attribute22 in varchar2 default hr_api.g_varchar2
304 ,p_attribute23 in varchar2 default hr_api.g_varchar2
305 ,p_attribute24 in varchar2 default hr_api.g_varchar2
306 ,p_attribute25 in varchar2 default hr_api.g_varchar2
307 ,p_attribute26 in varchar2 default hr_api.g_varchar2
308 ,p_attribute27 in varchar2 default hr_api.g_varchar2
309 ,p_attribute28 in varchar2 default hr_api.g_varchar2
310 ,p_attribute29 in varchar2 default hr_api.g_varchar2
311 ,p_attribute30 in varchar2 default hr_api.g_varchar2
315 ,p_fed_information3 in varchar2 default hr_api.g_varchar2
312 ,p_fed_information_category in varchar2 default hr_api.g_varchar2
313 ,p_fed_information1 in varchar2 default hr_api.g_varchar2
314 ,p_fed_information2 in varchar2 default hr_api.g_varchar2
316 ,p_fed_information4 in varchar2 default hr_api.g_varchar2
317 ,p_fed_information5 in varchar2 default hr_api.g_varchar2
318 ,p_fed_information6 in varchar2 default hr_api.g_varchar2
319 ,p_fed_information7 in varchar2 default hr_api.g_varchar2
320 ,p_fed_information8 in varchar2 default hr_api.g_varchar2
321 ,p_fed_information9 in varchar2 default hr_api.g_varchar2
322 ,p_fed_information10 in varchar2 default hr_api.g_varchar2
323 ,p_fed_information11 in varchar2 default hr_api.g_varchar2
324 ,p_fed_information12 in varchar2 default hr_api.g_varchar2
325 ,p_fed_information13 in varchar2 default hr_api.g_varchar2
326 ,p_fed_information14 in varchar2 default hr_api.g_varchar2
327 ,p_fed_information15 in varchar2 default hr_api.g_varchar2
328 ,p_fed_information16 in varchar2 default hr_api.g_varchar2
329 ,p_fed_information17 in varchar2 default hr_api.g_varchar2
330 ,p_fed_information18 in varchar2 default hr_api.g_varchar2
331 ,p_fed_information19 in varchar2 default hr_api.g_varchar2
332 ,p_fed_information20 in varchar2 default hr_api.g_varchar2
333 ,p_fed_information21 in varchar2 default hr_api.g_varchar2
334 ,p_fed_information22 in varchar2 default hr_api.g_varchar2
335 ,p_fed_information23 in varchar2 default hr_api.g_varchar2
336 ,p_fed_information24 in varchar2 default hr_api.g_varchar2
337 ,p_fed_information25 in varchar2 default hr_api.g_varchar2
338 ,p_fed_information26 in varchar2 default hr_api.g_varchar2
339 ,p_fed_information27 in varchar2 default hr_api.g_varchar2
340 ,p_fed_information28 in varchar2 default hr_api.g_varchar2
341 ,p_fed_information29 in varchar2 default hr_api.g_varchar2
342 ,p_fed_information30 in varchar2 default hr_api.g_varchar2
343 ,p_effective_start_date OUT nocopy date
344 ,p_effective_end_date OUT nocopy date
345 );
346
347 --
348 end pay_federal_tax_rule_api;