DBA Data[Home] [Help]

PACKAGE: APPS.PY_ZA_TX_01032006

Source


1 PACKAGE py_za_tx_01032006 AS
2 /* $Header: pyzat007.pkh 120.0.12000000.2 2007/06/29 06:37:08 rpahune noship $ */
3 /* Copyright (c) Oracle Corporation 2005. All rights reserved. */
4 /*
5    PRODUCT
6       Oracle Payroll - ZA Localisation Tax Module
7    NAME
8       py_za_tx_01032006.pkh
9 
10    DESCRIPTION
11       This is the main tax package as used in the ZA Localisation Tax Module.
12       The public functions in this package are not for client use and is
13       only referenced by the tax formulae in the Application.
14 
15   PUBLIC FUNCTIONS
16    ZaTxGlb_01032006
17       This function is called from Oracle Applications Fast Formula.
18       It passes all necessary global values to the main tax package.
19    ZaTxDbi_01032006
20       This function is called from Oracle Applications Fast Formula.
21       It passes all necessary Application Database Items to the
22       main tax package.
23    ZaTxBal1_01032006
24       This function is called from Oracle Applications Fast Formula.
25       It passes the first group of balances to the main tax package.
26    ZaTxBal2_01032006
27       This function is called from Oracle Applications Fast Formula.
28       It passes the second group of balances to the main tax package.
29    ZaTxBal3_01032006
30       This function is called from Oracle Applications Fast Formula.
31       It passes the third group of balances to the main tax package.
32    ZaTx_01032006
33       This function is called from Oracle Applications Fast Formula.
34       This is the main tax function from where all necessary
35       validation and calculations are done.  The function will
36       calculate the tax liabilities of the employee assignment
37       and pass it back to the calling formula.
38 
39    PRIVATE FUNCTIONS
40       <none>
41    NOTES
42       .
43 
44    MODIFICATION HISTORY
45    Person     Date       Version        Bug     Comments
46    ---------- ---------- -------------- ------- --------------------------------
47    J.N. Louw  20/04/2007 115.3          5965050 TX_ON_LS_PTD
48    R V Pahune 28/02/2006 115.2          5059281 for public off allw taxation
49                                                 according to tax table.
50    J.N. Louw  06/12/2005 115.1          4861242 For detail history see
51                                                 py_za_tx_utl_01032005
52 */
53 -------------------------------------------------------------------------------
54 --                           PACKAGE GLOBAL AREA                             --
55 -------------------------------------------------------------------------------
56 -- Types
57 -------------------------------------------------------------------------------
58    SUBTYPE BALANCE IS py_za_tx_utl_01032006.t_balance;
59 -------------------------------------------------------------------------------
60 -- Application Contexts
61 -------------------------------------------------------------------------------
62    con_ASG_ACT_ID                 NUMBER;
63    con_ASG_ID                     NUMBER;
64    con_PRL_ACT_ID                 NUMBER;
65    con_PRL_ID                     NUMBER;
66 -------------------------------------------------------------------------------
67 -- Application Global Values
68 -------------------------------------------------------------------------------
69    glb_ZA_ADL_TX_RBT              NUMBER;
70    glb_ZA_ARR_PF_AN_MX_ABT        NUMBER;
71    glb_ZA_ARR_RA_AN_MX_ABT        NUMBER;
72    glb_ZA_TRV_ALL_TX_PRC          NUMBER;
73    glb_ZA_CC_TX_PRC               NUMBER;
74    glb_ZA_PF_AN_MX_ABT            NUMBER;
75    glb_ZA_PF_MX_PRC               NUMBER;
76    glb_ZA_PER_SERV_COMP_PERC      NUMBER;
77    glb_ZA_PER_SERV_TRST_PERC      NUMBER;
78    glb_ZA_PRI_TX_RBT              NUMBER;
79    glb_ZA_PRI_TX_THRSHLD          NUMBER;
80    glb_ZA_PBL_TX_PRC              NUMBER;
81    glb_ZA_PBL_TX_RTE              NUMBER;
82    glb_ZA_RA_AN_MX_ABT            NUMBER;
83    glb_ZA_RA_MX_PRC               NUMBER;
84    glb_ZA_SC_TX_THRSHLD           NUMBER;
85    glb_ZA_SIT_LIM                 NUMBER;
86    glb_ZA_TMP_TX_RTE              NUMBER;
87    glb_ZA_WRK_DYS_PR_YR           NUMBER;
88 -------------------------------------------------------------------------------
89 -- Application Database Items
90 -------------------------------------------------------------------------------
91    dbi_BP_TX_RCV                  VARCHAR2(1);
92    dbi_PAY_PROC_PRD_DTE_PD        DATE;
93    dbi_PER_AGE                    NUMBER;
94    dbi_PER_DTE_OF_BRTH            DATE;
95    dbi_SEA_WRK_DYS_WRK            NUMBER;
96    dbi_SES_DTE                    DATE;
97    dbi_TX_DIR_NUM                 VARCHAR2(60);
98    dbi_TX_DIR_VAL                 NUMBER DEFAULT 25;
99    dbi_TX_STA                     VARCHAR2(1);
100    dbi_ZA_ACT_END_DTE             DATE;
101    dbi_ZA_ACT_STRT_DTE            DATE;
102    dbi_ZA_ASG_TX_RTR_PRD          VARCHAR2(1);
103    dbi_ZA_ASG_TAX_RTR_RSLTS       VARCHAR2(1);
104    dbi_ZA_ASG_TX_YR               NUMBER(4);
105    dbi_ZA_ASG_TX_YR_END           DATE;
106    dbi_ZA_ASG_TX_YR_STRT          DATE;
107    dbi_ZA_CUR_PRD_END_DTE         DATE;
108    dbi_ZA_CUR_PRD_STRT_DTE        DATE;
109    dbi_ZA_DYS_IN_YR               NUMBER;
110    dbi_ZA_PAY_PRDS_LFT            NUMBER;
111    dbi_ZA_PAY_PRDS_PER_YR         NUMBER;
112    dbi_ZA_TX_YR_END               DATE;
113    dbi_ZA_TX_YR_STRT              DATE;
114    dbi_ZA_LS_DIR_NUM              VARCHAR2(13);
115    dbi_ZA_LS_DIR_VAL              NUMBER;
116 -------------------------------------------------------------------------------
117 -- Balances
118 -------------------------------------------------------------------------------
119    bal_ANN_ARR_PF_CMTD            BALANCE;
120    bal_ANN_ARR_PF_CYTD            BALANCE;
121    bal_ANN_ARR_PF_RUN             BALANCE;
122    bal_ANN_ARR_PF_PTD             BALANCE;
123    bal_ANN_ARR_PF_YTD             BALANCE;
124    bal_ANN_ARR_RA_CMTD            BALANCE;
125    bal_ANN_ARR_RA_CYTD            BALANCE;
126    bal_ANN_ARR_RA_RUN             BALANCE;
127    bal_ANN_ARR_RA_PTD             BALANCE;
128    bal_ANN_ARR_RA_YTD             BALANCE;
129    bal_ANN_EE_INC_PRO_POL_CMTD    BALANCE;
130    bal_ANN_EE_INC_PRO_POL_CYTD    BALANCE;
131    bal_ANN_EE_INC_PRO_POL_RUN     BALANCE;
132    bal_ANN_EE_INC_PRO_POL_PTD     BALANCE;
133    bal_ANN_EE_INC_PRO_POL_YTD     BALANCE;
134    bal_ANN_MED_CNTRB_ABM_CMTD     BALANCE;
135    bal_ANN_MED_CNTRB_ABM_CYTD     BALANCE;
136    bal_ANN_MED_CNTRB_ABM_RUN      BALANCE;
137    bal_ANN_MED_CNTRB_ABM_PTD      BALANCE;
138    bal_ANN_MED_CNTRB_ABM_YTD      BALANCE;
139    bal_ANN_PF_CMTD                BALANCE;
140    bal_ANN_PF_CYTD                BALANCE;
141    bal_ANN_PF_RUN                 BALANCE;
142    bal_ANN_PF_PTD                 BALANCE;
143    bal_ANN_PF_YTD                 BALANCE;
144    bal_ANN_RA_CMTD                BALANCE;
145    bal_ANN_RA_CYTD                BALANCE;
146    bal_ANN_RA_RUN                 BALANCE;
147    bal_ANN_RA_PTD                 BALANCE;
148    bal_ANN_RA_YTD                 BALANCE;
149    bal_ARR_PF_CMTD                BALANCE;
150    bal_ARR_PF_CYTD                BALANCE;
151    bal_ARR_PF_PTD                 BALANCE;
152    bal_ARR_PF_YTD                 BALANCE;
153    bal_ARR_RA_CMTD                BALANCE;
154    bal_ARR_RA_CYTD                BALANCE;
155    bal_ARR_RA_PTD                 BALANCE;
156    bal_ARR_RA_YTD                 BALANCE;
157    bal_BP_CMTD                    BALANCE;
158    bal_BP_PTD                     BALANCE;
159    bal_BP_YTD                     BALANCE;
160    bal_CUR_PF_CMTD                BALANCE;
161    bal_CUR_PF_CYTD                BALANCE;
162    bal_CUR_PF_RUN                 BALANCE;
163    bal_CUR_PF_PTD                 BALANCE;
164    bal_CUR_PF_YTD                 BALANCE;
165    bal_CUR_RA_CMTD                BALANCE;
166    bal_CUR_RA_CYTD                BALANCE;
167    bal_CUR_RA_RUN                 BALANCE;
168    bal_CUR_RA_PTD                 BALANCE;
169    bal_CUR_RA_YTD                 BALANCE;
170    bal_DIR_DMD_RMN_ITD            BALANCE;
171    bal_EE_INC_PRO_POL_CMTD        BALANCE;
172    bal_EE_INC_PRO_POL_CYTD        BALANCE;
173    bal_EE_INC_PRO_POL_RUN         BALANCE;
174    bal_EE_INC_PRO_POL_PTD         BALANCE;
175    bal_EE_INC_PRO_POL_YTD         BALANCE;
176    bal_EXC_ARR_PEN_ITD            BALANCE;
177    bal_EXC_ARR_PEN_PTD            BALANCE;
178    bal_EXC_ARR_PEN_YTD            BALANCE;
179    bal_EXC_ARR_RA_ITD             BALANCE;
180    bal_EXC_ARR_RA_PTD             BALANCE;
181    bal_EXC_ARR_RA_YTD             BALANCE;
182    bal_MED_CONTR_CMTD             BALANCE;
183    bal_MED_CONTR_CYTD             BALANCE;
184    bal_MED_CONTR_RUN              BALANCE;
185    bal_MED_CONTR_PTD              BALANCE;
186    bal_MED_CONTR_YTD              BALANCE;
187    bal_MED_CNTRB_ABM_CMTD         BALANCE;
188    bal_MED_CNTRB_ABM_CYTD         BALANCE;
189    bal_MED_CNTRB_ABM_RUN          BALANCE;
190    bal_MED_CNTRB_ABM_PTD          BALANCE;
191    bal_MED_CNTRB_ABM_YTD          BALANCE;
192    bal_NET_PAY_RUN                BALANCE;
193    bal_NET_TXB_INC_CMTD           BALANCE;
194    bal_PAYE_YTD                   BALANCE;
195    bal_SITE_YTD                   BALANCE;
196    bal_TAX_YTD                    BALANCE;
197    bal_TX_ON_AB_PTD               BALANCE;
198    bal_TX_ON_AB_YTD               BALANCE;
199    bal_TX_ON_AP_PTD               BALANCE;
200    bal_TX_ON_AP_YTD               BALANCE;
201    bal_TX_ON_BP_PTD               BALANCE;
202    bal_TX_ON_BP_YTD               BALANCE;
203    bal_TX_ON_TA_PTD               BALANCE;
204    bal_TX_ON_TA_YTD               BALANCE;
205    bal_TX_ON_DR_PTD               BALANCE;
206    bal_TX_ON_DR_YTD               BALANCE;
207    bal_TX_ON_FB_PTD               BALANCE;
208    bal_TX_ON_FB_YTD               BALANCE;
209    bal_TX_ON_NI_PTD               BALANCE;
210    bal_TX_ON_NI_YTD               BALANCE;
211    bal_TX_ON_PO_PTD               BALANCE;
212    bal_TX_ON_PO_YTD               BALANCE;
213    bal_TX_ON_LS_PTD               BALANCE;
214    bal_TOT_INC_PTD                BALANCE;
215    bal_TOT_INC_YTD                BALANCE;
216    bal_TOT_NRFI_AN_INC_CMTD       BALANCE;
217    bal_TOT_NRFI_AN_INC_CYTD       BALANCE;
218    bal_TOT_NRFI_AN_INC_RUN        BALANCE;
219    bal_TOT_NRFI_AN_INC_PTD        BALANCE;
220    bal_TOT_NRFI_AN_INC_YTD        BALANCE;
221    bal_TOT_NRFI_INC_CMTD          BALANCE;
222    bal_TOT_NRFI_INC_CYTD          BALANCE;
223    bal_TOT_NRFI_INC_RUN           BALANCE;
224    bal_TOT_NRFI_INC_PTD           BALANCE;
225    bal_TOT_NRFI_INC_YTD           BALANCE;
226    bal_TOT_RFI_AN_INC_CMTD        BALANCE;
227    bal_TOT_RFI_AN_INC_CYTD        BALANCE;
228    bal_TOT_RFI_AN_INC_RUN         BALANCE;
229    bal_TOT_RFI_AN_INC_PTD         BALANCE;
230    bal_TOT_RFI_AN_INC_YTD         BALANCE;
231    bal_TOT_RFI_INC_CMTD           BALANCE;
232    bal_TOT_RFI_INC_CYTD           BALANCE;
233    bal_TOT_RFI_INC_RUN            BALANCE;
234    bal_TOT_RFI_INC_PTD            BALANCE;
235    bal_TOT_RFI_INC_YTD            BALANCE;
236    bal_TOT_SEA_WRK_DYS_WRK_YTD    BALANCE;
237    bal_TOT_SKL_ANN_INC_CMTD       BALANCE;
238    bal_TOT_SKL_INC_CMTD           BALANCE;
239    bal_TOT_TXB_INC_ITD            BALANCE;
240    bal_TOT_TXB_AB_CMTD            BALANCE;
241    bal_TOT_TXB_AB_RUN             BALANCE;
242    bal_TOT_TXB_AB_PTD             BALANCE;
243    bal_TOT_TXB_AB_YTD             BALANCE;
244    bal_TOT_TXB_AP_CMTD            BALANCE;
245    bal_TOT_TXB_AP_RUN             BALANCE;
246    bal_TOT_TXB_AP_PTD             BALANCE;
247    bal_TOT_TXB_AP_YTD             BALANCE;
248    bal_TOT_TXB_FB_CMTD            BALANCE;
249    bal_TOT_TXB_FB_CYTD            BALANCE;
250    bal_TOT_TXB_FB_RUN             BALANCE;
251    bal_TOT_TXB_FB_PTD             BALANCE;
252    bal_TOT_TXB_FB_YTD             BALANCE;
253    bal_TOT_TXB_NI_CMTD            BALANCE;
254    bal_TOT_TXB_NI_CYTD            BALANCE;
255    bal_TOT_TXB_NI_RUN             BALANCE;
256    bal_TOT_TXB_NI_PTD             BALANCE;
257    bal_TOT_TXB_NI_YTD             BALANCE;
258    bal_TOT_TXB_PO_CMTD            BALANCE;
259    bal_TOT_TXB_PO_PTD             BALANCE;
260    bal_TOT_TXB_PO_YTD             BALANCE;
261    bal_TOT_TXB_TA_CMTD            BALANCE;
262    bal_TOT_TXB_TA_CYTD            BALANCE;
263    bal_TOT_TXB_TA_PTD             BALANCE;
264    bal_TOT_TXB_TA_YTD             BALANCE;
265 
266 -------------------------------------------------------------------------------
267 -- Trace Globals
268 -------------------------------------------------------------------------------
269 
270 --   These are set within the procedures and function calls!!
271 --   Values can be output by the main function call from formula
272 --
273   -- Calculation Type
274   trc_CalTyp                VARCHAR2(7) DEFAULT 'Unknown';
275   -- Factors
276   trc_TxbIncPtd             BALANCE DEFAULT 0;
277   trc_PrdFactor             NUMBER  DEFAULT 0;
278   trc_PosFactor             NUMBER  DEFAULT 0;
279   trc_SitFactor             NUMBER  DEFAULT 1;
280   -- Deemed Remuneration
281   trc_DmdRmnRun             BALANCE DEFAULT 0;
282   trc_TxbDmdRmn             BALANCE DEFAULT 0;
283   trc_TotLibDR              BALANCE DEFAULT 0;
284   trc_LibFyDR               BALANCE DEFAULT 0;
285   trc_LibFpDR               BALANCE DEFAULT 0;
286   -- Base Income
287   trc_BseErn                BALANCE DEFAULT 0;
288   trc_TxbBseInc             BALANCE DEFAULT 0;
289   trc_TotLibBse             BALANCE DEFAULT 0;
290   -- Period Pension Fund
291   trc_TxbIncYtd             BALANCE DEFAULT 0;
292   trc_PerTxbInc             BALANCE DEFAULT 0;
293   trc_PerPenFnd             BALANCE DEFAULT 0;
294   trc_PerRfiCon             BALANCE DEFAULT 0;
295   trc_PerRfiTxb             BALANCE DEFAULT 0;
296   trc_PerPenFndMax          BALANCE DEFAULT 0;
297   trc_PerPenFndAbm          BALANCE DEFAULT 0;
298   -- Annual Pension Fund
299   trc_AnnTxbInc             BALANCE DEFAULT 0;
300   trc_AnnPenFnd             BALANCE DEFAULT 0;
301   trc_AnnRfiCon             BALANCE DEFAULT 0;
302   trc_AnnRfiTxb             BALANCE DEFAULT 0;
303   trc_AnnPenFndMax          BALANCE DEFAULT 0;
304   trc_AnnPenFndAbm          BALANCE DEFAULT 0;
305   -- Period Arrear Pension
306   trc_PerArrPenFnd          BALANCE DEFAULT 0;
307   trc_PerArrPenFndAbm       BALANCE DEFAULT 0;
308   -- Annual Arrear Pension
309   trc_AnnArrPenFnd          BALANCE DEFAULT 0;
310   trc_AnnArrPenFndAbm       BALANCE DEFAULT 0;
311   -- Arrear Excess Update Value
312   trc_PfUpdFig              BALANCE DEFAULT 0;
313   -- Period Retirement Annuity
314   trc_PerRetAnu             BALANCE DEFAULT 0;
315   trc_PerNrfiCon            BALANCE DEFAULT 0;
316   trc_PerRetAnuMax          BALANCE DEFAULT 0;
317   trc_PerRetAnuAbm          BALANCE DEFAULT 0;
318   -- Annual Retirement Annuity
319   trc_AnnRetAnu             BALANCE DEFAULT 0;
320   trc_AnnNrfiCon            BALANCE DEFAULT 0;
321   trc_AnnRetAnuMax          BALANCE DEFAULT 0;
322   trc_AnnRetAnuAbm          BALANCE DEFAULT 0;
323   -- Period Arrear Retirement Annuity
324   trc_PerArrRetAnu          BALANCE DEFAULT 0;
325   trc_PerArrRetAnuAbm       BALANCE DEFAULT 0;
326   -- Annual Arrear Retirement Annuity
327   trc_AnnArrRetAnu          BALANCE DEFAULT 0;
328   trc_AnnArrRetAnuAbm       BALANCE DEFAULT 0;
329   -- Arrear Excess Update Value
330   trc_RaUpdFig              BALANCE DEFAULT 0;
331   -- Medical Aid Abatement
332   trc_PerMedAidAbm          BALANCE DEFAULT 0;
333   trc_AnnMedAidAbm          BALANCE DEFAULT 0;
334   -- Rebates Thresholds
335   trc_Rebate                BALANCE DEFAULT 0;
336   trc_Threshold             BALANCE DEFAULT 0;
337   -- Income Protection Policy
338   trc_PerIncProPolAbm       BALANCE DEFAULT 0;
339   trc_AnnIncProPolAbm       BALANCE DEFAULT 0;
340   -- Abatement Totals
341   trc_PerTotAbm             BALANCE DEFAULT 0;
342   trc_AnnTotAbm             BALANCE DEFAULT 0;
343   -- Normal Income
344   trc_NorIncYtd             BALANCE DEFAULT 0;
345   trc_NorIncPtd             BALANCE DEFAULT 0;
346   trc_NorErn                BALANCE DEFAULT 0;
347   trc_TxbNorInc             BALANCE DEFAULT 0;
348   trc_TotLibNI              BALANCE DEFAULT 0;
349   trc_LibFyNI               BALANCE DEFAULT 0;
350   trc_LibFpNI               BALANCE DEFAULT 0;
351   -- Fringe Benefits
352   trc_FrnBenYtd             BALANCE DEFAULT 0;
353   trc_FrnBenPtd             BALANCE DEFAULT 0;
354   trc_FrnBenErn             BALANCE DEFAULT 0;
355   trc_TxbFrnInc             BALANCE DEFAULT 0;
356   trc_TotLibFB              BALANCE DEFAULT 0;
357   trc_LibFyFB               BALANCE DEFAULT 0;
358   trc_LibFpFB               BALANCE DEFAULT 0;
359   -- Travel Allowance
360   trc_TrvAllYtd             BALANCE DEFAULT 0;
361   trc_TrvAllPtd             BALANCE DEFAULT 0;
362   trc_TrvAllErn             BALANCE DEFAULT 0;
363   trc_TxbTrvInc             BALANCE DEFAULT 0;
364   trc_TotLibTA              BALANCE DEFAULT 0;
365   trc_LibFyTA               BALANCE DEFAULT 0;
366   trc_LibFpTA               BALANCE DEFAULT 0;
367   -- Bonus Provision
368   trc_BonProYtd             BALANCE DEFAULT 0;
369   trc_BonProPtd             BALANCE DEFAULT 0;
370   trc_BonProErn             BALANCE DEFAULT 0;
371   trc_TxbBonProInc          BALANCE DEFAULT 0;
372   trc_TotLibBP              BALANCE DEFAULT 0;
373   trc_LibFyBP               BALANCE DEFAULT 0;
374   trc_LibFpBP               BALANCE DEFAULT 0;
375   -- Annual Bonus
376   trc_AnnBonYtd             BALANCE DEFAULT 0;
377   trc_AnnBonPtd             BALANCE DEFAULT 0;
378   trc_AnnBonErn             BALANCE DEFAULT 0;
379   trc_TxbAnnBonInc          BALANCE DEFAULT 0;
380   trc_TotLibAB              BALANCE DEFAULT 0;
381   trc_LibFyAB               BALANCE DEFAULT 0;
382   trc_LibFpAB               BALANCE DEFAULT 0;
383   -- Annual Payments
384   trc_AnnPymYtd             BALANCE DEFAULT 0;
385   trc_AnnPymPtd             BALANCE DEFAULT 0;
386   trc_AnnPymErn             BALANCE DEFAULT 0;
387   trc_TxbAnnPymInc          BALANCE DEFAULT 0;
388   trc_TotLibAP              BALANCE DEFAULT 0;
389   trc_LibFyAP               BALANCE DEFAULT 0;
390   trc_LibFpAP               BALANCE DEFAULT 0;
391   -- Pubilc Office Allowance
392   trc_PblOffYtd             BALANCE DEFAULT 0;
393   trc_PblOffPtd             BALANCE DEFAULT 0;
394   trc_PblOffErn             BALANCE DEFAULT 0;
395   trc_TxbPblOffInc          BALANCE DEFAULT 0;
396   trc_TotLibPO              BALANCE DEFAULT 0;
397   trc_LibFyPO               BALANCE DEFAULT 0;
398   trc_LibFpPO               BALANCE DEFAULT 0;
399 
400 
401 
402   -- Messages
403   trc_LibWrn                VARCHAR2(100) DEFAULT ' ';
404 
405   -- Statutory Deduction Value
406   trc_PayValSD              BALANCE DEFAULT 0;
407   -- Employer Contribution Value
408   trc_PayValEC              BALANCE DEFAULT 0;
409   -- PAYE and SITE Values
410   trc_PayeVal               BALANCE DEFAULT 0;
411   trc_SiteVal               BALANCE DEFAULT 0;
412   -- IT3A Threshold Indicator
413   trc_It3Ind                NUMBER DEFAULT 0;
414   -- Tax Percentage Value On trace
415   trc_TxPercVal             NUMBER DEFAULT 0;
416   -- Total Taxable Income Update Figure
417   trc_OUpdFig               BALANCE DEFAULT 0;
418   -- Net Taxable Income Update Figure
419   trc_NtiUpdFig             BALANCE DEFAULT 0;
420 
421   -- ValidateTaxOns Override Globals
422   trc_LibFpDROvr            BOOLEAN DEFAULT FALSE;
423   trc_LibFpNIOvr            BOOLEAN DEFAULT FALSE;
424   trc_LibFpFBOvr            BOOLEAN DEFAULT FALSE;
425   trc_LibFpTAOvr            BOOLEAN DEFAULT FALSE;
426   trc_LibFpBPOvr            BOOLEAN DEFAULT FALSE;
427   trc_LibFpABOvr            BOOLEAN DEFAULT FALSE;
428   trc_LibFpAPOvr            BOOLEAN DEFAULT FALSE;
429   trc_LibFpPOOvr            BOOLEAN DEFAULT FALSE;
430 
431   -- Global Exception Message
432   xpt_Msg                   VARCHAR2(100) DEFAULT 'No Error';
433   -- Global Exception
434   xpt_E                     EXCEPTION;
435 
436   -- Override Globals
437   trc_OvrTxCalc             BOOLEAN       DEFAULT FALSE;
438   trc_OvrTyp                VARCHAR2(1)   DEFAULT 'V';
439   trc_OvrPrc                NUMBER(3)     DEFAULT 0;
440   trc_OvrWrn                VARCHAR2(150) DEFAULT ' ';
441 
442   -- Negative Ptd Global
443   trc_NegPtd                BOOLEAN DEFAULT FALSE;
444 
445 -- Function to Override Tax Calculation
446 --
447 FUNCTION ZaTxOvr_01032006(
448     p_OvrTyp IN VARCHAR2
449    ,p_TxOnNI IN NUMBER
450    ,p_TxOnAP IN NUMBER
451    ,p_TxPrc  IN NUMBER
452    )RETURN NUMBER;
453 
454 
455 -- Function to Initialise Globals
456 --
457 FUNCTION ZaTxGlb_01032006(
458 -- Global Values
459     p_ZA_ADL_TX_RBT         IN NUMBER
460    ,p_ZA_ARR_PF_AN_MX_ABT   IN NUMBER
461    ,p_ZA_ARR_RA_AN_MX_ABT   IN NUMBER
462    ,p_ZA_TRV_ALL_TX_PRC     IN NUMBER
463    ,p_ZA_CC_TX_PRC          IN NUMBER
464    ,p_ZA_PF_AN_MX_ABT       IN NUMBER
465    ,p_ZA_PF_MX_PRC          IN NUMBER
466    ,p_ZA_PER_SERV_COMP_PERC IN NUMBER
467    ,p_ZA_PER_SERV_TRST_PERC IN NUMBER
468    ,p_ZA_PRI_TX_RBT         IN NUMBER
469    ,p_ZA_PRI_TX_THRSHLD     IN NUMBER
470    ,p_ZA_PBL_TX_PRC         IN NUMBER
471    ,p_ZA_PBL_TX_RTE         IN NUMBER
472    ,p_ZA_RA_AN_MX_ABT       IN NUMBER
473    ,p_ZA_RA_MX_PRC          IN NUMBER
474    ,p_ZA_SC_TX_THRSHLD      IN NUMBER
475    ,p_ZA_SIT_LIM            IN NUMBER
476    ,p_ZA_TMP_TX_RTE         IN NUMBER
477    ,p_ZA_WRK_DYS_PR_YR      IN NUMBER
478    ) RETURN NUMBER;
479 
480 -- Function to Initialise Globals - Database Item Values
481 --
482 FUNCTION ZaTxDbi_01032006(
483 -- Database Items
484    p_PAY_PROC_PRD_DTE_PD   IN DATE
485   ,p_PER_AGE               IN NUMBER
486   ,p_PER_DTE_OF_BRTH       IN DATE
487   ,p_SES_DTE               IN DATE
488   ,p_ZA_ACT_END_DTE        IN DATE
489   ,p_ZA_ACT_STRT_DTE       IN DATE
490   ,p_ZA_ASG_TX_RTR_PRD     IN VARCHAR2
491   ,p_ZA_ASG_TAX_RTR_RSLTS  IN VARCHAR2
492   ,p_ZA_ASG_TX_YR          IN NUMBER
493   ,p_ZA_ASG_TX_YR_END      IN DATE
494   ,p_ZA_ASG_TX_YR_STRT     IN DATE
495   ,p_ZA_CUR_PRD_END_DTE    IN DATE
496   ,p_ZA_CUR_PRD_STRT_DTE   IN DATE
497   ,p_ZA_DYS_IN_YR          IN NUMBER
498   ,p_ZA_PAY_PRDS_LFT       IN NUMBER
499   ,p_ZA_PAY_PRDS_PER_YR    IN NUMBER
500   ,p_ZA_TX_YR_END          IN DATE
501   ,p_ZA_TX_YR_STRT         IN DATE
502   ,p_BP_TX_RCV             IN VARCHAR2
503   ,p_SEA_WRK_DYS_WRK       IN NUMBER
504   ,p_TX_DIR_NUM            IN VARCHAR2
505   ,p_TX_DIR_VAL            IN NUMBER
506   ,p_TX_STA                IN VARCHAR2
507   ,p_ZA_LS_DIR_NUM         IN VARCHAR2
508   ,p_ZA_LS_DIR_VAL         IN NUMBER
509   ) RETURN NUMBER;
510 
511 
512 -- Function to Initialise Globals - Balance Values
513 -- First Section
514 FUNCTION ZaTxBal1_01032006(
515 -- Balances
516     p_ANN_ARR_PF_CMTD           IN NUMBER
520    ,p_ANN_ARR_PF_YTD            IN NUMBER
517    ,p_ANN_ARR_PF_CYTD           IN NUMBER
518    ,p_ANN_ARR_PF_RUN            IN NUMBER
519    ,p_ANN_ARR_PF_PTD            IN NUMBER
521    ,p_ANN_ARR_RA_CMTD           IN NUMBER
522    ,p_ANN_ARR_RA_CYTD           IN NUMBER
523    ,p_ANN_ARR_RA_RUN            IN NUMBER
524    ,p_ANN_ARR_RA_PTD            IN NUMBER
525    ,p_ANN_ARR_RA_YTD            IN NUMBER
526    ,p_ANN_EE_INC_PRO_POL_CMTD   IN NUMBER
527    ,p_ANN_EE_INC_PRO_POL_CYTD   IN NUMBER
531    ,p_ANN_MED_CNTRB_ABM_CMTD    IN NUMBER
528    ,p_ANN_EE_INC_PRO_POL_RUN    IN NUMBER
529    ,p_ANN_EE_INC_PRO_POL_PTD    IN NUMBER
530    ,p_ANN_EE_INC_PRO_POL_YTD    IN NUMBER
532    ,p_ANN_MED_CNTRB_ABM_CYTD    IN NUMBER
533    ,p_ANN_MED_CNTRB_ABM_RUN     IN NUMBER
534    ,p_ANN_MED_CNTRB_ABM_PTD     IN NUMBER
535    ,p_ANN_MED_CNTRB_ABM_YTD     IN NUMBER
536    ,p_ANN_PF_CMTD               IN NUMBER
537    ,p_ANN_PF_CYTD               IN NUMBER
538    ,p_ANN_PF_RUN                IN NUMBER
539    ,p_ANN_PF_PTD                IN NUMBER
540    ,p_ANN_PF_YTD                IN NUMBER
541    ,p_ANN_RA_CMTD               IN NUMBER
542    ,p_ANN_RA_CYTD               IN NUMBER
543    ,p_ANN_RA_RUN                IN NUMBER
544    ,p_ANN_RA_PTD                IN NUMBER
545    ,p_ANN_RA_YTD                IN NUMBER
546    ) RETURN NUMBER;
547 
548 -- Function to Initialise Globals - Balance Values
549 -- Second Section
550 FUNCTION ZaTxBal2_01032006(
551 -- Balances
552     p_ARR_PF_CMTD                IN NUMBER
553    ,p_ARR_PF_CYTD                IN NUMBER
554    ,p_ARR_PF_PTD                 IN NUMBER
555    ,p_ARR_PF_YTD                 IN NUMBER
556    ,p_ARR_RA_CMTD                IN NUMBER
557    ,p_ARR_RA_CYTD                IN NUMBER
558    ,p_ARR_RA_PTD                 IN NUMBER
559    ,p_ARR_RA_YTD                 IN NUMBER
560    ,p_BP_CMTD                    IN NUMBER
561    ,p_BP_PTD                     IN NUMBER
562    ,p_BP_YTD                     IN NUMBER
563    ,p_CUR_PF_CMTD                IN NUMBER
564    ,p_CUR_PF_CYTD                IN NUMBER
565    ,p_CUR_PF_RUN                 IN NUMBER
566    ,p_CUR_PF_PTD                 IN NUMBER
567    ,p_CUR_PF_YTD                 IN NUMBER
568    ,p_CUR_RA_CMTD                IN NUMBER
569    ,p_CUR_RA_CYTD                IN NUMBER
570    ,p_CUR_RA_RUN                 IN NUMBER
571    ,p_CUR_RA_PTD                 IN NUMBER
572    ,p_CUR_RA_YTD                 IN NUMBER
573    ,p_DIR_DMD_RMN_ITD            IN NUMBER
574    ) RETURN NUMBER;
575 
576 -- Function to Initialise Globals - Balance Values
577 -- Third Section
578 FUNCTION ZaTxBal3_01032006(
579 -- Balances
580     p_EE_INC_PRO_POL_CMTD        IN NUMBER
581    ,p_EE_INC_PRO_POL_CYTD        IN NUMBER
582    ,p_EE_INC_PRO_POL_RUN         IN NUMBER
583    ,p_EE_INC_PRO_POL_PTD         IN NUMBER
584    ,p_EE_INC_PRO_POL_YTD         IN NUMBER
585    ,p_EXC_ARR_PEN_ITD            IN NUMBER
586    ,p_EXC_ARR_PEN_PTD            IN NUMBER
587    ,p_EXC_ARR_PEN_YTD            IN NUMBER
588    ,p_EXC_ARR_RA_ITD             IN NUMBER
589    ,p_EXC_ARR_RA_PTD             IN NUMBER
590    ,p_EXC_ARR_RA_YTD             IN NUMBER
591    ,p_MED_CONTR_CMTD             IN NUMBER
592    ,p_MED_CONTR_CYTD             IN NUMBER
593    ,p_MED_CONTR_RUN              IN NUMBER
594    ,p_MED_CONTR_PTD              IN NUMBER
595    ,p_MED_CONTR_YTD              IN NUMBER
596    ,p_MED_CNTRB_ABM_CMTD         IN NUMBER
597    ,p_MED_CNTRB_ABM_CYTD         IN NUMBER
598    ,p_MED_CNTRB_ABM_RUN          IN NUMBER
599    ,p_MED_CNTRB_ABM_PTD          IN NUMBER
600    ,p_MED_CNTRB_ABM_YTD          IN NUMBER
601    ,p_NET_PAY_RUN                IN NUMBER
602    ,p_NET_TXB_INC_CMTD           IN NUMBER
603    ) RETURN NUMBER;
604 
605 -- Function to Initialise Globals - Balance Values
606 -- Fourth Section
607 FUNCTION ZaTxBal4_01032006(
608 -- Balances
609     p_PAYE_YTD                   IN NUMBER
610    ,p_SITE_YTD                   IN NUMBER
611    ,p_TAX_YTD                    IN NUMBER
612    ,p_TX_ON_AB_PTD               IN NUMBER
613    ,p_TX_ON_AB_YTD               IN NUMBER
617    ,p_TX_ON_BP_YTD               IN NUMBER
614    ,p_TX_ON_AP_PTD               IN NUMBER
615    ,p_TX_ON_AP_YTD               IN NUMBER
616    ,p_TX_ON_BP_PTD               IN NUMBER
618    ,p_TX_ON_TA_PTD               IN NUMBER
619    ,p_TX_ON_TA_YTD               IN NUMBER
620    ,p_TX_ON_DR_PTD               IN NUMBER
621    ,p_TX_ON_DR_YTD               IN NUMBER
622    ,p_TX_ON_FB_PTD               IN NUMBER
626    ,p_TX_ON_PO_PTD               IN NUMBER
623    ,p_TX_ON_FB_YTD               IN NUMBER
624    ,p_TX_ON_NI_PTD               IN NUMBER
625    ,p_TX_ON_NI_YTD               IN NUMBER
627    ,p_TX_ON_PO_YTD               IN NUMBER
628    ,p_TX_ON_LS_PTD               IN NUMBER
629    ) RETURN NUMBER;
630 
631 FUNCTION ZaTxBal5_01032006(
632 -- Balances
633     p_TOT_INC_PTD                IN NUMBER
634    ,p_TOT_INC_YTD                IN NUMBER
635    ,p_TOT_NRFI_AN_INC_CMTD       IN NUMBER
636    ,p_TOT_NRFI_AN_INC_CYTD       IN NUMBER
637    ,p_TOT_NRFI_AN_INC_RUN        IN NUMBER
638    ,p_TOT_NRFI_AN_INC_PTD        IN NUMBER
639    ,p_TOT_NRFI_AN_INC_YTD        IN NUMBER
640    ,p_TOT_NRFI_INC_CMTD          IN NUMBER
641    ,p_TOT_NRFI_INC_CYTD          IN NUMBER
642    ,p_TOT_NRFI_INC_RUN           IN NUMBER
643    ,p_TOT_NRFI_INC_PTD           IN NUMBER
644    ,p_TOT_NRFI_INC_YTD           IN NUMBER
645    ,p_TOT_RFI_AN_INC_CMTD        IN NUMBER
646    ,p_TOT_RFI_AN_INC_CYTD        IN NUMBER
647    ,p_TOT_RFI_AN_INC_RUN         IN NUMBER
648    ,p_TOT_RFI_AN_INC_PTD         IN NUMBER
649    ,p_TOT_RFI_AN_INC_YTD         IN NUMBER
650    ,p_TOT_RFI_INC_CMTD           IN NUMBER
651    ,p_TOT_RFI_INC_CYTD           IN NUMBER
652    ,p_TOT_RFI_INC_RUN            IN NUMBER
653    ,p_TOT_RFI_INC_PTD            IN NUMBER
654    ,p_TOT_RFI_INC_YTD            IN NUMBER
655    ,p_TOT_SEA_WRK_DYS_WRK_YTD    IN NUMBER
656    ,p_TOT_SKL_ANN_INC_CMTD       IN NUMBER
657    ,p_TOT_SKL_INC_CMTD           IN NUMBER
658    ,p_TOT_TXB_INC_ITD            IN NUMBER
659    ) RETURN NUMBER;
660 
661 FUNCTION ZaTxBal6_01032006(
662 -- Balances
663     p_TOT_TXB_AB_CMTD            IN NUMBER
664    ,p_TOT_TXB_AB_RUN             IN NUMBER
665    ,p_TOT_TXB_AB_PTD             IN NUMBER
666    ,p_TOT_TXB_AB_YTD             IN NUMBER
667    ,p_TOT_TXB_AP_CMTD            IN NUMBER
668    ,p_TOT_TXB_AP_RUN             IN NUMBER
669    ,p_TOT_TXB_AP_PTD             IN NUMBER
670    ,p_TOT_TXB_AP_YTD             IN NUMBER
671    ,p_TOT_TXB_FB_CMTD            IN NUMBER
672    ,p_TOT_TXB_FB_CYTD            IN NUMBER
676    ,p_TOT_TXB_NI_CMTD            IN NUMBER
673    ,p_TOT_TXB_FB_RUN             IN NUMBER
674    ,p_TOT_TXB_FB_PTD             IN NUMBER
675    ,p_TOT_TXB_FB_YTD             IN NUMBER
677    ,p_TOT_TXB_NI_CYTD            IN NUMBER
678    ,p_TOT_TXB_NI_RUN             IN NUMBER
679    ,p_TOT_TXB_NI_PTD             IN NUMBER
680    ,p_TOT_TXB_NI_YTD             IN NUMBER
681    ,p_TOT_TXB_PO_CMTD            IN NUMBER
682    ,p_TOT_TXB_PO_PTD             IN NUMBER
683    ,p_TOT_TXB_PO_YTD             IN NUMBER
684    ,p_TOT_TXB_TA_CMTD            IN NUMBER
685    ,p_TOT_TXB_TA_CYTD            IN NUMBER
686    ,p_TOT_TXB_TA_PTD             IN NUMBER
687    ,p_TOT_TXB_TA_YTD             IN NUMBER
688    ) RETURN NUMBER;
689 
690 -- Main Tax Function
691 -- Called from Fast Formula
692 FUNCTION ZaTx_01032006(
693 /*  PARAMETERS */
694 -- Contexts
695    ASSIGNMENT_ACTION_ID    IN NUMBER
696   ,ASSIGNMENT_ID           IN NUMBER
697   ,PAYROLL_ACTION_ID       IN NUMBER
698   ,PAYROLL_ID              IN NUMBER
699 -- Out Parameters
700   , p_LibWrn               OUT NOCOPY VARCHAR2
701   , p_LibFpDR              OUT NOCOPY NUMBER
702   , p_LibFpNI              OUT NOCOPY NUMBER
703   , p_LibFpFB              OUT NOCOPY NUMBER
704   , p_LibFpTA              OUT NOCOPY NUMBER
705   , p_LibFpBP              OUT NOCOPY NUMBER
706   , p_LibFpAB              OUT NOCOPY NUMBER
707   , p_LibFpAP              OUT NOCOPY NUMBER
708   , p_LibFpPO              OUT NOCOPY NUMBER
709   , p_PayValSD             OUT NOCOPY NUMBER
710   , p_PayValEC             OUT NOCOPY NUMBER
711   , p_PayeVal              OUT NOCOPY NUMBER
712   , p_SiteVal              OUT NOCOPY NUMBER
713   , p_It3Ind               OUT NOCOPY NUMBER
714   , p_PfUpdFig             OUT NOCOPY NUMBER
715   , p_RaUpdFig             OUT NOCOPY NUMBER
716   , p_OUpdFig              OUT NOCOPY NUMBER
717   , p_NtiUpdFig            OUT NOCOPY NUMBER
718   , p_OvrWrn               OUT NOCOPY VARCHAR2
719   , p_LSDirNum             OUT NOCOPY VARCHAR2
720   , p_LSDirVal             OUT NOCOPY NUMBER
721   )RETURN NUMBER;
722 
723 
724 END py_za_tx_01032006;
725