DBA Data[Home] [Help]

PACKAGE: APPS.PAY_US_REPORTING_UTILS_PKG

Source


1 package pay_us_reporting_utils_pkg AUTHID CURRENT_USER as
2 /* $Header: pyusmref.pkh 120.7 2011/11/10 14:55:32 sgotlasw ship $  */
3  /*===========================================================================+
4  |               Copyright (c) 2001 Oracle Corporation                        |
5  |                  Redwood Shores, California, USA                           |
6  |                       All rights reserved.                                 |
7  +============================================================================+
8   Name
9     pay_us_reporting_utils_pkg
10 
11   Purpose
12     The purpose of this package is to support the generation of magnetic tape W2
13     reports for US legilsative requirements incorporating magtape resilience
14     and the new end-of-year design. New Functions will support the Year end
15     reporting in MMREF format initially and will be extended to have more
16     format.
17 
18   Notes
19 
20   History
21    24-JUL-01 fusman        40.0       created
22    02-Nov-01 fusman        40.1       Added two new functions
23                                       Character_check and Formula_check.
24    26-Nov-01 fusman        115.3      Added dbdrv command.
25    10-feb-02 djoshi	   115.4      changed dbdrv command
26    03-Sep-02 ppanda        115.6      function named get_file_name added to
27                                       fix Bug # 2397313
28    19-Jan-03 ppanda        115.7      A new function added to get live balance
29                                       This function currently used for MA W2 Mag
30                                       Function name is get_live_ee_contrib
31    10-Nov-04 meshah        115.8      added function get_ff_archive_value
32    07-Nov-05 sudedas       115.11     Added 2 optional input parameters to
33                                       format_record function.
34    17-Feb-06 sudedas       115.12     Added Functions Get_Employee_Count and Get_Total_Wages
35   30-May-06 sackumar     115.113   Added Functions Get_Employee_Count_Monthwise and Get_Wages.
36 						    Bug 5089997.
37    17-Aug-06 sudedas       115.14     Added 2 Optional Input Parameters to
38                                       Format_Record : p_input_43, p_input_44
39                                       (Bug# 5256745)
40    22-Nov-06 sudedas       115.15     Added 2 Optional Input Parameters to
41                                       Get_Total_Wages (p_report_type, p_balance_name)
42                                       to use this Function in W2 as well (Bug# 5640748)
43    10-Nov-11 sgotlasw      115.17     Added Optional Input Parameter to
44                                       Format_Record : p_input_45 (Bug# 13351713)
45  ============================================================================*/
46  -- Global Variable
47 
48     g_number	NUMBER;
49 
50  -- Used by Magnetic W2 (MMREF  format).
51  /* ============================================================================ */
52 /* Function Name : calculate_balance
53    Purpose       : Purpose of this function is is to provide calculation
54                    of Derived balnces that are used in the formula
55    Error checking
56 
57    Special Note  :
58 
59 
60 */
61 
62 FUNCTION calculate_balance(
63                    p_effective_date         IN varchar2,
64                    p_balance_name           IN varchar2,
65                    p_report_type            IN varchar2,
66                    p_format                 IN varchar2,
67                    p_report_qualifier       IN varchar2,
68                    p_record_name            IN varchar2,
69                    p_input_1                IN varchar2,
70                    p_input_2                IN varchar2,
71                    p_input_3                IN varchar2,
72                    p_input_4                IN varchar2,
73                    p_input_5                IN varchar2,
74                    p_input_6                IN varchar2,
75                    p_input_7                IN varchar2,
76                    p_input_8                IN varchar2,
77                    p_input_9                IN varchar2,
78                    p_input_10               IN varchar2,
79                    p_input_11               IN varchar2,
80                    p_input_12               IN varchar2,
81                    p_input_13               IN varchar2,
82                    p_input_14               IN varchar2,
83                    p_input_15               IN varchar2,
84                    p_validate               IN  varchar2,
85                    p_exclude_from_output    out nocopy varchar2,
86                    sp_out_1                 out nocopy varchar2,
87                    sp_out_2                 out nocopy varchar2,
88                    sp_out_3                 out nocopy varchar2,
89                    sp_out_4                 out nocopy varchar2,
90                    sp_out_5                 out nocopy varchar2)
91 RETURN number;
92 
93  -- Used by Magnetic W2 (MMREF  format).
94  /* ============================================================================ */
95 /* Function Name : calculate_wages
96    Purpose       : Purpose of this function is is to provide calculation
97                    of wages that are used in the formula
98    Error checking
99 
100    Special Note  :
101 
102 
103 */
104 
105 
106 FUNCTION calculate_wages(
107                    p_effective_date        IN varchar2,
108                    p_wage_name             IN varchar2,
109                    p_report_type           IN varchar2,
110                    p_format                IN varchar2,
111                    p_report_qualifier      IN varchar2,
112                    p_record_name           IN varchar2,
113                    p_input_1               IN varchar2,
114                    p_gross                 IN varchar2,
115                    p_subject               IN varchar2,
116                    p_subject_nw            IN varchar2,
117                    p_pretax_redns          IN varchar2,
118                    p_taxable               IN varchar2,
119                    p_validate              IN  varchar2,
120                    p_exclude_from_output   out nocopy varchar2,
121                    sp_exempt               out nocopy varchar2,
122                    sp_reduced_sub          out nocopy varchar2,
123                    sp_excess               out nocopy varchar2,
124                    sp_reduced_sub_wh       out nocopy varchar2,
125                    sp_out_1                out nocopy varchar2)
126 RETURN number;
127 
128 
129 
130 
131 /*
132     Name       :   get_item_data
133 
134     Purpors    : Purpose of this function is  to get live
135                  data from the System.This can be replace
136                  Call to live database items where error
137                  chekcing is required
138    Error checking
139 
140    Special Note  :
141 
142 
143 */
144 
145 FUNCTION get_item_data(
146                    p_assignment_id            number, -- context
147                    p_date_earned              date, -- context
148                    p_tax_unit_id              number,-- context
149                    p_effective_date       IN  varchar2,
150                    p_item_name            IN  varchar2,
151                    p_report_type          IN  varchar2,
152                    p_format               IN  varchar2,
153                    p_report_qualifier     IN  varchar2,
154                    p_record_name          IN  varchar2,
155                    p_input_1              IN  varchar2,
156                    p_input_2              IN  varchar2,
157                    p_input_3              IN  varchar2,
158                    p_input_4              IN  varchar2,
159                    p_input_5              IN  varchar2,
160                    p_validate             IN  varchar2,
161                    p_exclude_from_output  OUT nocopy varchar2,
162                    sp_out_1               OUT nocopy varchar2,
163                    sp_out_2               OUT nocopy varchar2,
164                    sp_out_3               OUT nocopy varchar2,
165                    sp_out_4               OUT nocopy varchar2,
166                    sp_out_5               OUT nocopy varchar2,
167                    sp_out_6               OUT nocopy varchar2,
168                    sp_out_7               OUT nocopy varchar2,
169                    sp_out_8               OUT nocopy varchar2,
170                    sp_out_9               OUT nocopy varchar2,
171                    sp_out_10              OUT nocopy varchar2
172                  )
173 RETURN varchar2;
174 
175 /* Function Name : print_record_header
176    Purpose       : Function will return the String for header
177                    or title line for the Table or table heading
178                    related to record for printing in audit files
179 
180    Error checking
181 
182    Special Note  :
183 
184 
185 */
186 
187 FUNCTION print_record_header(
188                    p_effective_date       IN  varchar2,
189                    p_report_type          IN  varchar2,
190                    p_format               IN  varchar2,
191                    p_report_qualifier     IN  varchar2,
192                    p_record_name          IN  varchar2,
193                    p_input_1              IN  varchar2,
194                    p_input_2              IN  varchar2,
195                    p_input_3              IN  varchar2,
196                    p_input_4              IN  varchar2,
197                    p_input_5              IN  varchar2,
198                    p_validate             IN  varchar2,
199                    p_exclude_from_output  OUT nocopy varchar2,
200                    sp_out_1               OUT nocopy varchar2,
201                    sp_out_2               OUT nocopy varchar2,
202                    sp_out_3               OUT nocopy varchar2,
203                    sp_out_4               OUT nocopy varchar2,
204                    sp_out_5               OUT nocopy varchar2,
205                    sp_out_6               OUT nocopy varchar2,
206                    sp_out_7               OUT nocopy varchar2,
207                    sp_out_8               OUT nocopy varchar2,
208                    sp_out_9               OUT nocopy varchar2,
209                    sp_out_10              OUT nocopy varchar2
210                  )
211 RETURN varchar2;
212 
213 
214 
215 /*
216    Name            : data_validation
217                    : Function will validate data for any
218                      database items or can change the data
219                      based on the parameters. It should
220                      be capable of having special data
221                      validation and change function.
222 
223    Error checking
224 
225    Special Note  :
226 
227 */
228 
229 FUNCTION data_validation(
230                    p_effective_date       IN  varchar2,
231                    p_report_type          IN  varchar2,
232                    p_format               IN  varchar2,
233                    p_report_qualifier     IN  varchar2,
234                    p_record_name          IN  varchar2,
235                    p_input_1              IN  varchar2,
236                    p_input_2              IN  varchar2,
237                    p_input_3              IN  varchar2,
238                    p_input_4              IN  varchar2,
239                    p_input_5              IN  varchar2,
240                    p_validate             IN  varchar2,
241                    p_exclude_from_output  OUT nocopy varchar2,
242                    sp_out_1               OUT nocopy varchar2,
243                    sp_out_2               OUT nocopy varchar2
244                  )
245 return varchar2;
246 
247 
248 
249 /* Function Name : format_record
250    Purpose       : Function will return formating of the record
251                    there will be one function per record
252    Error checking
253 
254    Special Note  :
255 
256 
257 */
258 
259 
260 FUNCTION format_record(
261                    p_effective_date       IN  varchar2,
262                    p_report_type          IN  varchar2,
263                    p_format               IN  varchar2,
264                    p_report_qualifier     IN  varchar2,
265                    p_record_name          IN  varchar2,
266                    p_input_1              IN  varchar2,
267                    p_input_2              IN  varchar2,
268                    p_input_3              IN  varchar2,
269                    p_input_4              IN  varchar2,
270                    p_input_5              IN  varchar2,
271                    p_input_6              IN  varchar2,
272                    p_input_7              IN  varchar2,
273                    p_input_8              IN  varchar2,
274                    p_input_9              IN  varchar2,
275                    p_input_10             IN  varchar2,
276                    p_input_11             IN  varchar2,
277                    p_input_12             IN  varchar2,
278                    p_input_13             IN  varchar2,
279                    p_input_14             IN  varchar2,
280                    p_input_15             IN  varchar2,
281                    p_input_16             IN  varchar2,
282                    p_input_17             IN  varchar2,
283                    p_input_18             IN  varchar2,
284                    p_input_19             IN  varchar2,
285                    p_input_20             IN  varchar2,
286                    p_input_21             IN  varchar2,
287                    p_input_22             IN  varchar2,
288                    p_input_23             IN  varchar2,
289                    p_input_24             IN  varchar2,
290                    p_input_25             IN  varchar2,
291                    p_input_26             IN  varchar2,
292                    p_input_27             IN  varchar2,
293                    p_input_28             IN  varchar2,
294                    p_input_29             IN  varchar2,
295                    p_input_30             IN  varchar2,
296                    p_input_31             IN  varchar2,
297                    p_input_32             IN  varchar2,
298                    p_input_33             IN  varchar2,
299                    p_input_34             IN  varchar2,
300                    p_input_35             IN  varchar2,
301                    p_input_36             IN  varchar2,
302                    p_input_37             IN  varchar2,
303                    p_input_38             IN  varchar2,
304                    p_input_39             IN  varchar2,
305                    p_input_40             IN  varchar2,
306                    p_validate             IN  varchar2,
307                    p_exclude_from_output  OUT nocopy varchar2,
308                    sp_out_1               OUT nocopy varchar2,
309                    sp_out_2               OUT nocopy varchar2,
310                    sp_out_3               OUT nocopy varchar2,
311                    sp_out_4               OUT nocopy varchar2,
312                    sp_out_5               OUT nocopy varchar2,
313                    ret_str_len            OUT nocopy number,
314                    p_input_41             IN  varchar2 default null,
315                    p_input_42             IN  varchar2 default null,
316                    p_input_43             IN  varchar2 default null,
317                    p_input_44             IN  varchar2 default null,
318                    p_input_45             IN  varchar2 default null /* Bug 13351713 */
319                  )
320 
321 return varchar2;
322 /* End of Function format_record */
323 
324 
325 
326 /* Function Name : Get_Territory_Values
327    Purpose       :  Purpose of this function is to fetch the balances as well
328                     as the data related to territory.
329    Error checking
330 
331    Special Note  :
332 
333 
334 */
335 
336 
337 FUNCTION Get_Territory_Values(
338                    p_assignment_action_id     number, -- context
339                    p_tax_unit_id              number,-- context
340                    p_effective_date       IN  varchar2,
341                    p_report_type          IN  varchar2,
342                    p_format               IN  varchar2,
346                    p_input_2              IN  varchar2,
343                    p_report_qualifier     IN  varchar2,
344                    p_record_name          IN  varchar2,
345                    p_input_1              IN  varchar2,
347                    p_input_3              IN  varchar2,
348                    p_input_4              IN  varchar2,
349                    p_input_5              IN  varchar2,
350                    p_validate             IN  varchar2,
351                    p_exclude_from_output  OUT nocopy varchar2,
352                    sp_out_1               OUT nocopy varchar2,
353                    sp_out_2               OUT nocopy varchar2,
354                    sp_out_3               OUT nocopy varchar2,
355                    sp_out_4               OUT nocopy varchar2,
356                    sp_out_5               OUT nocopy varchar2,
357                    sp_out_6               OUT nocopy varchar2,
358                    sp_out_7               OUT nocopy varchar2,
359                    sp_out_8               OUT nocopy varchar2,
360                    sp_out_9               OUT nocopy varchar2,
361                    sp_out_10              OUT nocopy varchar2)
362 return varchar2;
363 
364 FUNCTION CHARACTER_CHECK(p_value IN varchar2)
365 return varchar2;
366 
367 FUNCTION Formula_Check(p_report_format IN VARCHAR2,
368                        p_formula_name  IN VARCHAR2)
369 return varchar2;
370 --
371 -- Purpose: This function used to derive the Mag file Name for following Magnetic media report
372 --          processes.
373 --               1. Federal W-2 Magnetic Media
374 --               2. State W-2 Magnetic Media
375 --               3. State Quarterly Wage Listing
376 --
377 FUNCTION get_file_name
378    ( p_bus_group_id       IN Number,    -- Business Group Id
379      p_report_type        IN Varchar2,  -- W2, SQWL
380      p_state_code         IN Varchar2,  -- FED or State Code
381      p_mag_effective_date IN Varchar2,  -- This would be used to derive period
382      p_format_type        IN Varchar2   -- I=ICESA, M=MMREF, T=TIB4, S=State
383    ) RETURN varchar2;
384 --PRAGMA RESTRICT_REFERENCES(get_file_name, WNDS,WNPS);
385 
386 FUNCTION get_live_ee_contrib( p_assignment_action_id      number,      --context
387                               p_tax_unit_id               number       --context
388                             ) RETURN VARCHAR2;
389 
390 FUNCTION get_ff_archive_value (
391       p_action_id           NUMBER,   -- context
392       p_jurisdiction_code   VARCHAR2, -- context
393       p_tax_unit_id         NUMBER,   -- context
394       p_data_type           VARCHAR2
395    )
396       RETURN NUMBER;
397 
398 /* Function Name : Get_Employee_Count
399    Purpose       : Purpose of this function is to get the Number of Employees
400                    for each Employer (Tax Unit ID). Created for getting data in SQWL Output.
401 
402    Special Note  :
403 
404 */
405 
406 FUNCTION get_employee_count( p_payroll_action_id   number,  --context
407                              p_tax_unit_id         number,  --context
408                              p_state               varchar2 default null
409                             ) RETURN number ;
410 
411 /* Function Name : Get_Total_Wages
412    Purpose       : Purpose of this function is to get the Total Wages (State Specific)
413                    to be reported in SQWL Magtape.
414 
415    Special Note  :
416 
417 */
418 
419 FUNCTION get_total_wages( p_payroll_action_id   number,  --context
420                           p_tax_unit_id         number,  --context
421                           p_state               varchar2,
422                           -- Following Parameters have been Added later to use it in SQWL as well as W2
423                           p_report_type         varchar2 default 'SQWL',
424                           p_balance_name        varchar2 default null
425                          ) RETURN number ;
426 
427 /* Function Name : get_wages
428    Purpose       : Purpose of this function is to get the Excess Wages (State Specific),
429                    total withholding, total workers compensation.
430 
431    Special Note  :
432 
433 */
434 
435 function get_wages(p_payroll_action_id   number,  --context
436                    p_tax_unit_id         number,  --context
437                    p_state               varchar2,
438                    p_excess_wages out nocopy number,
439                    p_withholding out nocopy number,
440                    p_workerscomp out nocopy number
441                   )return number;
442 
443 /* Function Name : get_sui_wages
444    Purpose       : this will return the SUI wages
445 */
446 
447 function get_sui_wages(p_payroll_action_id   number,  --context
448                    p_tax_unit_id         number,  --context
449                    p_state               varchar2,
450                    p_sui_gross out nocopy number,
451                    p_sui_subj out nocopy number,
452                    p_sui_pre_tax out nocopy number,
453                    p_sui_taxable out nocopy number
454                   )return number;
455 
456 /* Function Name : Get_Employee_Count_Monthwise
457    Purpose       : Purpose of this function is to get the Number of Employees
458                    for each Employer (Tax Unit ID). Created for getting data in SQWL Output.
459 
460    Special Note  :
461 
462 */
463 FUNCTION get_employee_count_monthwise( p_payroll_action_id   number,  --context
464                              p_tax_unit_id         number,  --context
465                              p_database_item_name             varchar2
466                             ) RETURN number ;
467 
468 END pay_us_reporting_utils_pkg;