DBA Data[Home] [Help]

PACKAGE: APPS.PAY_AU_TERMINATIONS

Source


1 PACKAGE pay_au_terminations AUTHID CURRENT_USER AS
2 /*  $Header: pyauterm.pkh 120.17.12020000.4 2013/01/11 04:03:30 skshin ship $ */
3 /*
4 **
5 **  Copyright (c) 1999 Oracle Corporation
6 **  All Rights Reserved
7 **
8 **  Procedures and functions used in AU terminations version 2
9 **
10 **  Change List
11 **  ===========
12 **
13 **  Date        Author   Reference Description
14 **  ====================================================
15 **  14-AUG-2000 sclarke  115.0     Created for AU
16 **  12-SEP-2000 sclarke  115.0     Added processed function
17 **  27-SEP-2000 sclarke  115.1     Added LSL function
18 **  04-DEC-2000 sclarke  115.2     Bug 1519569 rounding of deductions on marginal tax
19 **  15-DEC-2000 sclarke  115.3     Bug 1544503
20 **
21 **  ============== Formula Fuctions ====================
22 **  Package containing addition processing required by
23 **  terminations module in AU localisatons.
24 **  28-NOV-2001  nnaresh 115.4     Updated for GSCC Standards
25 **  04-DEC-2002 Ragovind 115.6     Added NOCOPY for the functions check_rollover, etp_prepost_ratios,
26 **                 get_long_service_leave, term_lsl_eligibility_years
27 **  15-May-2003 Ragovind 115.7     Bug#2819479 - ETP Pre/Post Enhancement
28 **  23-Jul-2003 Nanuradh 115.8     Bug#2984390 - ETP Pre/post Enhancement - Added an extra parameter p_etp_service_date
29 **                                 to the function etp_prepost_ratios
30 **  10-May-2003 Ragovind 115.9     Bug#3263690 - NGE calculation Enhancement.
31 **  09-AUG-2004 abhkumar 115.10    Bug#2610141 - Legal Employer enhancement changes.
32 **  08-SEP-2004 abhkumar 115.11    Bug#2610141 - Added a parameter to function calculate_term_asg_nge to support the
33 **                 versioning of the tax formula.
34 **  22-APR-2004 ksingla  115.12    Bug#4177679 - Added a new parameter to the function etp_prepost_ratios.
35 **  05-AUG-2005 abhkumar 115.13    Bug#4538463 - Added a parameter to function calculate_term_asg_nge
36 **  01-SEP-2005 abhkumar 115.14    Bug#4474896 - Average Earnings Calculation enhancement
37 **  02-Apr-2006 abhargav 115.15    Bug#5107059 - Added new function get_total_accrual_hours().
38 **  27-Jun-2006 hnainani 115.16   Bug# 5056831 - Added Function Override_eligibility
39 **
40 ** 21-Sep-2006  hnainani 115.24    Bug# 5056831  - Removed extra param to Override_eligibility based
41 **                                              on review comments
42 ** 09-May-2007  priupadh 115.25    Bug# 5956223  Added new function calculate_etp_tax,get_trans_prev_etp
43 ** 16-May-2007  priupadh 115.26    Bug# 5956223  Removed function get_trans_prev_etp, added get_fin_year_end
44 ** 31-May-2007  priupadh 115.27    Bug# 6071863  Added function get_prev_age
45 ** 23-Aug-2007  priupadh 115.28    Bug# 6192381  Added function au_check_trans
46 ** 30-Jul-2009  skshin   115.23    Bug# 8725341  Added Earnings_Leave_Loading balance to c_get_ytd_def_bal_ids cursor
47 ** 07-Sep-2009  pmatamsr 115.24    Bug# 8769345  Added new input parameter to check_rollover function.
48 ** 06-Oct-2010  skshin   115.26    Bug# 9775171  Added calculate_etp_lumpsum_d_2010 and calculate_etp_tax_2010 functions
49 ** 16-Nov-2010  avenkatk 115.28    Bug #9950136  Added changes for foreign workers accruals - added function get_foreign_accrual
50 ** 24-Nov-2010  skshin   115.29    Bug #10212532 Added function get_days_ppl_suspended to calculate suspended days of PPL for ETP calculation
51 ** 20-Jul-2011  skshin   115.30    Bug #12583457 Added function au_count_etps_sil to count ETP on Termination with Salary in Lieu of Notice input value entered
52 ** 05-Sep-2012  skshin   115.31    Bug #14358180 Added new functions of calculate_etp_lumpsum_d_2012 and calculate_etp_lumpsum_d_2012
53 ** 19-Nov-2012  skshin   115.32    Bug #15846744 Added new record type to hold lump sum D value and assignment_id
54 ** 11-Jan-2013  skshin   115.33    Bug #15852244 Added new parameters to calculate_etp_tax_2012
55 */
56 
57    /* 15846744 */
58     type t_lump_sum_d is record (assignment_id number, value number);
59     g_lump_sum_d t_lump_sum_d;
60 
61   --
62   -------------------------------------------------------------------------------------------------
63   --
64   -- FUNCTION get_long_service_leave
65   --
66   -- Returns :
67   --           1 if function runs successfully
68   --           0 otherwise
69   --
70   -- Purpose : Calculates net amount of long service leave accrual plan and breaks the
71   --           amounts into the appropriate time buckets as required for Terminations
72   --           tax calculations.  Days suspended is taken into account by using the accrual
73   --           fastformula.
74   --
75   -- In :      p_assignment_id     - assignment which is enrolled in the accrual plan
76   --           p_payroll_id        - payroll to which the assignment is enrolled
77   --           p_business_group_id
78   --           p_effective_date    - date up to which accrual is to be calculated
79   --
80   -- Out :     p_pre_aug_1978      - net leave amount before from start of accrual plan to 15-AUG-1978
81   --           p_post_aug_1978     - net leave amount from 16-AUG-1978 to 17-AUG-1993
82   --           p_post_aug_1993     - net leave amount from 18-AUG-1993 until effective_date
83   --
84   -- Uses :    per_accrual_calc_functions
85   --           pay_au_terminations
86   --           hr_utility
87   --
88   ------------------------------------------------------------------------------------------------
89   function get_long_service_leave
90   (p_assignment_id        in  number
91   ,p_payroll_id           in  number
92   ,p_business_group_id    in  number
93   ,p_effective_date       in  date
94   ,p_pre_aug_1978         out NOCOPY number
95   ,p_post_aug_1978        out NOCOPY number
96   ,p_post_aug_1993        out NOCOPY number
97   ) return number;
98   --
99   --
100 
101 /* Bug# 5056831 */
102 --------------------------------------------------------------------------------------
103   -- Function  override_elig
104   --
105   -- Returns 'Y' if the element entry has already been prorated in a payroll
106   -- run. Used by the PAYAUTRM form views
107   --
108   function override_elig
109   (p_element_entry_id      number
110   ,p_input_value_id       number
111   , p_effective_date      date)
112   return varchar2;
113   --
114 
115   --------------------------------------------------------------------------------------
116   -- Function processed
117   --
118   -- Returns 'Y' if the element entry has already been processed in a payroll
119   -- run. Used by the PAYAUTRM form views
120   --
121   function processed
122   (p_element_entry_id      number
123   ,p_original_entry_id     number
124   ,p_processing_type       varchar2
125   ,p_entry_type            varchar2
126   ,p_effective_date        date)
127   return varchar2;
128   --
129   ---------------------------------------------------------------------
130   -- Function get_accrual_plan_by_category
131   --
132   -- RETURNS: accrual_plan_id if successful, 0 otherwise
133   --
134   -- PURPOSE: To retrieve accrual plan id for designated category, copy
135   --          of hr_au_holidays equivalent except that when no accrual
136   --          plan is found return 0, this is to allow for casual employees
137   --          who do not have accrual plans and are not supposed to be paid
138   --          for such on termination.
139   --
140   -- IN:      assignment_id
141   --          effective_date
142   --          accrual plan category - annual leave or long service leave
143   -- OUT:
144   --
145   --
146   -- USES:  hr_utility
147   --        hr_au_holidays
148   --
149   function get_accrual_plan_by_category
150   (p_assignment_id    in    number
151   ,p_effective_date   in    date
152   ,p_plan_category    in    varchar2)
153   return number;
154   --
155   ------------------------------------------------------------
156   -- Function calculate_marginal_tax
157   --
158   -- RETURNS: marginal tax deduction for termination
159   --
160   -- PURPOSE: used by formula function to calculate termination marginal rate tax deduction
161   --
162   -- IN:        p_date_earned - passed as a context
163   --            p_tax_variation_type - tax variation, percentage, marginal, fixed etc
164   --            p_tax_variation_amount - holds amount for tax variation type
165   --            p_gross_termination_amount - gross termination earnings
166   --            p_average_pay - average earnings
167   --            p_normal_amount - earnings to be taxed
168   --            p_a_variable - variable used in marginal rate formula
169   --            p_b_variabel - variable used in marginal rate formula
170   --            p_pay_frequency - frequency of payroll used by formula to convert back to period amount
171   -- OUT:
172   --
173   --
174   -- USES:  hr_utility
175   --        hr_au_holidays
176   --
177   function calculate_marginal_tax
178   (p_date_earned                  in date
179   ,p_tax_variation_type          in varchar2
180   ,p_tax_variation_amount        in number
181   ,p_gross_termination_amount    in number
182   ,p_average_pay                 in number
183   ,p_a_variable1                 in number
184   ,p_b_variable1                 in number
185   ,p_a_variable2                 in number
186   ,p_b_variable2                 in number
187   ,p_pay_freq                    in number
188   ,p_tax_scale                   in number
189   ) return number;
190   --
191   ---------------------------------------------------
192   --
193   -- Function max_etp_tax_free
194   --
195   -- Calculates the maximum allowable amount of the
196   -- ETP payment components which can be free of tax
197   --
198   -- RETURNS: maximum tax free amount
199   --
200   -- USES:    hr_utility
201   --
202   function max_etp_tax_free
203   (p_years_of_service           in  number
204   ,p_lump_d_tax_free            in  number
205   ,p_lump_d_service_increment   in  number
206   )
207   return number;
208   --
209   ---------------------------------------------------
210   --
211   -- Function check_rollover
212   --
213   -- Checks to see if the user has entered a rollover
214   -- amount which will exceed the maximum allowable
215   --
216   -- RETURNS: 1 if amount is OK
217   --          0 if amount exceeds limit
218   --          message for error
219   --
220   -- USES:    hr_utility
221   --
222   function check_rollover
223   (p_rollover_amount            in   number
224   ,p_maximum_rollover           in   number
225   ,p_message                    out  NOCOPY varchar2
226   ,p_etp_component              in   varchar2 default 'Taxable'
227   )
228   return number;
229   --
230   --------------------------------------------------
231   --
232   -- Function etp_prepost_ratios
233   --
234   -- Calculates the pre 01 July 1983 ratio for calculation of ETP
235   -- and the post 30 Jun 1983 ratio for calculation ETP
236   --
237   -- RETURNS:
238   --
239   -- IN:      p_assignment_id - assignment
240   --          p_hire_date - date employee started work
241   --          p_termination_date - date employee ends employment
242   --
243   -- OUT:     p_pre01jul1983_ratio - ratio to use when calculating the pre 01 July 1983 portion of ETP
244   --          p_post30jun1983_ratio - ratio to use when calculating the post 30 June 1983 portion of ETP
245   --
246   -- USES:    hr_utility
247   --
248   --
249   function etp_prepost_ratios
250   (p_assignment_id              in  number
251   ,p_hire_date                  in  date
252   ,p_termination_date           in  date
253   ,p_term_form_called           in  varchar2   -- Bug#2819479
254   ,p_pre01jul1983_days          out NOCOPY number
255   ,p_post30jun1983_days         out NOCOPY number
256   ,p_pre01jul1983_ratio         out NOCOPY number
257   ,p_post30jun1983_ratio        out NOCOPY number
258   ,p_etp_service_date       out NOCOPY date  /* Bug#2984390 */
259   ,p_le_etp_service_date        out NOCOPY date     /* Bug 4177679 */
260   )
261   return number;
262 
263 
264   --
265   --------------------------------------------------
266   --
267   -- Function term_lsl_eligibility_years
268   --
269   -- gets the number of years a person must have worked
270   -- before they become eiligible to recieve payment for
271   -- long service leave upon termination of employment
272   --
273   -- RETURNS: 1 if successful, 0 otherwise
274   --
275   -- IN:      p_date_earned - context passed in form payroll run
276   --          p_accrual_plan_id - id of the particular long service leave accrual plan
277   --
278   -- OUT:     p_eligibility_years - number of years until eligible
279   --
283   function term_lsl_eligibility_years
280   -- USES:    hr_utility
281   --
282   --
284   (p_date_earned                  in date
285   ,p_accrual_plan_id              in number
286   ,p_eligibility_years            out NOCOPY number
287   )
288   return number;
289   --
290 
291   /*
292   Bug#3263690 - NGE calculation Enhancement
293   Function Declaration
294   */
295   function calculate_term_asg_nge
296     ( p_assignment_id       in per_all_assignments_f.assignment_id%TYPE,
297       p_business_group_id   in hr_all_organization_units.organization_id%TYPE,
298       p_date_earned         in date,
299       p_tax_unit_id         in hr_all_organization_units.organization_id%TYPE,
300       p_assignment_action_id IN number, /*Bug 4538463*/
301       p_payroll_id IN NUMBER, /*Bug 4538463*/
302       p_termination_date    in date,
303       p_hire_date       in date,
304       p_period_start_date   in date,
305       p_period_end_date     in date,
306       p_case            out NOCOPY varchar2,
307       p_earnings_standard   out     NOCOPY number, /*Bug# 4474896*/
308       p_pre_tax_spread  out     NOCOPY number, /*Bug# 4474896*/
309       p_pre_tax_fixed   out     NOCOPY number, /*Bug# 4474896*/
310       p_pre_tax_prog    out     NOCOPY number,  /*Bug# 4474896*/
311       p_paid_periods    out     NOCOPY number, /*Bug# 4474896*/
312       p_use_tax_flag            IN VARCHAR2 --2610141
313   ) return number;
314 
315 
316   -----------------------------------------------------------------------
317   -- Cursor        : c_get_ytd_def_bal_ids
318   -- Description   : To get the YTD defined balance ids for the balances
319   --             Retro LT 12 Mths Curr Yr Amount
320   --                 Retro LT 12 Mths Prev Yr Amount
321   --                 Earnings_Total
322   --             Earnings_Non_Taxable
323   --             Lump Sum E Payments
324   -----------------------------------------------------------------------
325   CURSOR c_get_ytd_def_bal_ids (c_db_item_suffix IN pay_balance_dimensions.DATABASE_ITEM_SUFFIX%type)
326   IS
327   SELECT  pdb.defined_balance_id, pbt.balance_name, pbd.DIMENSION_NAME
328   FROM pay_balance_types pbt,
329              pay_balance_dimensions pbd,
330              pay_defined_balances pdb
331       WHERE pbt.balance_name in ( 'Earnings_Standard'
332                                  ,'Pre Tax Spread Deductions'
333                                  ,'Pre Tax Fixed Deductions'       /*bug 4474896*/
334                                  ,'Pre Tax Progressive Deductions'
335                                  ,'Earnings_Leave_Loading') /*bug8725341*/
336     AND pbt.balance_type_id = pdb.balance_type_id
337     AND pdb.balance_dimension_id = pbd.balance_dimension_id
338     AND pbd.DATABASE_ITEM_SUFFIX = c_db_item_suffix --2610141
339     AND pbt.legislation_code = 'AU'
340     and pbt.legislation_code = pbd.legislation_code
341     AND pbd.legislation_code = 'AU';
342 
343 
344   TYPE g_ytd_tab_bals IS TABLE OF c_get_ytd_def_bal_ids%rowtype INDEX BY BINARY_INTEGER;
345   g_ytd_bals g_ytd_tab_bals;
346 
347   g_ytd_def_bals_populated  BOOLEAN;
348 
349   -- BBR Tables to store YTD balance details
350   --
351   g_ytd_input_table     pay_balance_pkg.t_balance_value_tab;
352   g_ytd_result_table        pay_balance_pkg.t_detailed_bal_out_tab;
353   g_ytd_context_table       pay_balance_pkg.t_context_tab;
354 
355   -- BBR Tables to store LE YTD balance details
356   --
357   g_le_ytd_input_table      pay_balance_pkg.t_balance_value_tab;
358   g_le_ytd_result_table     pay_balance_pkg.t_detailed_bal_out_tab;
359   g_le_ytd_context_table    pay_balance_pkg.t_context_tab;
360 
361   /* End of Bug#3263690 - NGE calculation Enhancement Declaration */
362 /* Bug 5107059 - Function to return the summed accrued hours of all accrual plan of category AU Annual Leave
363    attached with the assignment*/
364   FUNCTION get_total_accrual_hours
365     ( p_assignment_id    IN    NUMBER
366      ,p_business_group_id IN NUMBER
367      , p_payroll_id IN Number
368       ,p_plan_category    IN    VARCHAR2
369       ,p_effective_date   IN    DATE
370       ) RETURN NUMBER;
371 
372   --
373   --------------------------------------------------
374   --
375   -- Function calculate_etp_tax Bug 5956223
376   --
377   --  Calculate ETP Tax on the ETP amount passed
378   --  based on User Tables values
379   --
380   -- RETURNS: ETP Tax
381   --
382   -- IN:      p_etp_amount Amount on which tax needs to be calculated
383   --          p_trans_etp  Transitional Or Non Transitional ETP or termination type Death
384   --                   Values can be (D Death, TRANS Transitional,NONTRANS Non Transitional )
385   --          p_death_benefit_type   Beneficiary in Death case is Dependent or Non Dependent
386   --          p_over_pres_age    Yes or No
387   --          p_tfn_for_non_dependant  In Death case TFN for Non Dependent
388  FUNCTION calculate_etp_tax
389   (p_business_group_id            IN NUMBER
390   ,p_date_paid                    IN DATE
391   ,p_etp_amount                   IN NUMBER
392   ,p_trans_etp                    IN VARCHAR2
393   ,p_death_benefit_type           IN VARCHAR2
394   ,p_over_pres_age                IN VARCHAR2
395   ,p_tfn_for_non_dependent        IN VARCHAR2
396   ,p_medicare_levy                IN NUMBER
397   )
398   return number;
399 
400     --------------------------------------------------
401   --
402   -- Function get_fin_year_end Bug 5956223
403   --
404   --  Calculate Financial Year end date based on a given date
405   --
406   -- RETURNS: Financial Year end date
407   -- IN     :  Date
408  FUNCTION get_fin_year_end
409    (p_date       IN DATE)
410    return date;
411 
412      --------------------------------------------------
413   --
417   --  based on Employee's Date of Birth
414   -- Function get_prev_age Bug 6071863
415   --
416   --  Get the Preservation Age from User Table ETP_PRESERVATION_AGE
418   --
419   -- RETURNS: Preservation Age
420   -- IN     :  Date
421  FUNCTION get_prev_age
422    (p_date_of_birth       IN DATE,p_date_paid  IN DATE)
423   RETURN NUMBER ;
424 
425     --------------------------------------------------
426   --
427   -- Function au_check_trans Bug 6192381
428   --
429   -- Check if there exists a Transitional ETP or not in the current Pay Period .
430   --
431   -- RETURNS: Preservation Age
432   -- IN     :  Assignment Id
433   --        :  Date Earned
434  FUNCTION au_check_trans
435    (p_assignment_id       IN per_all_assignments_f.assignment_id%TYPE,
436     p_date_earned         IN DATE
437     )
438   RETURN VARCHAR2;
439 
440     --------------------------------------------------
441   --
442   -- Function calculate_etp_lumpsum_d_2010 Bug 9775171
443   --
444   -- Calculate ETP Lumpsum D per termination eff 01-JUL-2010
445   --
446   -- RETURNS: Lumpsum D
447   function calculate_etp_lumpsum_d_2010
448   (p_assignment_id              in  number
449   ,p_tax_unit_id                in  number
450   ,p_assignment_action_id       in  number
451   ,p_date_earned                in  date
452   ,p_date_paid                  in  date
453   ,p_years_of_service           in  number
454   ,p_lump_d_tax_free            in  number
455   ,p_lump_d_service_increment   in  number
456   ,p_etp_all_pay_ytd            in  number
457   ,p_all_etp_payments           in  number
458   )
459   return number;
460 
461     --------------------------------------------------
462   --
463   -- Function calculate_etp_tax_2010 Bug 9775171
464   --
465   -- Calculate ETP Lumpsum C on each etp payment type eff 01-JUL-2010
466   --
467   -- RETURNS: 0
468   -- OUT : p_etp_tax_notran_noppt
469   -- OUT : p_etp_tax_notran_ppt
470   -- OUT : p_etp_tax_tran_noppt
471   -- OUT : p_etp_tax_tran_ppt
472  FUNCTION calculate_etp_tax_2010
473   (p_business_group_id            IN NUMBER
474   ,p_assignment_id                IN NUMBER
475   ,p_tax_unit_id                  IN NUMBER
476   ,p_date_paid                    IN DATE
477   ,p_trans_etp                    IN VARCHAR2
478   ,p_death_benefit_type           IN VARCHAR2
479   ,p_over_pres_age                IN VARCHAR2
480   ,p_tfn_for_non_dependent        IN VARCHAR2
481   ,p_medicare_levy                IN NUMBER
482   ,p_etp_notran_noppt_ytd        in NUMBER
483   ,p_etp_notran_ppt_ytd          in NUMBER
484   ,p_etp_tran_noppt_ytd          in NUMBER
485   ,p_etp_tran_ppt_ytd            in NUMBER
486   ,p_etp_notran_noppt_run        in NUMBER
487   ,p_etp_notran_ppt_run          in NUMBER
488   ,p_etp_tran_noppt_run          in NUMBER
489   ,p_etp_tran_ppt_run            in NUMBER
490   ,p_etp_tax_notran_noppt        OUT NOCOPY NUMBER
491   ,p_etp_tax_notran_ppt          OUT NOCOPY NUMBER
492   ,p_etp_tax_tran_noppt          OUT NOCOPY NUMBER
493   ,p_etp_tax_tran_ppt            OUT NOCOPY NUMBER
494   )
495   RETURN NUMBER;
496 
497 
498 /* Bug 9950136 - Added function for FW Accrual changes
499 */
500 
501   FUNCTION get_foreign_accrual
502     (  p_assignment_id      IN              NUMBER
503       ,p_business_group_id  IN              NUMBER
504       ,p_payroll_id         IN              NUMBER
505       ,p_effective_date     IN              DATE
506       ,p_std_accrual        OUT   NOCOPY    NUMBER
507       ,p_fw_accrual         OUT   NOCOPY    NUMBER
508      ) RETURN NUMBER;
509 
510 -- bug 10212532 Added function to calculate suspended days of PPL for ETP calculation
511 function get_days_ppl_suspended
512  (p_assignment_id                   in    NUMBER
513   ,p_start_date                     in    DATE
514   ,p_end_date                       in    DATE)
515   return number;
516 
517 /* bug 12583457 */
518 FUNCTION au_count_etps_sil
519    (p_assignment_id       IN per_all_assignments_f.assignment_id%TYPE,
520     p_date_earned         IN DATE
521     )
522   RETURN NUMBER;
523 
524   --
525   -- Function calculate_etp_lumpsum_d_2012 Bug 14358180
526   --
527   -- Calculate ETP Lumpsum D per termination eff 01-OCT-2012
528   --
529   -- RETURNS: Lumpsum D
530   function calculate_etp_lumpsum_d_2012
531   (p_assignment_id              in  number
532   ,p_tax_unit_id                in  number
533   ,p_assignment_action_id       in  number
534   ,p_date_earned                in  date
535   ,p_date_paid                  in  date
536   ,p_years_of_service           in  number
537   ,p_lump_d_tax_free            in  number
538   ,p_lump_d_service_increment   in  number
539   ,p_redundancy_pay_ytd            in  number
540   ,p_redundancy_pay           in  number
541   )
542   return number;
543 
544   --
545   -- Function calculate_etp_lumpsum_d_2012 Bug 14358180
546   --
547   -- Calculate ETP Lumpsum C on Excluded and Non Excluded type eff 01-JUL-2012
548   -- p_etp_tax_excluded_pp/p_etp_tax_included_pp out parameters have value
549   --                             when etp payments existed in the previous year
550   -- 15852244 - Added p_etp_included_under_ytd IN, p_included_under_cap OUT parameters
551   --
552   -- RETURNS: 0
553   -- OUT : p_etp_tax_excluded
554   -- OUT : p_etp_tax_excluded_pp
555   -- OUT : p_etp_tax_included
556   -- OUT : p_etp_tax_included_pp
557   -- OUT : p_included_under_cap
558 FUNCTION calculate_etp_tax_2012
559   (p_business_group_id            IN NUMBER
560   ,p_assignment_id                IN NUMBER
561   ,p_tax_unit_id                  IN NUMBER
562   ,p_assignment_action_id   IN NUMBER
563   ,p_date_paid                    IN DATE
564   ,p_trans_etp                    IN VARCHAR2
565   ,p_death_benefit_type           IN VARCHAR2
566   ,p_over_pres_age                IN VARCHAR2
567   ,p_tfn_for_non_dependent        IN VARCHAR2
568   ,p_medicare_levy                IN NUMBER
569   ,p_current_pay_ytd             IN NUMBER
570   ,p_etp_excluded_ytd             in NUMBER
571   ,p_etp_included_ytd             in NUMBER
572   ,p_etp_excluded_run             in NUMBER
573   ,p_etp_included_run             in NUMBER
574   ,p_etp_included_under_ytd       in NUMBER
575   ,p_etp_tax_excluded             OUT NOCOPY NUMBER
576   ,p_etp_tax_excluded_pp          OUT NOCOPY NUMBER
577   ,p_etp_tax_included             OUT NOCOPY NUMBER
578   ,p_etp_tax_included_pp          OUT NOCOPY NUMBER
579   ,p_included_under_cap           OUT NOCOPY NUMBER
580   )
581   RETURN NUMBER;
582 
583 end pay_au_terminations;