[Home] [Help]
PACKAGE BODY: APPS.PY_ZA_TX_01032004
Source
1 PACKAGE BODY py_za_tx_01032004 AS
2 /* $Header: pyzat005.pkb 120.0 2005/05/29 10:30:14 appldev noship $ */
3 /* Copyright (c) Oracle Corporation 1999. All rights reserved. */
4 /*
5 PRODUCT
6 Oracle Payroll - ZA Localisation Tax Module
7
8 NAME
9 py_za_tx_01032004.pkb
10
11 DESCRIPTION
12 This is the main tax package as used in the ZA Localisation Tax Module.
13 The public functions in this package are not for client use and is
14 only referenced by the tax formulae in the Application.
15
16 PUBLIC FUNCTIONS
17 Descriptions in package header
18 ZaTxOvr_01032004
19 ZaTxGlb_01032004
20 ZaTxDbi_01032004
21 ZaTxBal1_01032004
22 ZaTxBal2_01032004
23 ZaTxBal3_01032004
24 ZaTx_01032004
25
26 PRIVATE FUNCTIONS
27 <none>
28
29
30 PRIVATE PROCEDURES
31 WrtHrTrc
32 Wrapper procedure for py_za_tx_utl_01032004.WriteHrTrace
33 NetTxbIncCalc
34 Procedure to calculate a Net Taxable Income figure used
35 to properly calculate the Skills Development Levy
36 LteCalc
37 A main tax calculation.
38 For a complete description see the tax module design document.
39 SeaCalc
40 A main tax calculation.
41 For a complete description see the tax module design document.
42 SitCalc
43 A main tax calculation.
44 For a complete description see the tax module design document.
45 DirCalc
46 A main tax calculation.
47 For a complete description see the tax module design document.
48 BasCalc
49 A main tax calculation.
50 For a complete description see the tax module design document.
51 CalCalc
52 A main tax calculation.
53 For a complete description see the tax module design document.
54 YtdCalc
55 A main tax calculation.
56 For a complete description see the tax module design document.
57 NorCalc
58 A main tax calculation.
59 For a complete description see the tax module design document.
60
61 NOTES
62 .
63
64 MODIFICATION HISTORY
65 Person Date Version Comments
66 --------- ---------------- ------- --------------------------------
67 A. Mahanty 14/04/2005 115.7 Bug 3491357 :BRA Enhancement
68 Balance Values retrieval modified.
69 J.N. Louw 07/01/2005 115.6 Bugs 4106307
70 4106240
71 R.V. Pahune 29/12/2004 115.5 disable the trace 'ZATAX'
72 J.N. Louw 18/12/2004 115.4 Bug 3931259
73 J.N. Louw 27/10/2004 115.3 Bug 3931277
74 J.N. Louw 24-02-2004 115.1 Added bal_LB_PYMNTS to
75 trc_NorIncYtd in NorCalc
76 J.N. Louw 10-02-2004 115.0 Next Version of Main ZA Tax
77 Package.
78 For detail history see
79 py_za_tx_01032002
80 */
81
82 -------------------------------------------------------------------------------
83 -- PACKAGE BODY --
84 -------------------------------------------------------------------------------
85
86 -------------------------------------------------------------------------------
87 -- WrtHrTrc
88 -- Wrapper for py_za_tx_utl_01032004.WriteHrTrace
89 -------------------------------------------------------------------------------
90 PROCEDURE WrtHrTrc(
91 p_Buf IN VARCHAR2
92 )
93 AS
94
95 BEGIN
96 py_za_tx_utl_01032004.WriteHrTrace(p_Buf);
97 END WrtHrTrc;
98
99 -------------------------------------------------------------------------------
100 -- NetTxbIncCalc
101 -- Calculates the net taxable income value for the calendar month
102 -------------------------------------------------------------------------------
103 PROCEDURE NetTxbIncCalc AS
104
105 -- Variable Declaration
106 nti_CurMthStrtDte DATE;
107 nti_CurMthEndDte DATE;
108 nti_SitFactor NUMBER;
109 nti_PerTypInc BALANCE DEFAULT 0;
110 nti_PerTypErn BALANCE DEFAULT 0;
111 nti_AnnTypErn BALANCE DEFAULT 0;
112 nti_PerPenFnd BALANCE DEFAULT 0;
113 nti_PerRfiCon BALANCE DEFAULT 0;
114 nti_PerPenFndMax BALANCE DEFAULT 0;
115 nti_PerPenFndAbm BALANCE DEFAULT 0;
116 nti_AnnPenFnd BALANCE DEFAULT 0;
117 nti_AnnRfiCon BALANCE DEFAULT 0;
118 nti_AnnPenFndMax BALANCE DEFAULT 0;
119 nti_AnnPenFndAbm BALANCE DEFAULT 0;
120 nti_PerArrPenFnd BALANCE DEFAULT 0;
121 nti_PerArrPenFndAbm BALANCE DEFAULT 0;
122 nti_PerRetAnu BALANCE DEFAULT 0;
123 nti_PerNrfiCon BALANCE DEFAULT 0;
124 nti_PerRetAnuMax BALANCE DEFAULT 0;
125 nti_PerRetAnuAbm BALANCE DEFAULT 0;
126 nti_PerArrRetAnu BALANCE DEFAULT 0;
127 nti_PerArrRetAnuAbm BALANCE DEFAULT 0;
128 nti_AnnArrPenFnd BALANCE DEFAULT 0;
129 nti_AnnArrPenFndAbm BALANCE DEFAULT 0;
130 nti_AnnRetAnu BALANCE DEFAULT 0;
131 nti_AnnNrfiCon BALANCE DEFAULT 0;
132 nti_AnnRetAnuMax BALANCE DEFAULT 0;
133 nti_AnnRetAnuAbm BALANCE DEFAULT 0;
134 nti_AnnArrRetAnu BALANCE DEFAULT 0;
135 nti_AnnArrRetAnuAbm BALANCE DEFAULT 0;
136 nti_MedAidAbm BALANCE DEFAULT 0;
137 nti_PerTotAbm BALANCE DEFAULT 0;
138 nti_AnnTotAbm BALANCE DEFAULT 0;
139 nti_TxbPerTypInc BALANCE DEFAULT 0;
140 nti_TxbAnnTypInc BALANCE DEFAULT 0;
141 nti_NetPerTxbInc BALANCE DEFAULT 0;
142 nti_NetAnnTxbInc BALANCE DEFAULT 0;
143 l_65Year DATE;
144 -- Fixed Pension Basis
145 nti_PerTxbPkg BALANCE DEFAULT 0;
146 nti_AnnTxbPkg BALANCE DEFAULT 0;
147 nti_TotPkg BALANCE DEFAULT 0;
148 nti_TxbFxdPrc BALANCE DEFAULT 0;
149 nti_PerRFITotPkgPTD BALANCE DEFAULT 0;
150 nti_PerNRFITotPkgPTD BALANCE DEFAULT 0;
151 nti_AnnRFITotPkgPTD BALANCE DEFAULT 0;
152 nti_AnnNRFITotPkgPTD BALANCE DEFAULT 0;
153 nti_PerRFITotPkgPTD_Upd BALANCE DEFAULT 0;
154 nti_PerNRFITotPkgPTD_Upd BALANCE DEFAULT 0;
155 nti_AnnRFITotPkgPTD_Upd BALANCE DEFAULT 0;
156 nti_AnnNRFITotPkgPTD_Upd BALANCE DEFAULT 0;
157
158
159 BEGIN
160 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',1);
161 -- Calculate the Current Effective Calendar Month to Date Start Date
162 --
163 SELECT trunc(dbi_SES_DTE,'Month')
164 INTO nti_CurMthStrtDte
165 FROM dual;
166
167 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',2);
168
169 -- Calculate the Current Effective Calendar Month to Date End Date
170 --
171 SELECT last_day(dbi_SES_DTE)
172 INTO nti_CurMthEndDte
173 FROM dual;
174
175 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',3);
176
177 -- Calculate Site Factor
178 --
179 -- Based on the number of days in the calendar year over days in the calendar month
180 nti_SitFactor := dbi_ZA_DYS_IN_YR / (nti_CurMthEndDte - nti_CurMthStrtDte + 1);
181
182 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',4);
183
184 WrtHrTrc('nti_CurMthEndDte: '||to_char(nti_CurMthEndDte,'DD/MM/YYYY'));
185 WrtHrTrc('nti_CurMthStrtDte: '||to_char(nti_CurMthStrtDte,'DD/MM/YYYY'));
186
187 -- Calculate the Taxable Portion of the Not-Fully Taxable Income Balances
188 --
189 bal_TA_RFI_CMTD := bal_TA_RFI_CMTD * glb_ZA_TRV_ALL_TX_PRC / 100;
190 bal_TA_NRFI_CMTD := bal_TA_NRFI_CMTD * glb_ZA_TRV_ALL_TX_PRC / 100;
191
192 bal_PO_RFI_CMTD := bal_PO_RFI_CMTD * glb_ZA_PBL_TX_PRC / 100;
193 bal_PO_NRFI_CMTD := bal_PO_NRFI_CMTD * glb_ZA_PBL_TX_PRC / 100;
194
195 -- Sum Period Type Income Calendar Month to Date Balances
196 --
197 nti_PerTypInc :=
198 ( bal_AST_PRCHD_RVAL_NRFI_CMTD + bal_AST_PRCHD_RVAL_RFI_CMTD
199 + bal_BP_CMTD
200 + bal_BUR_AND_SCH_NRFI_CMTD + bal_BUR_AND_SCH_RFI_CMTD
201 + bal_COMM_NRFI_CMTD + bal_COMM_RFI_CMTD
202 + bal_COMP_ALL_NRFI_CMTD + bal_COMP_ALL_RFI_CMTD
203 + bal_ENT_ALL_NRFI_CMTD + bal_ENT_ALL_RFI_CMTD
204 + bal_FREE_ACCOM_NRFI_CMTD + bal_FREE_ACCOM_RFI_CMTD
205 + bal_FREE_SERV_NRFI_CMTD + bal_FREE_SERV_RFI_CMTD
206 + bal_LB_PYMNTS_NRFI_CMTD + bal_LB_PYMNTS_RFI_CMTD
207 + bal_LOW_LOANS_NRFI_CMTD + bal_LOW_LOANS_RFI_CMTD
208 + bal_MED_PAID_NRFI_CMTD + bal_MED_PAID_RFI_CMTD
209 + bal_MLS_AND_VOUCH_NRFI_CMTD + bal_MLS_AND_VOUCH_RFI_CMTD
210 + bal_OTHER_TXB_ALL_NRFI_CMTD + bal_OTHER_TXB_ALL_RFI_CMTD
211 + bal_OVTM_NRFI_CMTD + bal_OVTM_RFI_CMTD
212 + bal_PO_NRFI_CMTD + bal_PO_RFI_CMTD
213 + bal_PYM_DBT_NRFI_CMTD + bal_PYM_DBT_RFI_CMTD
214 + bal_RES_TRD_NRFI_CMTD + bal_RES_TRD_RFI_CMTD
215 + bal_RGT_AST_NRFI_CMTD + bal_RGT_AST_RFI_CMTD
216 + bal_TA_NRFI_CMTD + bal_TA_RFI_CMTD
217 + bal_TEL_ALL_NRFI_CMTD + bal_TEL_ALL_RFI_CMTD
218 + bal_TOOL_ALL_NRFI_CMTD + bal_TOOL_ALL_RFI_CMTD
219 + bal_TXB_INC_NRFI_CMTD + bal_TXB_INC_RFI_CMTD
220 + bal_TXB_PEN_NRFI_CMTD + bal_TXB_PEN_RFI_CMTD
221 + bal_USE_VEH_NRFI_CMTD + bal_USE_VEH_RFI_CMTD
222 );
223
224 -- Annualise by the Site Factor the Period Type Income
225 --
226 nti_PerTypErn := nti_PerTypInc * nti_SitFactor;
227
228 -- Sum Annual Type Income Calendar Month to Date Balances
229 --
230 nti_AnnTypErn :=
231 nti_PerTypErn
232 + ( bal_AB_NRFI_CMTD + bal_AB_RFI_CMTD
233 + bal_AA_PRCHD_RVAL_NRFI_CMTD + bal_AA_PRCHD_RVAL_RFI_CMTD
234 + bal_ANN_BUR_AND_SCH_NRFI_CMTD + bal_ANN_BUR_AND_SCH_RFI_CMTD
235 + bal_ANN_LB_PYMNTS_NRFI_CMTD + bal_ANN_LB_PYMNTS_RFI_CMTD
236 + bal_ANN_PYM_DBT_NRFI_CMTD + bal_ANN_PYM_DBT_RFI_CMTD
237 + bal_AC_NRFI_CMTD + bal_AC_RFI_CMTD
238 + bal_ANU_FRM_RET_FND_NRFI_CMTD + bal_ANU_FRM_RET_FND_RFI_CMTD
239 + bal_ARES_TRD_NRFI_CMTD + bal_ARES_TRD_RFI_CMTD
240 + bal_PRCH_ANU_TXB_NRFI_CMTD + bal_PRCH_ANU_TXB_RFI_CMTD
241 + bal_TXB_AP_NRFI_CMTD + bal_TXB_AP_RFI_CMTD
242 );
243
244 -----------------------------
245 -- Calculate Abatement Values
246 -----------------------------
247 ----------------------
248 -- Fixed Pension Basis
249 ----------------------
250 IF dbi_ASG_PEN_BAS = '1' THEN
251 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',5);
252 -- Annualise Txb Pkg Cmp
253 nti_PerTxbPkg := bal_TXB_PKG_COMP_CMTD * nti_SitFactor;
254
255 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',6);
256
257 nti_AnnTxbPkg := nti_PerTxbPkg + bal_ANN_TXB_PKG_COMP_CMTD;
258
259 -- Check if there is taxable income in the package
260 IF nti_AnnTxbPkg <> 0 THEN
261 -- Check ASG_SALARY
262 IF dbi_TOT_PKG = -1 THEN
263 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',7);
264 nti_TotPkg := dbi_ASG_SAL * dbi_ASG_SAL_FCTR;
265 ELSE
266 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',8);
267 nti_TotPkg := dbi_TOT_PKG;
268 END IF;
269
270 -- Calculate the Taxable Fixed Percentage
271 nti_TxbFxdPrc := least((dbi_FXD_PRC * (nti_TotPkg / nti_AnnTxbPkg)), 100)/ 100;
272
273 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',9);
274
275 -- Calculate RFI and NRFI portions
276 -- Periodic
277 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',10);
278 nti_PerRFITotPkgPTD := bal_TXB_PKG_COMP_CMTD * nti_TxbFxdPrc;
279
280 nti_PerNRFITotPkgPTD := bal_TXB_PKG_COMP_CMTD - nti_PerRFITotPkgPTD;
281 -- Annual
282 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',11);
283 nti_AnnRFITotPkgPTD := bal_ANN_TXB_PKG_COMP_CMTD * nti_TxbFxdPrc;
284
285 nti_AnnNRFITotPkgPTD := bal_ANN_TXB_PKG_COMP_CMTD - nti_AnnRFITotPkgPTD;
286 END IF;
287
288 -- Calculate the Update values
289 -- Periodic
290 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',12);
291 nti_PerRFITotPkgPTD_Upd := nti_PerRFITotPkgPTD - bal_RFI_TOT_PKG_CMTD;
292
293 nti_PerNRFITotPkgPTD_Upd := nti_PerNRFITotPkgPTD - bal_NRFI_TOT_PKG_CMTD;
294
295 -- Annual
296 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',13);
297 nti_AnnRFITotPkgPTD_Upd := nti_AnnRFITotPkgPTD - bal_ANN_RFI_TOT_PKG_CMTD;
298
299 nti_AnnNRFITotPkgPTD_Upd := nti_AnnNRFITotPkgPTD - bal_ANN_NRFI_TOT_PKG_CMTD;
300
301 -- Add RFI upd values to RFI balance values
302 -- Periodic
303 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',14);
304 bal_TOT_RFI_INC_CMTD := bal_TOT_RFI_INC_CMTD
305 + bal_RFI_TOT_PKG_CMTD
306 + nti_PerRFITotPkgPTD_Upd;
307 -- Annual
308 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',15);
309 bal_TOT_RFI_AN_INC_CMTD := bal_TOT_RFI_AN_INC_CMTD
310 + bal_ANN_RFI_TOT_PKG_CMTD
311 + nti_AnnRFITotPkgPTD_Upd;
312 -- Add NRFI upd values to NRFI balance values
313 -- Periodic
314 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',16);
315 bal_TOT_NRFI_INC_CMTD := bal_TOT_NRFI_INC_CMTD
316 + bal_NRFI_TOT_PKG_CMTD
317 + nti_PerNRFITotPkgPTD_Upd;
318 -- Annual
319 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',17);
320 bal_TOT_NRFI_AN_INC_CMTD := bal_TOT_NRFI_AN_INC_CMTD
321 + bal_ANN_NRFI_TOT_PKG_CMTD
322 + nti_AnnNRFITotPkgPTD_Upd;
323
324 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',18);
325 END IF;
326 -------------------------
327 -- Pension Fund Abatement
328 -------------------------
329 ---------------------
330 -- Period Calculation
331 ---------------------
332 -- Annualise Period Pension Fund Contribution
333 nti_PerPenFnd := bal_CUR_PF_CMTD * nti_SitFactor;
334 -- Annualise Period Rfiable Contributions
335 nti_PerRfiCon := bal_TOT_RFI_INC_CMTD * nti_SitFactor;
336 ---------------------
337 -- Annual Calculation
338 ---------------------
339 -- Annual Pension Fund Contribution
340 nti_AnnPenFnd := nti_PerPenFnd + bal_ANN_PF_CMTD;
341 -- Annual Rfi Contribution
342 nti_AnnRfiCon := nti_PerRfiCon + bal_TOT_RFI_AN_INC_CMTD;
343
344 --------------------------------
345 -- Arrear Pension Fund Abatement
346 --------------------------------
347 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',19);
348 -------------
349 -- Excess ITD
350 -------------
351 nti_PerArrPenFnd := bal_EXC_ARR_PEN_ITD;
352 ------------------------------------
353 -- Current/Annual based on frequency
354 ------------------------------------
355 nti_PerArrPenFnd :=
356 nti_PerArrPenFnd + ( bal_ARR_PF_CMTD * nti_SitFactor);
357 ---------
358 -- Annual
359 ---------
360 nti_AnnArrPenFnd := nti_PerArrPenFnd + bal_ANN_ARR_PF_CMTD;
361
362 -------------------------------
363 -- Retirement Annuity Abatement
364 -------------------------------
365 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',20);
366 -------------
367 -- Current RA
368 -------------
369 -- Calculate RA Contribution
370 nti_PerRetAnu := bal_CUR_RA_CMTD * nti_SitFactor;
371 ---------------------
372 -- Current NRFI Contr
373 ---------------------
374 IF bal_CUR_PF_CMTD + bal_ANN_PF_CMTD = 0 THEN
375 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',21);
376 nti_PerNrfiCon := (
377 bal_TOT_RFI_INC_CMTD + bal_TOT_NRFI_INC_CMTD
378 )
379 * nti_SitFactor;
380 ELSE
381 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',22);
382 nti_PerNrfiCon := bal_TOT_NRFI_INC_CMTD * nti_SitFactor;
383 END IF;
384 ------------
385 -- Annual RA
386 ------------
387 nti_AnnRetAnu := nti_PerRetAnu + bal_ANN_RA_CMTD;
388
389 IF bal_CUR_PF_CMTD + bal_ANN_PF_CMTD = 0 THEN
390 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',23);
391
392 nti_AnnNrfiCon := nti_PerNrfiCon
393 + bal_TOT_NRFI_AN_INC_CMTD
394 + bal_TOT_RFI_AN_INC_CMTD;
395 ELSE
396 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',24);
397
398 nti_AnnNrfiCon := nti_PerNrfiCon + bal_TOT_NRFI_AN_INC_CMTD;
399 END IF;
400 --------------------------------------
401 -- Arrear Retirement Annuity Abatement
402 --------------------------------------
403 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',25);
404 -------------
405 -- Excess ITD
406 -------------
407 nti_PerArrRetAnu := bal_EXC_ARR_RA_ITD;
408 ------------------------------------
409 -- Current/Annual based on frequency
410 ------------------------------------
411 nti_PerArrRetAnu := nti_PerArrRetAnu
412 + ( bal_ARR_RA_CMTD
413 * nti_SitFactor
414 );
415 ---------
416 -- Annual
417 ---------
418 nti_AnnArrRetAnu := nti_PerArrRetAnu
419 + nti_AnnArrRetAnu
420 + bal_ANN_ARR_RA_CMTD;
421
422 ------------------------
423 -- Medical Aid Abatement
424 ------------------------
425 nti_MedAidAbm := bal_MED_CONTR_CMTD * nti_SitFactor;
426
427 ----------------------------------------------------------------------------
428 -- CALCULATE THE ABATEMENTS --
429 ----------------------------------------------------------------------------
430 -------------------------
431 -- Pension Fund Abatement
432 -------------------------
433 ---------------------
434 -- Period Calculation
435 ---------------------
436 -- Calculate the Pension Fund Maximum
437 nti_PerPenFndMax := GREATEST( glb_ZA_PF_AN_MX_ABT
438 , glb_ZA_PF_MX_PRC / 100 * nti_PerRfiCon
439 );
440 -- Calculate Period Pension Fund Abatement
441 nti_PerPenFndAbm := LEAST(nti_PerPenFnd, nti_PerPenFndMax);
442 ---------------------
443 -- Annual Calculation
444 ---------------------
445 -- Calculate the Pension Fund Maximum
446 nti_AnnPenFndMax := GREATEST( glb_ZA_PF_AN_MX_ABT
447 , glb_ZA_PF_MX_PRC / 100 * nti_AnnRfiCon
448 );
449
450 -- Calculate Annual Pension Fund Abatement
451 nti_AnnPenFndAbm := LEAST(nti_AnnPenFnd, nti_AnnPenFndMax);
452 --------------------------------
453 -- Arrear Pension Fund Abatement
454 --------------------------------
455 ---------------------
456 -- Period Calculation
457 ---------------------
458 nti_PerArrPenFndAbm := LEAST(nti_PerArrPenFnd, glb_ZA_ARR_PF_AN_MX_ABT);
459 ---------------------
460 -- Annual Calculation
461 ---------------------
462 nti_AnnArrPenFndAbm := LEAST(nti_AnnArrPenFnd, glb_ZA_ARR_PF_AN_MX_ABT);
463 ---------------------------------
464 -- Retirement Annnnuity Abatement
465 ---------------------------------
466 ---------------------
467 -- Period Calculation
468 ---------------------
469 -- Calculate the Retirement Annuity Maximum
470 nti_PerRetAnuMax := GREATEST( glb_ZA_PF_AN_MX_ABT
471 , glb_ZA_RA_AN_MX_ABT - nti_PerPenFndAbm
472 , glb_ZA_RA_MX_PRC / 100 * nti_PerNrfiCon
473 );
474
475 -- Calculate Retirement Annuity Abatement
476 nti_PerRetAnuAbm := LEAST(nti_PerRetAnu, nti_PerRetAnuMax);
477 ---------------------
478 -- Annual Calculation
479 ---------------------
480 nti_AnnRetAnuMax := GREATEST( glb_ZA_PF_AN_MX_ABT
481 , glb_ZA_RA_AN_MX_ABT - nti_AnnPenFndAbm
482 , glb_ZA_RA_MX_PRC / 100 * nti_AnnNrfiCon
483 );
484
485 -- Calculate Retirement Annuity Abatement
486 nti_AnnRetAnuAbm := LEAST(nti_AnnRetAnu, nti_AnnRetAnuMax);
487 --------------------------------------
488 -- Arrear Retirement Annuity Abatement
489 --------------------------------------
490 ---------------------
491 -- Period Calculation
492 ---------------------
493 nti_PerArrRetAnuAbm := LEAST(nti_PerArrRetAnu, glb_ZA_ARR_RA_AN_MX_ABT);
494 ---------------------
495 -- Annual Calculation
496 ---------------------
497 nti_AnnArrRetAnuAbm := LEAST(nti_AnnArrRetAnu, glb_ZA_ARR_RA_AN_MX_ABT);
498
499 -----------------------------------------------------------
500 -- Tax Rebates, Threshold Figure and Medical Aid Abatements
501 -----------------------------------------------------------
502 -- Calculate the assignments 65 Year Date
503 l_65Year := add_months(py_za_tx_01032004.dbi_PER_DTE_OF_BRTH,780);
504
505 IF l_65Year > dbi_ZA_TX_YR_END THEN
506 nti_MedAidAbm := 0;
507 END IF;
508
509 hr_utility.set_location('py_za_tx_01032004.NetTxbIncCalc',26);
510
511 -------------------
512 -- Total Abatements
513 -------------------
514 -- Period Total Abatement
515 nti_PerTotAbm := ( nti_PerPenFndAbm
516 + nti_PerArrPenFndAbm
517 + nti_PerRetAnuAbm
518 + nti_PerArrRetAnuAbm
519 + nti_MedAidAbm
520 );
521
522 -- Annual Total Abatements
523 nti_AnnTotAbm := ( nti_AnnPenFndAbm
524 + nti_AnnArrPenFndAbm
525 + nti_AnnRetAnuAbm
526 + nti_AnnArrRetAnuAbm
527 + nti_MedAidAbm
528 );
529
530 -- Calculate New O Figures
531 --
532 nti_TxbPerTypInc := nti_PerTypErn - nti_PerTotAbm;
533 nti_TxbAnnTypInc := nti_AnnTypErn - nti_AnnTotAbm;
534
535 -- Deannualise Period O Figure
536 --
537 nti_NetPerTxbInc := nti_TxbPerTypInc / nti_SitFactor;
538 -- Calculate the Net Taxable Annual Type Income
539 --
540 nti_NetAnnTxbInc := nti_TxbAnnTypInc - nti_TxbPerTypInc;
541
542 -- Calculate New Net Taxable Income Balance
543 --
544 trc_NtiUpdFig := (nti_NetPerTxbInc + nti_NetAnnTxbInc) - bal_NET_TXB_INC_CMTD;
545
546 WrtHrTrc('nti_SitFactor: '||to_char(nti_SitFactor));
547 WrtHrTrc('nti_PerTypErn: '||to_char(nti_PerTypErn));
548 WrtHrTrc('nti_AnnTypErn: '||to_char(nti_AnnTypErn));
549 WrtHrTrc('nti_NetPerTxbInc: '||to_char(nti_NetPerTxbInc));
550 WrtHrTrc('nti_NetAnnTxbInc: '||to_char(nti_NetAnnTxbInc));
551 WrtHrTrc('bal_NET_TXB_INC_CMTD: '||to_char(bal_NET_TXB_INC_CMTD));
552 WrtHrTrc('trc_NtiUpdFig: '||to_char(trc_NtiUpdFig));
553 WrtHrTrc(' ');
554 WrtHrTrc('-- Fixed Pension Basis');
555 WrtHrTrc('nti_PerTxbPkg: '||to_char(nti_PerTxbPkg ));
556 WrtHrTrc('nti_AnnTxbPkg: '||to_char(nti_AnnTxbPkg ));
557 WrtHrTrc('nti_TotPkg: '||to_char(nti_TotPkg ));
558 WrtHrTrc('nti_TxbFxdPrc: '||to_char(nti_TxbFxdPrc ));
559 WrtHrTrc('nti_PerRFITotPkgPTD: '||to_char(nti_PerRFITotPkgPTD ));
560 WrtHrTrc('nti_PerNRFITotPkgPTD: '||to_char(nti_PerNRFITotPkgPTD ));
561 WrtHrTrc('nti_AnnRFITotPkgPTD: '||to_char(nti_AnnRFITotPkgPTD ));
562 WrtHrTrc('nti_AnnNRFITotPkgPTD: '||to_char(nti_AnnNRFITotPkgPTD ));
563 WrtHrTrc('nti_PerRFITotPkgPTD_Upd: '||to_char(nti_PerRFITotPkgPTD_Upd ));
564 WrtHrTrc('nti_PerNRFITotPkgPTD_Upd: '||to_char(nti_PerNRFITotPkgPTD_Upd));
565 WrtHrTrc('nti_AnnRFITotPkgPTD_Upd: '||to_char(nti_AnnRFITotPkgPTD_Upd ));
566 WrtHrTrc('nti_AnnNRFITotPkgPTD_Upd: '||to_char(nti_AnnNRFITotPkgPTD_Upd));
567 WrtHrTrc(' ');
568 WrtHrTrc('nti_PerTotAbm: '||to_char(nti_PerTotAbm));
569 WrtHrTrc('nti_PerTotAbm consists of:');
570 WrtHrTrc('nti_PerPenFndAbm: '||to_char(nti_PerPenFndAbm));
571 WrtHrTrc('nti_PerArrPenFndAbm: '||to_char(nti_PerArrPenFndAbm));
572 WrtHrTrc('nti_PerRetAnuAbm: '||to_char(nti_PerRetAnuAbm));
573 WrtHrTrc('nti_PerArrRetAnuAbm: '||to_char(nti_PerArrRetAnuAbm));
574 WrtHrTrc('nti_MedAidAbm: '||to_char(nti_MedAidAbm));
575 WrtHrTrc(' ');
576 WrtHrTrc('nti_AnnTotAbm: '||to_char(nti_AnnTotAbm));
577 WrtHrTrc('nti_AnnTotAbm consists of:');
578 WrtHrTrc('nti_AnnPenFndAbm: '||to_char(nti_AnnPenFndAbm));
579 WrtHrTrc('nti_AnnArrPenFndAbm: '||to_char(nti_AnnArrPenFndAbm));
580 WrtHrTrc('nti_AnnRetAnuAbm: '||to_char(nti_AnnRetAnuAbm));
581 WrtHrTrc('nti_AnnArrRetAnuAbm: '||to_char(nti_AnnArrRetAnuAbm));
582 WrtHrTrc('nti_MedAidAbm: '||to_char(nti_MedAidAbm));
583
584
585 EXCEPTION
586 WHEN OTHERS THEN
587 IF xpt_Msg = 'No Error' THEN
588 xpt_Msg := 'NetTxbIncCalc: '||TO_CHAR(SQLCODE);
589 END IF;
590 RAISE xpt_E;
591 END NetTxbIncCalc;
592
593 -------------------------------------------------------------------------------
594 -- Tax Override Function
595 -------------------------------------------------------------------------------
596 FUNCTION ZaTxOvr_01032004(
597 p_OvrTyp IN VARCHAR2
598 ,p_TxOnNI IN NUMBER DEFAULT 0
599 ,p_TxOnAP IN NUMBER DEFAULT 0
600 ,p_TxPrc IN NUMBER DEFAULT 0
601 )RETURN NUMBER
602 AS
603 l_Dum NUMBER := 1;
604 BEGIN
605 -- Set the Override Global
606 trc_OvrTxCalc := TRUE;
607
608 -- Set Override Values
609 trc_OvrTyp := p_OvrTyp;
610
611 IF p_OvrTyp = 'V' THEN
612 trc_LibFpNI := p_TxOnNI;
613 trc_LibFpAP := p_TxOnAP;
614 ELSIF p_OvrTyp = 'P' THEN
615 trc_OvrPrc := p_TxPrc;
616 END IF;
617 RETURN l_Dum;
618
619 EXCEPTION
620 WHEN OTHERS THEN
621 hr_utility.set_message(801, 'ZaTxOvr_01032004: '||TO_CHAR(SQLCODE));
622 hr_utility.raise_error;
623 END ZaTxOvr_01032004;
624
625 -------------------------------------------------------------------------------
626 -- Main Tax Calculation Procedures --
627 -------------------------------------------------------------------------------
628 -------------------------------------------------------------------------------
629 -- LteCalc
630 -------------------------------------------------------------------------------
631 PROCEDURE LteCalc AS
632
633 -- Variables
634 l_EndDate DATE;
635 l_StrtDte DATE;
636 l_65Year DATE;
637 l_ZA_TX_YR_END DATE;
638 l_ZA_ADL_TX_RBT NUMBER;
639 l_ZA_PRI_TX_RBT NUMBER;
640 l_ZA_PRI_TX_THRSHLD NUMBER;
641 l_ZA_SC_TX_THRSHLD NUMBER;
642
643 l_Sl BOOLEAN;
644 l_Np BALANCE DEFAULT 0;
645
646
647 -- Private Functions
648 --
649 FUNCTION getBalVal
650 (p_BalNme IN pay_balance_types.balance_name%TYPE
651 ,p_EffDte IN DATE
652 ) RETURN NUMBER
653 AS
654 -- Variables
655 l_BalVal BALANCE;
656 l_BalTypId pay_balance_types.balance_type_id%TYPE;
657 l_dimension pay_balance_dimensions.dimension_name%TYPE ;
658
659 BEGIN
660 hr_utility.set_location('py_za_tx_01032004.LteCalc',1);
661 -- Get the Balance Type ID
662 SELECT pbt.balance_type_id
663 INTO l_BalTypId
664 FROM pay_balance_types pbt
665 WHERE pbt.balance_name = p_BalNme;
666
667 hr_utility.set_location('py_za_tx_01032004.LteCalc',2);
668
669 -- Get the Balance Value
670 -- 3491357
671 /*l_BalVal := py_za_bal.calc_asg_tax_ytd_date
672 ( con_ASG_ID
673 , l_BalTypId
674 , p_EffDte
675 );*/
676 l_dimension := '_ASG_TAX_YTD';
677 l_BalVal := py_za_bal.get_balance_value
678 ( con_ASG_ID
679 , l_BalTypId
680 , l_dimension
681 , p_EffDte
682 );
683
684 RETURN l_BalVal;
685 END getBalVal;
686
687 FUNCTION getBalVal2
688 (p_BalNme IN pay_balance_types.balance_name%TYPE
689 ,p_EffDte IN DATE
690 ) RETURN NUMBER
691 AS
692 -- Variables
693 l_BalVal BALANCE;
694 l_BalTypId pay_balance_types.balance_type_id%TYPE;
695 l_dimension pay_balance_dimensions.dimension_name%TYPE ;
696 BEGIN
697 hr_utility.set_location('py_za_tx_01032004.LteCalc',3);
698 -- Get the Balance Type ID
699 SELECT pbt.balance_type_id
700 INTO l_BalTypId
701 FROM pay_balance_types pbt
702 WHERE pbt.balance_name = p_BalNme;
703
704 hr_utility.set_location('py_za_tx_01032004.LteCalc',4);
705
706 -- Get the Balance Value
707 -- 3491357
708 /*l_BalVal := py_za_bal.calc_asg_itd_date
709 ( con_ASG_ID
710 , l_BalTypId
711 , p_EffDte
712 );*/
713 l_dimension := '_ASG_ITD';
714 l_BalVal := py_za_bal.get_balance_value
715 ( con_ASG_ID
716 , l_BalTypId
717 , l_dimension
718 , p_EffDte
719 );
720 RETURN l_BalVal;
721 END getBalVal2;
722
723 BEGIN
724 hr_utility.set_location('py_za_tx_01032004.LteCalc',5);
725 -- Does the Assignment have an OFigure?
726 --
727 IF bal_TOT_TXB_INC_ITD <= 0 THEN
728 hr_utility.set_location('py_za_tx_01032004.LteCalc',6);
729 -- Calculate the 'O' Figure
730 -- Set the Global
731 trc_CalTyp := 'PstCalc';
732 -- Set the Site Factor to the value of the previous tax year
733 l_StrtDte := dbi_ZA_ASG_TX_YR_STRT;
734 l_EndDate := dbi_ZA_ASG_TX_YR_END;
735
736 hr_utility.set_location('py_za_tx_01032004.LteCalc',8);
737
738 trc_SitFactor := (l_EndDate - l_StrtDte + 1) / py_za_tx_utl_01032004.DaysWorked;
739
740 hr_utility.set_location('py_za_tx_01032004.LteCalc',9);
741
742 -- Populate Local Balance Variables
743 -- The PTD Globals are used as dummy to store the previous tax year's
744 -- Balance values
745
746 bal_AB_NRFI_PTD := getBalVal('Annual Bonus NRFI',l_EndDate);
747 bal_AB_RFI_PTD := getBalVal('Annual Bonus RFI',l_EndDate);
748 bal_AA_PRCHD_RVAL_NRFI_PTD := getBalVal('Annual Asset Purchased at Reduced Value NRFI',l_EndDate);
749 bal_AA_PRCHD_RVAL_RFI_PTD := getBalVal('Annual Asset Purchased at Reduced Value RFI',l_EndDate);
750 bal_ANN_BUR_AND_SCH_NRFI_PTD := getBalVal('Annual Bursaries and Scholarships NRFI',l_EndDate);
751 bal_ANN_BUR_AND_SCH_RFI_PTD := getBalVal('Annual Bursaries and Scholarships RFI',l_EndDate);
752 bal_AC_NRFI_PTD := getBalVal('Annual Commission NRFI',l_EndDate);
753 bal_AC_RFI_PTD := getBalVal('Annual Commission RFI',l_EndDate);
754 bal_ANN_ARR_PF_PTD := getBalVal('Annual Arrear Pension Fund',l_EndDate);
755 bal_ANN_ARR_RA_PTD := getBalVal('Annual Arrear Retirement Annuity',l_EndDate);
756 bal_ANN_PF_PTD := getBalVal('Annual Pension Fund',l_EndDate);
757 bal_ANN_RA_PTD := getBalVal('Annual Retirement Annuity',l_EndDate);
758 bal_ANU_FRM_RET_FND_NRFI_PTD := getBalVal('Annuity from Retirement Fund NRFI',l_EndDate);
759 bal_ANU_FRM_RET_FND_RFI_PTD := getBalVal('Annuity from Retirement Fund RFI',l_EndDate);
760 bal_ARES_TRD_NRFI_PTD := getBalVal('Annual Restraint of Trade NRFI',l_EndDate);
761 bal_ARES_TRD_RFI_PTD := getBalVal('Annual Restraint of Trade RFI',l_EndDate);
762 bal_ARR_PF_PTD := getBalVal('Arrear Pension Fund',l_EndDate);
763 bal_ARR_RA_PTD := getBalVal('Arrear Retirement Annuity',l_EndDate);
764 bal_AST_PRCHD_RVAL_NRFI_PTD := getBalVal('Asset Purchased at Reduced Value NRFI',l_EndDate);
765 bal_AST_PRCHD_RVAL_RFI_PTD := getBalVal('Asset Purchased at Reduced Value RFI',l_EndDate);
766 bal_BP_PTD := getBalVal('Bonus Provision',l_EndDate);
767 bal_BUR_AND_SCH_NRFI_PTD := getBalVal('Bursaries and Scholarships NRFI',l_EndDate);
768 bal_BUR_AND_SCH_RFI_PTD := getBalVal('Bursaries and Scholarships RFI',l_EndDate);
769 bal_COMM_NRFI_PTD := getBalVal('Commission NRFI',l_EndDate);
770 bal_COMM_RFI_PTD := getBalVal('Commission RFI',l_EndDate);
771 bal_COMP_ALL_NRFI_PTD := getBalVal('Computer Allowance NRFI',l_EndDate);
772 bal_COMP_ALL_RFI_PTD := getBalVal('Computer Allowance RFI',l_EndDate);
773 bal_CUR_PF_PTD := getBalVal('Current Pension Fund',l_EndDate);
774 bal_CUR_RA_PTD := getBalVal('Current Retirement Annuity',l_EndDate);
775 bal_ENT_ALL_NRFI_PTD := getBalVal('Entertainment Allowance NRFI',l_EndDate);
776 bal_ENT_ALL_RFI_PTD := getBalVal('Entertainment Allowance RFI',l_EndDate);
777 bal_EXC_ARR_PEN_PTD := getBalVal2('Excess Arrear Pension',l_EndDate);
778 bal_EXC_ARR_RA_PTD := getBalVal2('Excess Arrear Retirement Annuity',l_EndDate);
779 bal_FREE_ACCOM_NRFI_PTD := getBalVal('Free or Cheap Accommodation NRFI',l_EndDate);
780 bal_FREE_ACCOM_RFI_PTD := getBalVal('Free or Cheap Accommodation RFI',l_EndDate);
781 bal_FREE_SERV_NRFI_PTD := getBalVal('Free or Cheap Services NRFI',l_EndDate);
782 bal_FREE_SERV_RFI_PTD := getBalVal('Free or Cheap Services RFI',l_EndDate);
783 bal_IC_PYMNTS_NRFI_PTD := getBalVal('Independent Contractor Payments NRFI',l_EndDate);
784 bal_IC_PYMNTS_RFI_PTD := getBalVal('Independent Contractor Payments RFI',l_EndDate);
785 bal_ANN_IC_PYMNTS_NRFI_PTD := getBalVal('Annual Independent Contractor Payments NRFI',l_EndDate);
786 bal_ANN_IC_PYMNTS_RFI_PTD := getBalVal('Annual Independent Contractor Payments RFI',l_EndDate);
787 bal_LB_PYMNTS_NRFI_PTD := getBalVal('Labour Broker Payments NRFI',l_EndDate);
788 bal_LB_PYMNTS_RFI_PTD := getBalVal('Labour Broker Payments RFI',l_EndDate);
789 bal_ANN_LB_PYMNTS_NRFI_PTD := getBalVal('Annual Labour Broker Payments NRFI',l_EndDate);
790 bal_ANN_LB_PYMNTS_RFI_PTD := getBalVal('Annual Labour Broker Payments RFI',l_EndDate);
791 bal_LOW_LOANS_NRFI_PTD := getBalVal('Low or Interest Free Loans NRFI',l_EndDate);
792 bal_LOW_LOANS_RFI_PTD := getBalVal('Low or Interest Free Loans RFI',l_EndDate);
793 bal_MLS_AND_VOUCH_NRFI_PTD := getBalVal('Meals Refreshments and Vouchers NRFI',l_EndDate);
794 bal_MLS_AND_VOUCH_RFI_PTD := getBalVal('Meals Refreshments and Vouchers RFI',l_EndDate);
795 bal_MED_CONTR_PTD := getBalVal('Medical Aid Contribution',l_EndDate);
796 bal_MED_PAID_NRFI_PTD := getBalVal('Medical Aid Paid on Behalf of Employee NRFI',l_EndDate);
797 bal_MED_PAID_RFI_PTD := getBalVal('Medical Aid Paid on Behalf of Employee RFI',l_EndDate);
798 bal_OTHER_TXB_ALL_NRFI_PTD := getBalVal('Other Taxable Allowance NRFI',l_EndDate);
799 bal_OTHER_TXB_ALL_RFI_PTD := getBalVal('Other Taxable Allowance RFI',l_EndDate);
800 bal_OVTM_NRFI_PTD := getBalVal('Overtime NRFI',l_EndDate);
801 bal_OVTM_RFI_PTD := getBalVal('Overtime RFI',l_EndDate);
802 bal_PYM_DBT_NRFI_PTD := getBalVal('Payment of Employee Debt NRFI',l_EndDate);
803 bal_PYM_DBT_RFI_PTD := getBalVal('Payment of Employee Debt RFI',l_EndDate);
804 bal_ANN_PYM_DBT_NRFI_PTD := getBalVal('Annual Payment of Employee Debt NRFI',l_EndDate);
805 bal_ANN_PYM_DBT_RFI_PTD := getBalVal('Annual Payment of Employee Debt RFI',l_EndDate);
806 bal_PO_NRFI_PTD := getBalVal('Public Office Allowance NRFI',l_EndDate);
807 bal_PO_RFI_PTD := getBalVal('Public Office Allowance RFI',l_EndDate);
808 bal_PRCH_ANU_TXB_NRFI_PTD := getBalVal('Purchased Annuity Taxable NRFI',l_EndDate);
809 bal_PRCH_ANU_TXB_RFI_PTD := getBalVal('Purchased Annuity Taxable RFI',l_EndDate);
810 bal_RES_TRD_NRFI_PTD := getBalVal('Restraint of Trade NRFI',l_EndDate);
811 bal_RES_TRD_RFI_PTD := getBalVal('Restraint of Trade RFI',l_EndDate);
812 bal_RGT_AST_NRFI_PTD := getBalVal('Right of Use of Asset NRFI',l_EndDate);
813 bal_RGT_AST_RFI_PTD := getBalVal('Right of Use of Asset RFI',l_EndDate);
814 bal_TXB_AP_NRFI_PTD := getBalVal('Taxable Annual Payment NRFI',l_EndDate);
815 bal_TXB_AP_RFI_PTD := getBalVal('Taxable Annual Payment RFI',l_EndDate);
816 bal_TXB_INC_NRFI_PTD := getBalVal('Taxable Income NRFI',l_EndDate);
817 bal_TXB_INC_RFI_PTD := getBalVal('Taxable Income RFI',l_EndDate);
818 bal_TXB_PEN_NRFI_PTD := getBalVal('Taxable Pension NRFI',l_EndDate);
819 bal_TXB_PEN_RFI_PTD := getBalVal('Taxable Pension RFI',l_EndDate);
820 bal_TEL_ALL_NRFI_PTD := getBalVal('Telephone Allowance NRFI',l_EndDate);
821 bal_TEL_ALL_RFI_PTD := getBalVal('Telephone Allowance RFI',l_EndDate);
822 bal_TOOL_ALL_NRFI_PTD := getBalVal('Tool Allowance NRFI',l_EndDate);
823 bal_TOOL_ALL_RFI_PTD := getBalVal('Tool Allowance RFI',l_EndDate);
824 bal_TOT_INC_PTD := getBalVal('Total Income',l_EndDate);
825 bal_TOT_NRFI_AN_INC_PTD := getBalVal('Total NRFIable Annual Income',l_EndDate);
826 bal_TOT_NRFI_INC_PTD := getBalVal('Total NRFIable Income',l_EndDate);
827 bal_TOT_RFI_AN_INC_PTD := getBalVal('Total RFIable Annual Income',l_EndDate);
828 bal_TOT_RFI_INC_PTD := getBalVal('Total RFIable Income',l_EndDate);
829 bal_TA_NRFI_PTD := getBalVal('Travel Allowance NRFI',l_EndDate);
830 bal_TA_RFI_PTD := getBalVal('Travel Allowance RFI',l_EndDate);
831 bal_USE_VEH_NRFI_PTD := getBalVal('Use of Motor Vehicle NRFI',l_EndDate);
832 bal_USE_VEH_RFI_PTD := getBalVal('Use of Motor Vehicle RFI',l_EndDate);
833 bal_RFI_TOT_PKG_PTD := getBalVal('RFIable Total Package',l_EndDate);
834 bal_NRFI_TOT_PKG_PTD := getBalVal('NRFIable Total Package',l_EndDate);
835 bal_ANN_RFI_TOT_PKG_PTD := getBalVal('Annual RFIable Total Package',l_EndDate);
836 bal_ANN_NRFI_TOT_PKG_PTD := getBalVal('Annual NRFIable Total Package',l_EndDate);
837
838 hr_utility.set_location('py_za_tx_01032004.LteCalc',10);
839
840 -- Update Globals with Correct Taxable Values
841 py_za_tx_utl_01032004.TrvAll;
842
843 bal_PO_NRFI_PTD := bal_PO_NRFI_PTD
844 * py_za_tx_utl_01032004.GlbVal('ZA_PUBL_TAX_PERC',l_EndDate)
845 / 100;
846 bal_PO_RFI_PTD := bal_PO_RFI_PTD
847 * py_za_tx_utl_01032004.GlbVal('ZA_PUBL_TAX_PERC',l_EndDate)
848 / 100;
849
850 hr_utility.set_location('py_za_tx_01032004.LteCalc',11);
851
852 -- Rebates
853 py_za_tx_utl_01032004.SetRebates;
854 -- Abatements
855 py_za_tx_utl_01032004.Abatements;
856
857 hr_utility.set_location('py_za_tx_01032004.LteCalc',12);
858
859 -- Base Earnings
860 --
861 trc_BseErn :=
862 (( bal_AST_PRCHD_RVAL_NRFI_PTD + bal_AST_PRCHD_RVAL_RFI_PTD
863 + bal_BP_PTD
864 + bal_BUR_AND_SCH_NRFI_PTD + bal_BUR_AND_SCH_RFI_PTD
865 + bal_COMM_NRFI_PTD + bal_COMM_RFI_PTD
866 + bal_COMP_ALL_NRFI_PTD + bal_COMP_ALL_RFI_PTD
867 + bal_ENT_ALL_NRFI_PTD + bal_ENT_ALL_RFI_PTD
868 + bal_FREE_ACCOM_NRFI_PTD + bal_FREE_ACCOM_RFI_PTD
869 + bal_FREE_SERV_NRFI_PTD + bal_FREE_SERV_RFI_PTD
870 + bal_IC_PYMNTS_NRFI_PTD + bal_IC_PYMNTS_RFI_PTD
871 + bal_LB_PYMNTS_NRFI_PTD + bal_LB_PYMNTS_RFI_PTD
872 + bal_LOW_LOANS_NRFI_PTD + bal_LOW_LOANS_RFI_PTD
873 + bal_MED_PAID_NRFI_PTD + bal_MED_PAID_RFI_PTD
874 + bal_MLS_AND_VOUCH_NRFI_PTD + bal_MLS_AND_VOUCH_RFI_PTD
875 + bal_OTHER_TXB_ALL_NRFI_PTD + bal_OTHER_TXB_ALL_RFI_PTD
876 + bal_OVTM_NRFI_PTD + bal_OVTM_RFI_PTD
877 + bal_PO_NRFI_PTD + bal_PO_RFI_PTD
878 + bal_PYM_DBT_NRFI_PTD + bal_PYM_DBT_RFI_PTD
879 + bal_RES_TRD_NRFI_PTD + bal_RES_TRD_RFI_PTD
880 + bal_RGT_AST_NRFI_PTD + bal_RGT_AST_RFI_PTD
881 + bal_TA_NRFI_PTD + bal_TA_RFI_PTD
882 + bal_TEL_ALL_NRFI_PTD + bal_TEL_ALL_RFI_PTD
883 + bal_TOOL_ALL_NRFI_PTD + bal_TOOL_ALL_RFI_PTD
884 + bal_TXB_INC_NRFI_PTD + bal_TXB_INC_RFI_PTD
885 + bal_TXB_PEN_NRFI_PTD + bal_TXB_PEN_RFI_PTD
886 + bal_USE_VEH_NRFI_PTD + bal_USE_VEH_RFI_PTD)
887 * trc_SitFactor)
888 + bal_AB_NRFI_PTD + bal_AB_RFI_PTD
889 + bal_AA_PRCHD_RVAL_NRFI_PTD + bal_AA_PRCHD_RVAL_RFI_PTD
890 + bal_ANN_BUR_AND_SCH_NRFI_PTD + bal_ANN_BUR_AND_SCH_RFI_PTD
891 + bal_ANN_IC_PYMNTS_NRFI_PTD + bal_ANN_IC_PYMNTS_RFI_PTD
892 + bal_ANN_LB_PYMNTS_NRFI_PTD + bal_ANN_LB_PYMNTS_RFI_PTD
893 + bal_ANN_PYM_DBT_NRFI_PTD + bal_ANN_PYM_DBT_RFI_PTD
894 + bal_AC_NRFI_PTD + bal_AC_RFI_PTD
895 + bal_ANU_FRM_RET_FND_NRFI_PTD + bal_ANU_FRM_RET_FND_RFI_PTD
896 + bal_ARES_TRD_NRFI_PTD + bal_ARES_TRD_RFI_PTD
897 + bal_PRCH_ANU_TXB_NRFI_PTD + bal_PRCH_ANU_TXB_RFI_PTD
898 + bal_TXB_AP_NRFI_PTD + bal_TXB_AP_RFI_PTD;
899
900 -- Taxable Base Income
901 trc_TxbBseInc := trc_BseErn - trc_AnnTotAbm;
902 -- Threshold Check
903 IF trc_TxbBseInc >= trc_Threshold THEN
904 hr_utility.set_location('py_za_tx_01032004.LteCalc',13);
905 -- Tax Liability
906 trc_TotLibBse := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbBseInc);
907 ELSE
908 hr_utility.set_location('py_za_tx_01032004.LteCalc',14);
909 trc_TotLibBse := 0;
910 END IF;
911
912 -- Populate the O Figure
913 trc_OUpdFig := trc_TxbBseInc - bal_TOT_TXB_INC_ITD;
914
915 -- Base Income
916 WrtHrTrc('trc_BseErn: '||to_char(trc_BseErn));
917 WrtHrTrc('trc_TxbBseInc: '||to_char(trc_TxbBseInc));
918 WrtHrTrc('trc_TotLibBse: '||to_char(trc_TotLibBse));
919
920 ELSE
921 hr_utility.set_location('py_za_tx_01032004.LteCalc',15);
922 -- Use the 'O' Figure as Base
923 -- Set the Global
924 trc_CalTyp := 'LteCalc';
925
926 -- Get the assignment's previous tax year's
927 -- threshold and rebate figures
928 -- Employee Tax Year Start and End Dates
929 l_EndDate := dbi_ZA_ASG_TX_YR_END;
930
931 hr_utility.set_location('py_za_tx_01032004.LteCalc',16);
932
933 -- Global Values
934 l_ZA_TX_YR_END := l_EndDate;
935 l_ZA_ADL_TX_RBT := py_za_tx_utl_01032004.GlbVal('ZA_ADDITIONAL_TAX_REBATE',l_EndDate);
936 l_ZA_PRI_TX_RBT := py_za_tx_utl_01032004.GlbVal('ZA_PRIMARY_TAX_REBATE',l_EndDate);
937 l_ZA_PRI_TX_THRSHLD := py_za_tx_utl_01032004.GlbVal('ZA_PRIM_TAX_THRESHOLD',l_EndDate);
938 l_ZA_SC_TX_THRSHLD := py_za_tx_utl_01032004.GlbVal('ZA_SEC_TAX_THRESHOLD',l_EndDate);
939
940 -- Calculate the assignments 65 Year Date
941 l_65Year := add_months(dbi_PER_DTE_OF_BRTH,780);
942
943 IF l_65Year <= l_ZA_TX_YR_END THEN
944 hr_utility.set_location('py_za_tx_01032004.LteCalc',17);
945 -- give the extra abatement
946 trc_Rebate := l_ZA_PRI_TX_RBT + l_ZA_ADL_TX_RBT;
947 trc_Threshold := l_ZA_SC_TX_THRSHLD;
948 ELSE
949 hr_utility.set_location('py_za_tx_01032004.LteCalc',18);
950 -- not eligable for extra abatement
951 trc_Rebate := l_ZA_PRI_TX_RBT;
952 trc_Threshold := l_ZA_PRI_TX_THRSHLD;
953 END IF;
954
955
956 -- Base Earnings
957 --
958 -- Take the OFigure as Taxable Base Income
959 trc_TxbBseInc := bal_TOT_TXB_INC_ITD;
960 -- Threshold Check
961 IF trc_TxbBseInc >= trc_Threshold THEN
962 hr_utility.set_location('py_za_tx_01032004.LteCalc',19);
963 -- Tax Liability
964 trc_TotLibBse := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbBseInc);
965 ELSE
966 hr_utility.set_location('py_za_tx_01032004.LteCalc',20);
967 trc_TotLibBse := 0;
968 END IF;
969
970 -- Base Income
971 WrtHrTrc('trc_BseErn: '||to_char(trc_BseErn));
972 WrtHrTrc('trc_TxbBseInc: '||to_char(trc_TxbBseInc));
973 WrtHrTrc('trc_TotLibBse: '||to_char(trc_TotLibBse));
974 END IF;
975
976 -- Override the Global
977 trc_CalTyp := 'LteCalc';
978 -- Set the SitFactor back to 1
979 trc_SitFactor := 1;
980
981 hr_utility.set_location('py_za_tx_01032004.LteCalc',21);
982
983 -- Rebates
984 py_za_tx_utl_01032004.SetRebates;
985 -- Abatements
986 py_za_tx_utl_01032004.Abatements;
987
988 hr_utility.set_location('py_za_tx_01032004.LteCalc',22);
989
990 -- Update Global Balance Values with correct TAXABLE values
991 py_za_tx_utl_01032004.TrvAll;
992
993 bal_PO_RFI_YTD := bal_PO_RFI_YTD * glb_ZA_PBL_TX_PRC / 100;
994 bal_PO_NRFI_YTD := bal_PO_NRFI_YTD * glb_ZA_PBL_TX_PRC / 100;
995
996 -- Normal Income
997 --
998 -- Ytd Normal Income
999 trc_NorIncYtd :=
1000 ( bal_COMM_NRFI_YTD + bal_COMM_RFI_YTD
1001 + bal_COMP_ALL_NRFI_YTD + bal_COMP_ALL_RFI_YTD
1002 + bal_ENT_ALL_NRFI_YTD + bal_ENT_ALL_RFI_YTD
1003 + bal_IC_PYMNTS_NRFI_YTD + bal_IC_PYMNTS_RFI_YTD
1004 + bal_LB_PYMNTS_NRFI_YTD + bal_LB_PYMNTS_RFI_YTD
1005 + bal_OTHER_TXB_ALL_NRFI_YTD + bal_OTHER_TXB_ALL_RFI_YTD
1006 + bal_OVTM_NRFI_YTD + bal_OVTM_RFI_YTD
1007 + bal_RES_TRD_NRFI_YTD + bal_RES_TRD_RFI_YTD
1008 + bal_TXB_INC_NRFI_YTD + bal_TXB_INC_RFI_YTD
1009 + bal_TXB_PEN_NRFI_YTD + bal_TXB_PEN_RFI_YTD
1010 + bal_TEL_ALL_NRFI_YTD + bal_TEL_ALL_RFI_YTD
1011 + bal_TOOL_ALL_NRFI_YTD + bal_TOOL_ALL_RFI_YTD
1012 );
1013 -- Skip the calculation if there is No Income
1014 IF trc_NorIncYtd <> 0 THEN
1015 hr_utility.set_location('py_za_tx_01032004.LteCalc',23);
1016 -- Normal Earnings
1017 trc_NorErn := trc_NorIncYtd + trc_TxbBseInc;
1018 -- Taxable Normal Income
1019 trc_TxbNorInc := trc_NorErn - trc_PerTotAbm;
1020 -- Threshold Check
1021 IF trc_TxbNorInc >= trc_Threshold THEN
1022 hr_utility.set_location('py_za_tx_01032004.LteCalc',24);
1023 -- Tax Liability
1024 trc_TotLibNI := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbNorInc);
1025 trc_LibFyNI := trc_TotLibNI - least(trc_TotLibNI,trc_TotLibBse);
1026 trc_TotLibNI := greatest(trc_TotLibNI,trc_TotLibBse);
1027 trc_LibFpNI := trc_LibFyNI - bal_TX_ON_NI_YTD;
1028 ELSE
1029 hr_utility.set_location('py_za_tx_01032004.LteCalc',25);
1030 -- Set Cascade Figures and Refund
1031 trc_TotLibNI := 0;
1032 trc_LibFpNI := -1 * bal_TX_ON_NI_YTD;
1033 trc_LibFpNIOvr := TRUE;
1034 END IF;
1035 ELSE
1036 hr_utility.set_location('py_za_tx_01032004.LteCalc',26);
1037 -- Set Cascade Figures and Refund
1038 trc_NorErn := trc_TxbBseInc;
1039 trc_TxbNorInc := 0;
1040 trc_TotLibNI := trc_TotLibBse;
1041 trc_LibFpNI := -1 * bal_TX_ON_NI_YTD;
1042 trc_LibFpNIOvr := TRUE;
1043 END IF;
1044
1045 -- Fringe Benefits
1046 --
1047 -- Ytd Fringe Benefits
1048 trc_FrnBenYtd :=
1049 ( bal_AST_PRCHD_RVAL_NRFI_YTD + bal_AST_PRCHD_RVAL_RFI_YTD
1050 + bal_BUR_AND_SCH_NRFI_YTD + bal_BUR_AND_SCH_RFI_YTD
1051 + bal_FREE_ACCOM_NRFI_YTD + bal_FREE_ACCOM_RFI_YTD
1052 + bal_FREE_SERV_NRFI_YTD + bal_FREE_SERV_RFI_YTD
1053 + bal_LOW_LOANS_NRFI_YTD + bal_LOW_LOANS_RFI_YTD
1054 + bal_MLS_AND_VOUCH_NRFI_YTD + bal_MLS_AND_VOUCH_RFI_YTD
1055 + bal_MED_PAID_NRFI_YTD + bal_MED_PAID_RFI_YTD
1056 + bal_PYM_DBT_NRFI_YTD + bal_PYM_DBT_RFI_YTD
1057 + bal_RGT_AST_NRFI_YTD + bal_RGT_AST_RFI_YTD
1058 + bal_USE_VEH_NRFI_YTD + bal_USE_VEH_RFI_YTD
1059 );
1060 -- Skip the calculation if there is No Income
1061 IF trc_FrnBenYtd <> 0 THEN
1062 hr_utility.set_location('py_za_tx_01032004.LteCalc',27);
1063 -- Fringe Benefit Earnings
1064 trc_FrnBenErn := trc_FrnBenYtd + trc_NorErn;
1065 -- Taxable Fringe Income
1066 trc_TxbFrnInc := trc_FrnBenErn - trc_PerTotAbm;
1067 -- Threshold Check
1068 IF trc_TxbFrnInc >= trc_Threshold THEN
1069 hr_utility.set_location('py_za_tx_01032004.LteCalc',28);
1070 -- Tax Liability
1071 trc_TotLibFB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbFrnInc);
1072 trc_LibFyFB := trc_TotLibFB - least(trc_TotLibFB,trc_TotLibNI);
1073 trc_TotLibFB := greatest(trc_TotLibFB,trc_TotLibNI);
1074 trc_LibFpFB := trc_LibFyFB - bal_TX_ON_FB_YTD;
1075 ElSE
1076 hr_utility.set_location('py_za_tx_01032004.LteCalc',29);
1077 -- Set Cascade Figures and Refund
1078 trc_TotLibFB := trc_TotLibNI;
1079 trc_LibFpFB := -1 * bal_TX_ON_FB_YTD;
1080 trc_LibFpFBOvr := TRUE;
1081 END IF;
1082 ELSE
1083 hr_utility.set_location('py_za_tx_01032004.LteCalc',30);
1084 -- Set Cascade Figures and Refund
1085 trc_FrnBenErn := trc_NorErn;
1086 trc_TxbFrnInc := trc_TxbNorInc;
1087 trc_TotLibFB := trc_TotLibNI;
1088 trc_LibFpFB := -1 * bal_TX_ON_FB_YTD;
1089 trc_LibFpFBOvr := TRUE;
1090 END IF;
1091
1092 -- Travel Allowance
1093 --
1094 -- Ytd Travel Allowance
1095 trc_TrvAllYtd := bal_TA_NRFI_YTD + bal_TA_RFI_YTD;
1096 -- Skip the calculation if there is No Income
1097 IF trc_TrvAllYtd <> 0 THEN
1098 hr_utility.set_location('py_za_tx_01032004.LteCalc',31);
1099 -- Travel Earnings
1100 trc_TrvAllErn := trc_TrvAllYtd + trc_FrnBenErn;
1101 -- Taxable Travel Income
1102 trc_TxbTrvInc := trc_TrvAllErn - trc_PerTotAbm;
1103 -- Threshold Check
1104 IF trc_TxbTrvInc >= trc_Threshold THEN
1105 hr_utility.set_location('py_za_tx_01032004.LteCalc',32);
1106 -- Tax Liability
1107 trc_TotLibTA := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbTrvInc);
1108 trc_LibFyTA := trc_TotLibTA - least(trc_TotLibTA,trc_TotLibFB);
1109 trc_TotLibTA := greatest(trc_TotLibTA,trc_TotLibFB);
1110 trc_LibFpTA := trc_LibFyTA - bal_TX_ON_TA_YTD;
1111 ELSE
1112 hr_utility.set_location('py_za_tx_01032004.LteCalc',33);
1113 -- Set Cascade Figures and Refund
1114 trc_TotLibTA := trc_TotLibFB;
1115 trc_LibFpTA := -1 * bal_TX_ON_TA_YTD;
1116 trc_LibFpTAOvr := TRUE;
1117 END IF;
1118 ELSE
1119 hr_utility.set_location('py_za_tx_01032004.LteCalc',34);
1120 -- Set Cascade Figures and Refund
1121 trc_TrvAllErn := trc_FrnBenErn;
1122 trc_TxbTrvInc := trc_TxbFrnInc;
1123 trc_TotLibTA := trc_TotLibFB;
1124 trc_LibFpTA := -1 * bal_TX_ON_TA_YTD;
1125 trc_LibFpTAOvr := TRUE;
1126 END IF;
1127
1128 -- Annual Bonus
1129 --
1130 -- Ytd Annual Bonus
1131 trc_AnnBonYtd := bal_AB_NRFI_YTD + bal_AB_RFI_YTD;
1132 -- Skip the calculation if there is No Income
1133 IF trc_AnnBonYtd <> 0 THEN
1134 hr_utility.set_location('py_za_tx_01032004.LteCalc',35);
1135 -- Annual Bonus Earnings
1136 trc_AnnBonErn := trc_AnnBonYtd + trc_TrvAllErn;
1137 -- Taxable Annual Bonus Income
1138 trc_TxbAnnBonInc := trc_AnnBonErn - trc_AnnTotAbm;
1139 -- Threshold Check
1140 IF trc_TxbAnnBonInc >= trc_Threshold THEN
1141 hr_utility.set_location('py_za_tx_01032004.LteCalc',36);
1142 -- Tax Liability
1143 trc_TotLibAB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnBonInc);
1144 trc_LibFyAB := trc_TotLibAB - least(trc_TotLibAB,trc_TotLibTA);
1145 trc_TotLibAB := greatest(trc_TotLibAB,trc_TotLibTA);
1146 trc_LibFpAB := trc_LibFyAB - bal_TX_ON_AB_YTD;
1147 ELSE
1148 hr_utility.set_location('py_za_tx_01032004.LteCalc',39);
1149 -- Set Cascade Figures and Refund
1150 trc_TotLibAB := trc_TotLibTA;
1151 trc_LibFpAB := -1 * bal_TX_ON_AB_YTD;
1152 trc_LibFpABOvr := TRUE;
1153 END IF;
1154 ELSE
1155 hr_utility.set_location('py_za_tx_01032004.LteCalc',40);
1156 -- Set Cascade Figures and Refund
1157 trc_AnnBonErn := trc_TrvAllErn;
1158 trc_TxbAnnBonInc := trc_TxbTrvInc;
1159 trc_TotLibAB := trc_TotLibTA;
1160 trc_LibFpAB := -1 * bal_TX_ON_AB_YTD;
1161 trc_LibFpABOvr := TRUE;
1162 END IF;
1163
1164 -- Annual Payments
1165 --
1166 -- Ytd Annual Payments
1167 trc_AnnPymYtd :=
1168 ( bal_AA_PRCHD_RVAL_NRFI_YTD + bal_AA_PRCHD_RVAL_RFI_YTD
1169 + bal_ANN_BUR_AND_SCH_NRFI_YTD + bal_ANN_BUR_AND_SCH_RFI_YTD
1170 + bal_ANN_IC_PYMNTS_NRFI_YTD + bal_ANN_IC_PYMNTS_RFI_YTD
1171 + bal_ANN_LB_PYMNTS_NRFI_YTD + bal_ANN_LB_PYMNTS_RFI_YTD
1172 + bal_ANN_PYM_DBT_NRFI_YTD + bal_ANN_PYM_DBT_RFI_YTD
1173 + bal_AC_NRFI_YTD + bal_AC_RFI_YTD
1174 + bal_ANU_FRM_RET_FND_NRFI_YTD + bal_ANU_FRM_RET_FND_RFI_YTD
1175 + bal_ARES_TRD_NRFI_YTD + bal_ARES_TRD_RFI_YTD
1176 + bal_PRCH_ANU_TXB_NRFI_YTD + bal_PRCH_ANU_TXB_RFI_YTD
1177 + bal_TXB_AP_NRFI_YTD + bal_TXB_AP_RFI_YTD
1178 );
1179 -- Skip the calculation if there is No Income
1180 IF trc_AnnPymYtd <> 0 THEN
1181 hr_utility.set_location('py_za_tx_01032004.LteCalc',41);
1182 -- Annual Payments Earnings
1183 trc_AnnPymErn := trc_AnnPymYtd + trc_AnnBonErn;
1184 -- Taxable Annual Payments Income
1185 trc_TxbAnnPymInc := trc_AnnPymErn - trc_AnnTotAbm;
1186 -- Threshold Check
1187 IF trc_TxbAnnPymInc >= trc_Threshold THEN
1188 hr_utility.set_location('py_za_tx_01032004.LteCalc',42);
1189 -- Tax Liability
1190 trc_TotLibAP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnPymInc);
1191 trc_LibFyAP := trc_TotLibAP - least(trc_TotLibAP,trc_TotLibAB);
1192 trc_TotLibAP := greatest(trc_TotLibAP,trc_TotLibAB);
1193 trc_LibFpAP := trc_LibFyAP - bal_TX_ON_AP_YTD;
1194 ELSE
1195 hr_utility.set_location('py_za_tx_01032004.LteCalc',45);
1196 -- Set Cascade Figures and Refund
1197 trc_TotLibAP := trc_TotLibAB;
1198 trc_LibFpAP := -1 * bal_TX_ON_AP_YTD;
1199 trc_LibFpAPOvr := TRUE;
1200 END IF;
1201 ELSE
1202 hr_utility.set_location('py_za_tx_01032004.LteCalc',46);
1203 -- Set Cascade Figures and Refund
1204 trc_AnnPymErn := trc_AnnBonErn;
1205 trc_TxbAnnPymInc := trc_TxbAnnBonInc;
1206 trc_TotLibAP := trc_TotLibAB;
1207 trc_LibFpAP := -1 * bal_TX_ON_AP_YTD;
1208 trc_LibFpAPOvr := TRUE;
1209 END IF;
1210
1211 -- Public Office Allowance
1212 --
1213 -- Ytd Public Office Allowance
1214 trc_PblOffYtd := bal_PO_NRFI_YTD + bal_PO_RFI_YTD;
1215 -- Skip the calculation if there is No Income
1216 IF trc_PblOffYtd <> 0 THEN
1217 hr_utility.set_location('py_za_tx_01032004.LteCalc',47);
1218 -- Public Office Earnings
1219 trc_PblOffErn := trc_PblOffYtd;
1220 -- Tax Liability
1221 trc_LibFyPO := trc_PblOffErn * glb_ZA_PBL_TX_RTE / 100;
1222 trc_LibFpPO := trc_LibFyPO - bal_TX_ON_PO_YTD;
1223 ELSE
1224 hr_utility.set_location('py_za_tx_01032004.LteCalc',48);
1225 -- Set Cascade Figures and Refund
1226 trc_LibFyPO := 0;
1227 trc_LibFpPO := -1 * bal_TX_ON_PO_YTD;
1228 trc_LibFpPOOvr := TRUE;
1229 END IF;
1230
1231 -- Net Pay Validation
1232 --
1233 -- Net Pay of the Employee
1234 l_Np := bal_NET_PAY_RUN;
1235 -- Site Limit Check
1236 IF trc_TxbAnnPymInc + trc_PblOffErn < glb_ZA_SIT_LIM THEN
1237 hr_utility.set_location('py_za_tx_01032004.LteCalc',49);
1238 l_Sl := TRUE;
1239 ELSE
1240 hr_utility.set_location('py_za_tx_01032004.LteCalc',50);
1241 l_Sl := FALSE;
1242 END IF;
1243
1244 py_za_tx_utl_01032004.ValidateTaxOns(p_Rf => l_Sl);
1245
1246 -- Set IT3A Indicator
1247 --
1248 IF trc_TxbAnnPymInc + trc_PblOffErn >= trc_Threshold THEN
1249 hr_utility.set_location('py_za_tx_01032004.LteCalc',51);
1250 trc_It3Ind := 0; -- Over Lim
1251 ELSE
1252 hr_utility.set_location('py_za_tx_01032004.LteCalc',52);
1253 trc_It3Ind := 1; -- Under Lim
1254 END IF;
1255
1256 -- Normal Income
1257 WrtHrTrc('trc_NorIncYtd: '||to_char(trc_NorIncYtd));
1258 WrtHrTrc('trc_NorIncPtd: '||to_char(trc_NorIncPtd));
1259 WrtHrTrc('trc_NorErn: '||to_char(trc_NorErn));
1260 WrtHrTrc('trc_TxbNorInc: '||to_char(trc_TxbNorInc));
1261 WrtHrTrc('trc_TotLibNI: '||to_char(trc_TotLibNI));
1262 WrtHrTrc('trc_LibFyNI: '||to_char(trc_LibFyNI));
1263 WrtHrTrc('trc_LibFpNI: '||to_char(trc_LibFpNI));
1264 -- Fringe Benefits
1265 WrtHrTrc('trc_FrnBenYtd: '||to_char(trc_FrnBenYtd));
1266 WrtHrTrc('trc_FrnBenPtd: '||to_char(trc_FrnBenPtd));
1267 WrtHrTrc('trc_FrnBenErn: '||to_char(trc_FrnBenErn));
1268 WrtHrTrc('trc_TxbFrnInc: '||to_char(trc_TxbFrnInc));
1269 WrtHrTrc('trc_TotLibFB: '||to_char(trc_TotLibFB));
1270 WrtHrTrc('trc_LibFyFB: '||to_char(trc_LibFyFB));
1271 WrtHrTrc('trc_LibFpFB: '||to_char(trc_LibFpFB));
1272 -- Travel Allowance
1273 WrtHrTrc('trc_TrvAllYtd: '||to_char(trc_TrvAllYtd));
1274 WrtHrTrc('trc_TrvAllPtd: '||to_char(trc_TrvAllPtd));
1275 WrtHrTrc('trc_TrvAllErn: '||to_char(trc_TrvAllErn));
1276 WrtHrTrc('trc_TxbTrvInc: '||to_char(trc_TxbTrvInc));
1277 WrtHrTrc('trc_TotLibTA: '||to_char(trc_TotLibTA));
1278 WrtHrTrc('trc_LibFyTA: '||to_char(trc_LibFyTA));
1279 WrtHrTrc('trc_LibFpTA: '||to_char(trc_LibFpTA));
1280 -- Annual Bonus
1281 WrtHrTrc('trc_AnnBonYtd: '||to_char(trc_AnnBonYtd));
1282 WrtHrTrc('trc_AnnBonPtd: '||to_char(trc_AnnBonPtd));
1283 WrtHrTrc('trc_AnnBonErn: '||to_char(trc_AnnBonErn));
1284 WrtHrTrc('trc_TxbAnnBonInc: '||to_char(trc_TxbAnnBonInc));
1285 WrtHrTrc('trc_TotLibAB: '||to_char(trc_TotLibAB));
1286 WrtHrTrc('trc_LibFyAB: '||to_char(trc_LibFyAB));
1287 WrtHrTrc('trc_LibFpAB: '||to_char(trc_LibFpAB));
1288 -- Annual Payments
1289 WrtHrTrc('trc_AnnPymYtd: '||to_char(trc_AnnPymYtd));
1290 WrtHrTrc('trc_AnnPymPtd: '||to_char(trc_AnnPymPtd));
1291 WrtHrTrc('trc_AnnPymErn: '||to_char(trc_AnnPymErn));
1292 WrtHrTrc('trc_TxbAnnPymInc: '||to_char(trc_TxbAnnPymInc));
1293 WrtHrTrc('trc_TotLibAP: '||to_char(trc_TotLibAP));
1294 WrtHrTrc('trc_LibFyAP: '||to_char(trc_LibFyAP));
1295 WrtHrTrc('trc_LibFpAP: '||to_char(trc_LibFpAP));
1296 -- Pubilc Office Allowance
1297 WrtHrTrc('trc_PblOffYtd: '||to_char(trc_PblOffYtd));
1298 WrtHrTrc('trc_PblOffPtd: '||to_char(trc_PblOffPtd));
1299 WrtHrTrc('trc_PblOffErn: '||to_char(trc_PblOffErn));
1300 WrtHrTrc('trc_LibFyPO: '||to_char(trc_LibFyPO));
1301 WrtHrTrc('trc_LibFpPO: '||to_char(trc_LibFpPO));
1302
1303 EXCEPTION
1304 WHEN OTHERS THEN
1305 IF xpt_Msg = 'No Error' THEN
1306 xpt_Msg := 'LteCalc: '||TO_CHAR(SQLCODE);
1307 END IF;
1308 RAISE xpt_E;
1309 END LteCalc;
1310 -------------------------------------------------------------------------------
1311 -- SeaCalc --
1312 -- Tax Calculation for Seasonal Workers --
1313 -------------------------------------------------------------------------------
1314 PROCEDURE SeaCalc AS
1315 -- Variables
1316 --
1317 l_Np BALANCE DEFAULT 0;
1318 l_65Year DATE;
1319
1320 BEGIN
1321 hr_utility.set_location('py_za_tx_01032004.SeaCalc',1);
1322 -- Identify the calculation
1323 --
1324 trc_CalTyp := 'SeaCalc';
1325
1326 -- Period Type Income
1327 --
1328 trc_TxbIncPtd :=
1329 ( bal_AST_PRCHD_RVAL_NRFI_RUN + bal_AST_PRCHD_RVAL_RFI_RUN
1330 + bal_BUR_AND_SCH_NRFI_RUN + bal_BUR_AND_SCH_RFI_RUN
1331 + bal_COMM_NRFI_RUN + bal_COMM_RFI_RUN
1332 + bal_COMP_ALL_NRFI_RUN + bal_COMP_ALL_RFI_RUN
1333 + bal_ENT_ALL_NRFI_RUN + bal_ENT_ALL_RFI_RUN
1334 + bal_FREE_ACCOM_NRFI_RUN + bal_FREE_ACCOM_RFI_RUN
1335 + bal_FREE_SERV_NRFI_RUN + bal_FREE_SERV_RFI_RUN
1336 + bal_LOW_LOANS_NRFI_RUN + bal_LOW_LOANS_RFI_RUN
1337 + bal_MLS_AND_VOUCH_NRFI_RUN + bal_MLS_AND_VOUCH_RFI_RUN
1338 + bal_MED_PAID_NRFI_RUN + bal_MED_PAID_RFI_RUN
1339 + bal_OTHER_TXB_ALL_NRFI_RUN + bal_OTHER_TXB_ALL_RFI_RUN
1340 + bal_OVTM_NRFI_RUN + bal_OVTM_RFI_RUN
1341 + bal_PYM_DBT_NRFI_RUN + bal_PYM_DBT_RFI_RUN
1342 + bal_RES_TRD_NRFI_RUN + bal_RES_TRD_RFI_RUN
1343 + bal_RGT_AST_NRFI_RUN + bal_RGT_AST_RFI_RUN
1344 + bal_TXB_INC_NRFI_RUN + bal_TXB_INC_RFI_RUN
1345 + bal_TXB_PEN_NRFI_RUN + bal_TXB_PEN_RFI_RUN
1346 + bal_TEL_ALL_NRFI_RUN + bal_TEL_ALL_RFI_RUN
1347 + bal_TOOL_ALL_NRFI_RUN + bal_TOOL_ALL_RFI_RUN
1348 + bal_USE_VEH_NRFI_RUN + bal_USE_VEH_RFI_RUN
1349 );
1350
1351 -- Check if any Period Income Exists
1352 --
1353 hr_utility.set_location('py_za_tx_01032004.SeaCalc',2);
1354 IF trc_TxbIncPtd = 0 THEN -- Pre-Earnings Calc
1355 hr_utility.set_location('py_za_tx_01032004.SeaCalc',3);
1356 -- Site Factor
1357 --
1358 trc_SitFactor := glb_ZA_WRK_DYS_PR_YR / dbi_SEA_WRK_DYS_WRK;
1359
1360 -- Tax Rebates, Threshold Figure and Medical Aid
1361 -- Abatements
1362 -- Calculate the assignments 65 Year Date
1363 l_65Year := add_months(dbi_PER_DTE_OF_BRTH,780);
1364
1365 IF l_65Year BETWEEN dbi_ZA_TX_YR_STRT AND dbi_ZA_TX_YR_END THEN
1366 hr_utility.set_location('py_za_tx_01032004.SeaCalc',4);
1367 -- give the extra abatement
1368 trc_Rebate := glb_ZA_PRI_TX_RBT + glb_ZA_ADL_TX_RBT;
1369 trc_Threshold := glb_ZA_SC_TX_THRSHLD;
1370 ELSE
1371 hr_utility.set_location('py_za_tx_01032004.SeaCalc',5);
1372 -- not eligable for extra abatement
1373 trc_Rebate := glb_ZA_PRI_TX_RBT;
1374 trc_Threshold := glb_ZA_PRI_TX_THRSHLD;
1375 END IF;
1376
1377 -- Base Income
1378 --
1379 -- Base Income
1380 trc_BseErn :=
1381 ( bal_AA_PRCHD_RVAL_NRFI_RUN + bal_AA_PRCHD_RVAL_RFI_RUN
1382 + bal_ANN_BUR_AND_SCH_NRFI_RUN + bal_ANN_BUR_AND_SCH_RFI_RUN
1383 + bal_AC_NRFI_RUN + bal_AC_RFI_RUN
1384 + bal_ANU_FRM_RET_FND_NRFI_RUN + bal_ANU_FRM_RET_FND_RFI_RUN
1385 + bal_ARES_TRD_NRFI_RUN + bal_ARES_TRD_RFI_RUN
1386 + bal_PRCH_ANU_TXB_NRFI_RUN + bal_PRCH_ANU_TXB_RFI_RUN
1387 + bal_TXB_AP_NRFI_RUN + bal_TXB_AP_RFI_RUN
1388 );
1389 -- Taxable Base Income
1390 trc_TxbBseInc := trc_BseErn * trc_SitFactor;
1391 -- Threshold Check
1392 IF trc_TxbBseInc >= trc_Threshold THEN
1393 hr_utility.set_location('py_za_tx_01032004.SeaCalc',6);
1394 -- Tax Liability
1395 trc_TotLibBse := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbBseInc);
1396 ELSE
1397 hr_utility.set_location('py_za_tx_01032004.SeaCalc',7);
1398 trc_TotLibBse := 0;
1399 END IF;
1400
1401 -- Annual Payments
1402 --
1403 -- Taxable Annual Payments Income
1404 trc_TxbAnnPymInc := trc_BseErn + trc_TxbBseInc;-- AP was taken as base!
1405 -- Threshold Check
1406 IF trc_TxbAnnPymInc >= trc_Threshold THEN
1407 hr_utility.set_location('py_za_tx_01032004.SeaCalc',8);
1408 -- Tax Liability
1409 trc_TotLibAP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnPymInc);
1410 trc_LibFpAP := trc_TotLibAP - least(trc_TotLibAP,trc_TotLibBse);
1411 ElSE
1412 hr_utility.set_location('py_za_tx_01032004.SeaCalc',9);
1413 trc_LibFpAP := 0;
1414 END IF;
1415
1416 -- Base Income
1417 WrtHrTrc('trc_BseErn: ' ||to_char(trc_BseErn));
1418 WrtHrTrc('trc_TxbBseInc: ' ||to_char(trc_TxbBseInc));
1419 WrtHrTrc('trc_TotLibBse: ' ||to_char(trc_TotLibBse));
1420
1421 -- Annual Payments
1422 WrtHrTrc('trc_AnnPymYtd: ' ||to_char(trc_AnnPymYtd));
1423 WrtHrTrc('trc_AnnPymPtd: ' ||to_char(trc_AnnPymPtd));
1424 WrtHrTrc('trc_AnnPymErn: ' ||to_char(trc_AnnPymErn));
1425 WrtHrTrc('trc_TxbAnnPymInc: '||to_char(trc_TxbAnnPymInc));
1426 WrtHrTrc('trc_TotLibAP: ' ||to_char(trc_TotLibAP));
1427 WrtHrTrc('trc_LibFyAP: ' ||to_char(trc_LibFyAP));
1428 WrtHrTrc('trc_LibFpAP: ' ||to_char(trc_LibFpAP));
1429
1430
1431 ELSE
1432 hr_utility.set_location('py_za_tx_01032004.SeaCalc',10);
1433 -- Site Factor
1434 --
1435 trc_SitFactor := glb_ZA_WRK_DYS_PR_YR / dbi_SEA_WRK_DYS_WRK;
1436
1437 -- Rebates
1438 py_za_tx_utl_01032004.SetRebates;
1439
1440 -- Abatements
1441 py_za_tx_utl_01032004.Abatements;
1442
1443 hr_utility.set_location('py_za_tx_01032004.SeaCalc',11);
1444
1445 -- Normal Income
1446 --
1447 -- Run Normal Income
1448 trc_NorIncPtd :=
1449 (bal_COMM_NRFI_RUN + bal_COMM_RFI_RUN
1450 + bal_COMP_ALL_NRFI_RUN + bal_COMP_ALL_RFI_RUN
1451 + bal_ENT_ALL_NRFI_RUN + bal_ENT_ALL_RFI_RUN
1452 + bal_OTHER_TXB_ALL_NRFI_RUN + bal_OTHER_TXB_ALL_RFI_RUN
1453 + bal_OVTM_NRFI_RUN + bal_OVTM_RFI_RUN
1454 + bal_RES_TRD_NRFI_RUN + bal_RES_TRD_RFI_RUN
1455 + bal_TXB_INC_NRFI_RUN + bal_TXB_INC_RFI_RUN
1456 + bal_TXB_PEN_NRFI_RUN + bal_TXB_PEN_RFI_RUN
1457 + bal_TEL_ALL_NRFI_RUN + bal_TEL_ALL_RFI_RUN
1458 + bal_TOOL_ALL_NRFI_RUN + bal_TOOL_ALL_RFI_RUN
1459 );
1460 -- Skip the calculation if there is No Income
1461 IF trc_NorIncPtd <> 0 THEN
1462 hr_utility.set_location('py_za_tx_01032004.SeaCalc',12);
1463 -- Normal Earnings
1464 trc_NorErn := trc_NorIncPtd * trc_SitFactor;
1465 -- Taxable Normal Income
1466 trc_TxbNorInc := trc_NorErn - trc_PerTotAbm;
1467 -- Threshold Check
1468 IF trc_TxbNorInc >= trc_Threshold THEN
1469 hr_utility.set_location('py_za_tx_01032004.SeaCalc',13);
1470 -- Tax Liability
1471 trc_TotLibNI := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbNorInc);
1472 trc_LibFyNI := trc_TotLibNI - 0;
1473 trc_TotLibNI := greatest(trc_TotLibNI,0);
1474 trc_LibFpNI := trc_LibFyNI / trc_SitFactor;
1475 ELSE
1476 hr_utility.set_location('py_za_tx_01032004.SeaCalc',14);
1477 trc_TotLibNI := 0;
1478 END IF;
1479 ELSE
1480 hr_utility.set_location('py_za_tx_01032004.SeaCalc',15);
1481 trc_NorErn := 0;
1482 trc_TxbNorInc := 0;
1483 trc_TotLibNI := 0;
1484 END IF;
1485
1486 -- Fringe Benefits
1487 --
1488 -- Run Fringe Benefits
1489 trc_FrnBenPtd :=
1490 ( bal_AST_PRCHD_RVAL_NRFI_RUN + bal_AST_PRCHD_RVAL_RFI_RUN
1491 + bal_BUR_AND_SCH_NRFI_RUN + bal_BUR_AND_SCH_RFI_RUN
1492 + bal_FREE_ACCOM_NRFI_RUN + bal_FREE_ACCOM_RFI_RUN
1493 + bal_FREE_SERV_NRFI_RUN + bal_FREE_SERV_RFI_RUN
1494 + bal_LOW_LOANS_NRFI_RUN + bal_LOW_LOANS_RFI_RUN
1495 + bal_MLS_AND_VOUCH_NRFI_RUN + bal_MLS_AND_VOUCH_RFI_RUN
1496 + bal_MED_PAID_NRFI_RUN + bal_MED_PAID_RFI_RUN
1497 + bal_PYM_DBT_NRFI_RUN + bal_PYM_DBT_RFI_RUN
1498 + bal_RGT_AST_NRFI_RUN + bal_RGT_AST_RFI_RUN
1499 + bal_USE_VEH_NRFI_RUN + bal_USE_VEH_RFI_RUN
1500 );
1501
1502 -- Skip the calculation if there is No Income
1503 IF trc_FrnBenPtd <> 0 THEN
1504 hr_utility.set_location('py_za_tx_01032004.SeaCalc',16);
1505 -- Fringe Benefit Earnings
1506 trc_FrnBenErn := trc_FrnBenPtd * trc_SitFactor + trc_NorErn;
1507 -- Taxable Fringe Income
1508 trc_TxbFrnInc := trc_FrnBenErn - trc_PerTotAbm;
1509 -- Threshold Check
1510 IF trc_TxbFrnInc >= trc_Threshold THEN
1511 hr_utility.set_location('py_za_tx_01032004.SeaCalc',17);
1512 -- Tax Liability
1513 trc_TotLibFB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbFrnInc);
1514 trc_LibFyFB := trc_TotLibFB - least(trc_TotLibFB,trc_TotLibNI);
1515 trc_TotLibFB := greatest(trc_TotLibFB,trc_TotLibNI);
1516 trc_LibFpFB := trc_LibFyFB / trc_SitFactor;
1517 ELSE
1518 hr_utility.set_location('py_za_tx_01032004.SeaCalc',18);
1519 trc_TotLibFB := trc_TotLibNI;
1520 END IF;
1521 ELSE
1522 hr_utility.set_location('py_za_tx_01032004.SeaCalc',19);
1523 trc_FrnBenErn := trc_NorErn;
1524 trc_TxbFrnInc := trc_TxbNorInc;
1525 trc_TotLibFB := trc_TotLibNI;
1526 END IF;
1527
1528 -- Annual Payments
1529 --
1530 -- Run Annual Payments
1531 trc_AnnPymPtd :=
1532 ( bal_AA_PRCHD_RVAL_NRFI_RUN + bal_AA_PRCHD_RVAL_RFI_RUN
1533 + bal_ANN_BUR_AND_SCH_NRFI_RUN + bal_ANN_BUR_AND_SCH_RFI_RUN
1534 + bal_AC_NRFI_RUN + bal_AC_RFI_RUN
1535 + bal_ANU_FRM_RET_FND_NRFI_RUN + bal_ANU_FRM_RET_FND_RFI_RUN
1536 + bal_ARES_TRD_NRFI_RUN + bal_ARES_TRD_RFI_RUN
1537 + bal_PRCH_ANU_TXB_NRFI_RUN + bal_PRCH_ANU_TXB_RFI_RUN
1538 + bal_TXB_AP_NRFI_RUN + bal_TXB_AP_RFI_RUN
1539 );
1540 -- Skip the calculation if there is No Income
1541 IF trc_AnnPymPtd <> 0 THEN
1542 hr_utility.set_location('py_za_tx_01032004.SeaCalc',20);
1543 -- Annual Payments Earnings
1544 trc_AnnPymErn := trc_AnnPymPtd + trc_FrnBenErn;
1545 -- Taxable Annual Payments Income
1546 trc_TxbAnnPymInc := trc_AnnPymErn - trc_AnnTotAbm;
1547 -- Threshold Check
1548 IF trc_TxbAnnPymInc >= trc_Threshold THEN
1549 hr_utility.set_location('py_za_tx_01032004.SeaCalc',21);
1550 -- Tax Liability
1551 trc_TotLibAP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnPymInc);
1552 trc_LibFyAP := trc_TotLibAP - least(trc_TotLibAP,trc_TotLibFB);
1553 trc_TotLibAP := greatest(trc_TotLibAP,trc_TotLibFB);
1554 trc_LibFpAP := trc_LibFyAP;
1555 ELSE
1556 hr_utility.set_location('py_za_tx_01032004.SeaCalc',22);
1557 trc_TotLibAP := trc_TotLibFB;
1558 END IF;
1559 ELSE
1560 hr_utility.set_location('py_za_tx_01032004.SeaCalc',23);
1561 trc_AnnPymErn := trc_FrnBenErn;
1562 trc_TxbAnnPymInc := trc_TxbFrnInc;
1563 trc_TotLibAP := trc_TotLibFB;
1564 END IF;
1565
1566
1567 -- Net Pay Validation
1568 --
1569 py_za_tx_utl_01032004.ValidateTaxOns;
1570
1571 hr_utility.set_location('py_za_tx_01032004.SeaCalc',24);
1572
1573 -- Set IT3A Indicator
1574 --
1575 IF trc_TxbAnnPymInc + trc_PblOffErn >= trc_Threshold THEN
1576 hr_utility.set_location('py_za_tx_01032004.SeaCalc',25);
1577 trc_It3Ind := 0; -- Over Lim
1578 ELSE
1579 hr_utility.set_location('py_za_tx_01032004.SeaCalc',26);
1580 trc_It3Ind := 1; -- Under Lim
1581 END IF;
1582 END IF;
1583
1584 -- Normal Income
1585 WrtHrTrc('trc_NorIncYtd: '||to_char(trc_NorIncYtd));
1586 WrtHrTrc('trc_NorIncPtd: '||to_char(trc_NorIncPtd));
1587 WrtHrTrc('trc_NorErn: '||to_char(trc_NorErn));
1588 WrtHrTrc('trc_TxbNorInc: '||to_char(trc_TxbNorInc));
1589 WrtHrTrc('trc_TotLibNI: '||to_char(trc_TotLibNI));
1590 WrtHrTrc('trc_LibFyNI: '||to_char(trc_LibFyNI));
1591 WrtHrTrc('trc_LibFpNI: '||to_char(trc_LibFpNI));
1592 -- Fringe Benefits
1593 WrtHrTrc('trc_FrnBenYtd: '||to_char(trc_FrnBenYtd));
1594 WrtHrTrc('trc_FrnBenPtd: '||to_char(trc_FrnBenPtd));
1595 WrtHrTrc('trc_FrnBenErn: '||to_char(trc_FrnBenErn));
1596 WrtHrTrc('trc_TxbFrnInc: '||to_char(trc_TxbFrnInc));
1597 WrtHrTrc('trc_TotLibFB: '||to_char(trc_TotLibFB));
1598 WrtHrTrc('trc_LibFyFB: '||to_char(trc_LibFyFB));
1599 WrtHrTrc('trc_LibFpFB: '||to_char(trc_LibFpFB));
1600 -- Annual Payments
1601 WrtHrTrc('trc_AnnPymYtd: '||to_char(trc_AnnPymYtd));
1602 WrtHrTrc('trc_AnnPymPtd: '||to_char(trc_AnnPymPtd));
1603 WrtHrTrc('trc_AnnPymErn: '||to_char(trc_AnnPymErn));
1604 WrtHrTrc('trc_TxbAnnPymInc: '||to_char(trc_TxbAnnPymInc));
1605 WrtHrTrc('trc_TotLibAP: '||to_char(trc_TotLibAP));
1606 WrtHrTrc('trc_LibFyAP: '||to_char(trc_LibFyAP));
1607 WrtHrTrc('trc_LibFpAP: '||to_char(trc_LibFpAP));
1608
1609 EXCEPTION
1610 WHEN OTHERS THEN
1611 IF xpt_Msg = 'No Error' THEN
1612 xpt_Msg := 'SeaCalc: '||TO_CHAR(SQLCODE);
1613 END IF;
1614 RAISE xpt_E;
1615 END SeaCalc;
1616
1617 -------------------------------------------------------------------------------
1618 -- SitCalc --
1619 -- End of Year Tax Calculation --
1620 -------------------------------------------------------------------------------
1621 PROCEDURE SitCalc AS
1622 -- Variables
1623 --
1624 l_Sl BOOLEAN;
1625 l_Np BALANCE;
1626
1627 BEGIN
1628 hr_utility.set_location('py_za_tx_01032004.SitCalc',1);
1629 -- Identify the calculation
1630 --
1631 trc_CalTyp := 'SitCalc';
1632
1633 -- Update Global Balance Values with correct TAXABLE values
1634 --
1635 py_za_tx_utl_01032004.TrvAll;
1636
1637 hr_utility.set_location('py_za_tx_01032004.SitCalc',2);
1638
1639 bal_PO_RFI_YTD := bal_PO_RFI_YTD * glb_ZA_PBL_TX_PRC / 100;
1640 bal_PO_NRFI_YTD := bal_PO_NRFI_YTD * glb_ZA_PBL_TX_PRC / 100;
1641
1642 -- Ytd Taxable Income
1643 --
1644 trc_TxbIncYtd :=
1645 ( bal_AST_PRCHD_RVAL_NRFI_YTD + bal_AST_PRCHD_RVAL_RFI_YTD
1646 + bal_BP_YTD
1647 + bal_BUR_AND_SCH_NRFI_YTD + bal_BUR_AND_SCH_RFI_YTD
1648 + bal_COMM_NRFI_YTD + bal_COMM_RFI_YTD
1649 + bal_COMP_ALL_NRFI_YTD + bal_COMP_ALL_RFI_YTD
1650 + bal_ENT_ALL_NRFI_YTD + bal_ENT_ALL_RFI_YTD
1651 + bal_FREE_ACCOM_NRFI_YTD + bal_FREE_ACCOM_RFI_YTD
1652 + bal_FREE_SERV_NRFI_YTD + bal_FREE_SERV_RFI_YTD
1653 + bal_IC_PYMNTS_NRFI_YTD + bal_IC_PYMNTS_RFI_YTD
1654 + bal_LB_PYMNTS_NRFI_YTD + bal_LB_PYMNTS_RFI_YTD
1655 + bal_LOW_LOANS_NRFI_YTD + bal_LOW_LOANS_RFI_YTD
1656 + bal_MLS_AND_VOUCH_NRFI_YTD + bal_MLS_AND_VOUCH_RFI_YTD
1657 + bal_MED_PAID_NRFI_YTD + bal_MED_PAID_RFI_YTD
1658 + bal_OTHER_TXB_ALL_NRFI_YTD + bal_OTHER_TXB_ALL_RFI_YTD
1659 + bal_OVTM_NRFI_YTD + bal_OVTM_RFI_YTD
1660 + bal_PYM_DBT_NRFI_YTD + bal_PYM_DBT_RFI_YTD
1661 + bal_RES_TRD_NRFI_YTD + bal_RES_TRD_RFI_YTD
1662 + bal_RGT_AST_NRFI_YTD + bal_RGT_AST_RFI_YTD
1663 + bal_TXB_INC_NRFI_YTD + bal_TXB_INC_RFI_YTD
1664 + bal_TXB_PEN_NRFI_YTD + bal_TXB_PEN_RFI_YTD
1665 + bal_TEL_ALL_NRFI_YTD + bal_TEL_ALL_RFI_YTD
1666 + bal_TOOL_ALL_NRFI_YTD + bal_TOOL_ALL_RFI_YTD
1667 + bal_TA_NRFI_YTD + bal_TA_RFI_YTD
1668 + bal_USE_VEH_NRFI_YTD + bal_USE_VEH_RFI_YTD
1669 );
1670
1671 hr_utility.set_location('py_za_tx_01032004.SitCalc',3);
1672
1673 -- Site Factor
1674 --
1675 trc_SitFactor := dbi_ZA_DYS_IN_YR / py_za_tx_utl_01032004.DaysWorked;
1676
1677 hr_utility.set_location('py_za_tx_01032004.SitCalc',4);
1678
1679 -- Rebates
1680 py_za_tx_utl_01032004.SetRebates;
1681
1682 -- Abatements
1683 py_za_tx_utl_01032004.Abatements;
1684
1685 hr_utility.set_location('py_za_tx_01032004.SitCalc',5);
1686
1687 -- Deemed Remuneration
1688 --
1689 -- Run Deemed Remuneration
1690 trc_DmdRmnRun := bal_DIR_DMD_RMN_ITD;
1691
1692 -- Skip the calculation if there is No Income
1693 IF trc_DmdRmnRun <> 0 THEN
1694 hr_utility.set_location('py_za_tx_01032004.SitCalc',6);
1695 -- Taxable Deemed Remuneration
1696 trc_TxbDmdRmn := trc_DmdRmnRun;
1697 -- Threshold Check
1698 IF trc_TxbDmdRmn >= trc_Threshold THEN
1699 hr_utility.set_location('py_za_tx_01032004.SitCalc',7);
1700 -- Tax Liability
1701 trc_TotLibDR := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbDmdRmn);
1702 trc_LibFyDR := (trc_TotLibDR - 0) / trc_SitFactor;
1703 trc_TotLibDR := greatest(trc_TotLibDR,0);
1704 trc_LibFpDR := trc_LibFyDR - bal_TX_ON_DR_YTD;
1705 ELSE
1706 hr_utility.set_location('py_za_tx_01032004.SitCalc',8);
1707 -- Set Cascade Figures and Refund
1708 trc_TotLibDR := 0;
1709 trc_LibFpDR := -1 * bal_TX_ON_DR_YTD;
1710 trc_LibFpDROvr := TRUE;
1711 END IF;
1712 ELSE
1713 hr_utility.set_location('py_za_tx_01032004.SitCalc',9);
1714 -- Set Cascade Figures and Refund
1715 trc_TxbDmdRmn := 0;
1716 trc_TotLibDR := 0;
1717 trc_LibFpDR := -1 * bal_TX_ON_DR_YTD;
1718 trc_LibFpDROvr := TRUE;
1719 END IF;
1720
1721 hr_utility.set_location('py_za_tx_01032004.SitCalc',10);
1722
1723 -- Normal Income
1724 --
1725 -- Ytd Normal Income
1726 trc_NorIncYtd :=
1727 ( bal_COMM_NRFI_YTD + bal_COMM_RFI_YTD
1728 + bal_COMP_ALL_NRFI_YTD + bal_COMP_ALL_RFI_YTD
1729 + bal_ENT_ALL_NRFI_YTD + bal_ENT_ALL_RFI_YTD
1730 + bal_IC_PYMNTS_NRFI_YTD + bal_IC_PYMNTS_RFI_YTD
1731 + bal_LB_PYMNTS_NRFI_YTD + bal_LB_PYMNTS_RFI_YTD
1732 + bal_OTHER_TXB_ALL_NRFI_YTD + bal_OTHER_TXB_ALL_RFI_YTD
1733 + bal_OVTM_NRFI_YTD + bal_OVTM_RFI_YTD
1734 + bal_RES_TRD_NRFI_YTD + bal_RES_TRD_RFI_YTD
1735 + bal_TXB_INC_NRFI_YTD + bal_TXB_INC_RFI_YTD
1736 + bal_TXB_PEN_NRFI_YTD + bal_TXB_PEN_RFI_YTD
1737 + bal_TEL_ALL_NRFI_YTD + bal_TEL_ALL_RFI_YTD
1738 + bal_TOOL_ALL_NRFI_YTD + bal_TOOL_ALL_RFI_YTD
1739 );
1740 -- Skip the calculation if there is No Income
1741 IF trc_NorIncYtd <> 0 THEN
1742 hr_utility.set_location('py_za_tx_01032004.SitCalc',11);
1743 -- Normal Earnings
1744 trc_NorErn := trc_NorIncYtd * trc_SitFactor;
1745 -- Taxable Normal Income
1746 trc_TxbNorInc := trc_NorErn - trc_PerTotAbm;
1747 -- Threshold Check
1748 IF trc_TxbNorInc >= trc_Threshold THEN
1749 hr_utility.set_location('py_za_tx_01032004.SitCalc',12);
1750 -- Tax Liability
1751 trc_TotLibNI := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbNorInc);
1752 trc_LibFyNI := (trc_TotLibNI - least(trc_TotLibNI,trc_TotLibDR)) / trc_SitFactor;
1753 trc_TotLibNI := greatest(trc_TotLibNI,trc_TotLibDR);
1754 trc_LibFpNI := trc_LibFyNI - bal_TX_ON_NI_YTD;
1755 ELSE
1756 hr_utility.set_location('py_za_tx_01032004.SitCalc',13);
1757 -- Set Cascade Figures and Refund
1758 trc_TotLibNI := trc_TotLibDR;
1759 trc_LibFpNI := -1 * bal_TX_ON_NI_YTD;
1760 trc_LibFpNIOvr := TRUE;
1761 END IF;
1762 ELSE
1763 hr_utility.set_location('py_za_tx_01032004.SitCalc',14);
1764 -- Set Cascade Figures and Refund
1765 trc_NorErn := 0;
1766 trc_TxbNorInc := 0;
1767 trc_TotLibNI := trc_TotLibDR;
1768 trc_LibFpNI := -1 * bal_TX_ON_NI_YTD;
1769 trc_LibFpNIOvr := TRUE;
1770 END IF;
1771
1772 -- Fringe Benefits
1773 --
1774 -- Ytd Fringe Benefits
1775 trc_FrnBenYtd :=
1776 ( bal_AST_PRCHD_RVAL_NRFI_YTD + bal_AST_PRCHD_RVAL_RFI_YTD
1777 + bal_BUR_AND_SCH_NRFI_YTD + bal_BUR_AND_SCH_RFI_YTD
1778 + bal_FREE_ACCOM_NRFI_YTD + bal_FREE_ACCOM_RFI_YTD
1779 + bal_FREE_SERV_NRFI_YTD + bal_FREE_SERV_RFI_YTD
1780 + bal_LOW_LOANS_NRFI_YTD + bal_LOW_LOANS_RFI_YTD
1781 + bal_MLS_AND_VOUCH_NRFI_YTD + bal_MLS_AND_VOUCH_RFI_YTD
1782 + bal_MED_PAID_NRFI_YTD + bal_MED_PAID_RFI_YTD
1783 + bal_PYM_DBT_NRFI_YTD + bal_PYM_DBT_RFI_YTD
1784 + bal_RGT_AST_NRFI_YTD + bal_RGT_AST_RFI_YTD
1785 + bal_USE_VEH_NRFI_YTD + bal_USE_VEH_RFI_YTD
1786 );
1787
1788 -- Skip the calculation if there is No Income
1789 IF trc_FrnBenYtd <> 0 THEN
1790 hr_utility.set_location('py_za_tx_01032004.SitCalc',15);
1791 -- Fringe Benefit Earnings
1792 trc_FrnBenErn := trc_FrnBenYtd * trc_SitFactor + trc_NorErn;
1793 -- Taxable Fringe Income
1794 trc_TxbFrnInc := trc_FrnBenErn - trc_PerTotAbm;
1795 -- Threshold Check
1796 IF trc_TxbFrnInc >= trc_Threshold THEN
1797 hr_utility.set_location('py_za_tx_01032004.SitCalc',16);
1798 -- Tax Liability
1799 trc_TotLibFB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbFrnInc);
1800 trc_LibFyFB := (trc_TotLibFB - least(trc_TotLibFB,trc_TotLibNI)) / trc_SitFactor;
1801 trc_TotLibFB := greatest(trc_TotLibFB,trc_TotLibNI);
1802 trc_LibFpFB := trc_LibFyFB - bal_TX_ON_FB_YTD;
1803 ElSE
1804 hr_utility.set_location('py_za_tx_01032004.SitCalc',17);
1805 -- Set Cascade Figures and Refund
1806 trc_TotLibFB := trc_TotLibNI;
1807 trc_LibFpFB := -1 * bal_TX_ON_FB_YTD;
1808 trc_LibFpFBOvr := TRUE;
1809 END IF;
1810 ELSE
1811 hr_utility.set_location('py_za_tx_01032004.SitCalc',18);
1812 -- Set Cascade Figures and Refund
1813 trc_FrnBenErn := trc_NorErn;
1814 trc_TxbFrnInc := trc_TxbNorInc;
1815 trc_TotLibFB := trc_TotLibNI;
1816 trc_LibFpFB := -1 * bal_TX_ON_FB_YTD;
1817 trc_LibFpFBOvr := TRUE;
1818 END IF;
1819
1820 -- Travel Allowance
1821 --
1822 -- Ytd Travel Allowance
1823 trc_TrvAllYtd := bal_TA_NRFI_YTD + bal_TA_RFI_YTD;
1824 -- Skip the calculation if there is No Income
1825 IF trc_TrvAllYtd <> 0 THEN
1826 hr_utility.set_location('py_za_tx_01032004.SitCalc',19);
1827 -- Travel Earnings
1828 trc_TrvAllErn := trc_TrvAllYtd * trc_SitFactor + trc_FrnBenErn;
1829 -- Taxable Travel Income
1830 trc_TxbTrvInc := trc_TrvAllErn - trc_PerTotAbm;
1831 -- Threshold Check
1832 IF trc_TxbTrvInc >= trc_Threshold THEN
1833 hr_utility.set_location('py_za_tx_01032004.SitCalc',20);
1834 -- Tax Liability
1835 trc_TotLibTA := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbTrvInc);
1836 trc_LibFyTA := (trc_TotLibTA - least(trc_TotLibTA,trc_TotLibFB)) / trc_SitFactor;
1837 trc_TotLibTA := greatest(trc_TotLibTA,trc_TotLibFB);
1838 trc_LibFpTA := trc_LibFyTA - bal_TX_ON_TA_YTD;
1839 ELSE
1840 hr_utility.set_location('py_za_tx_01032004.SitCalc',21);
1841 -- Set Cascade Figures and Refund
1842 trc_TotLibTA := trc_TotLibFB;
1843 trc_LibFpTA := -1 * bal_TX_ON_TA_YTD;
1844 trc_LibFpTAOvr := TRUE;
1845 END IF;
1846 ELSE
1847 hr_utility.set_location('py_za_tx_01032004.SitCalc',22);
1848 -- Set Cascade Figures and Refund
1849 trc_TrvAllErn := trc_FrnBenErn;
1850 trc_TxbTrvInc := trc_TxbFrnInc;
1851 trc_TotLibTA := trc_TotLibFB;
1852 trc_LibFpTA := -1 * bal_TX_ON_TA_YTD;
1853 trc_LibFpTAOvr := TRUE;
1854 END IF;
1855
1856 -- Bonus Provision
1857 --
1858 -- Ytd Bonus Prvision
1859 trc_BonProYtd := bal_BP_YTD;
1860 -- Skip the calculation if there is No Income
1861 IF trc_BonProYtd <> 0 THEN
1862 hr_utility.set_location('py_za_tx_01032004.SitCalc',23);
1863 -- Bonus Provision Earnings
1864 trc_BonProErn := trc_BonProYtd * trc_SitFactor + trc_TrvAllErn;
1865 -- Taxable Bonus Provision Income
1866 trc_TxbBonProInc := trc_BonProErn - trc_PerTotAbm;
1867 -- Threshold Check
1868 IF trc_TxbBonProInc >= trc_Threshold THEN
1869 hr_utility.set_location('py_za_tx_01032004.SitCalc',24);
1870 -- Tax Liability
1871 trc_TotLibBP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbBonProInc);
1872 trc_LibFyBP := (trc_TotLibBP - least(trc_TotLibBP,trc_TotLibTA)) / trc_SitFactor;
1873 trc_TotLibBP := greatest(trc_TotLibBP,trc_TotLibTA);
1874 trc_LibFpBP := trc_LibFyBP - bal_TX_ON_BP_YTD;
1875 ELSE
1876 hr_utility.set_location('py_za_tx_01032004.SitCalc',25);
1877 -- Set Cascade Figures and Refund
1878 trc_TotLibBP := trc_TotLibTA;
1879 trc_LibFpBP := -1 * bal_TX_ON_BP_YTD;
1880 trc_LibFpBPOvr := TRUE;
1881 END IF;
1882 ELSE
1883 hr_utility.set_location('py_za_tx_01032004.SitCalc',26);
1884 -- Set Cascade Figures and Refund
1885 trc_BonProErn := trc_TrvAllErn;
1886 trc_TxbBonProInc := trc_TxbTrvInc;
1887 trc_TotLibBP := trc_TotLibTA;
1888 trc_LibFpBP := -1 * bal_TX_ON_BP_YTD;
1889 trc_LibFpBPOvr := TRUE;
1890 END IF;
1891
1892 -- Annual Bonus
1893 --
1894 -- Ytd Annual Bonus
1895 trc_AnnBonYtd := bal_AB_NRFI_YTD + bal_AB_RFI_YTD;
1896 -- Skip the calculation if there is No Income
1897 IF trc_AnnBonYtd <> 0 THEN
1898 hr_utility.set_location('py_za_tx_01032004.SitCalc',27);
1899 -- Annual Bonus Earnings
1900 trc_AnnBonErn := trc_AnnBonYtd + trc_TrvAllErn;
1901 -- Taxable Annual Bonus Income
1902 trc_TxbAnnBonInc := trc_AnnBonErn - trc_AnnTotAbm;
1903 -- Threshold Check
1904 IF trc_TxbAnnBonInc >= trc_Threshold THEN
1905 hr_utility.set_location('py_za_tx_01032004.SitCalc',28);
1906 -- Tax Liability
1907 trc_TotLibAB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnBonInc);
1908 trc_LibFyAB := trc_TotLibAB - least(trc_TotLibAB,trc_TotLibTA);
1909 trc_TotLibAB := greatest(trc_TotLibAB,trc_TotLibTA);
1910 hr_utility.set_location('py_za_tx_01032004.SitCalc',29);
1911 -- Check Bonus Provision
1912 IF trc_BonProYtd <> 0 THEN
1913 hr_utility.set_location('py_za_tx_01032004.SitCalc',30);
1914 -- Check Bonus Provision Frequency
1915 IF dbi_BP_TX_RCV = 'B' OR py_za_tx_utl_01032004.SitePeriod THEN
1916 hr_utility.set_location('py_za_tx_01032004.SitCalc',31);
1917 trc_LibFpAB :=
1918 trc_LibFyAB - (bal_TX_ON_BP_YTD
1919 + trc_LibFpBP
1920 + bal_TX_ON_AB_YTD);
1921 ELSE
1922 hr_utility.set_location('py_za_tx_01032004.SitCalc',32);
1923 trc_LibFpAB := 0;
1924 END IF;
1925 ELSE
1926 hr_utility.set_location('py_za_tx_01032004.SitCalc',33);
1927 trc_LibFpAB := trc_LibFyAB - bal_TX_ON_AB_YTD;
1928 END IF;
1929 ELSE
1930 hr_utility.set_location('py_za_tx_01032004.SitCalc',34);
1931 -- Set Cascade Figures and Refund
1932 trc_TotLibAB := trc_TotLibTA;
1933 trc_LibFpAB := -1 * bal_TX_ON_AB_YTD;
1934 trc_LibFpABOvr := TRUE;
1935 END IF;
1936 ELSE
1937 hr_utility.set_location('py_za_tx_01032004.SitCalc',35);
1938 -- Set Cascade Figures and Refund
1939 trc_LibFpAB := -1 * bal_TX_ON_AB_YTD;
1940 trc_LibFpABOvr := TRUE;
1941
1942 IF dbi_BP_TX_RCV = 'A' AND py_za_tx_utl_01032004.SitePeriod THEN
1943 hr_utility.set_location('py_za_tx_01032004.SitCalc',36);
1944 trc_LibFpBP := -1 * bal_TX_ON_BP_YTD;
1945 trc_LibFpBPOvr := TRUE;
1946 trc_LibFpAPOvr := TRUE;
1947
1948 trc_AnnBonErn := trc_TrvAllErn;
1949 trc_TxbAnnBonInc := trc_TxbTrvInc;
1950 trc_TotLibAB := trc_TotLibTA;
1951 ELSE
1952 hr_utility.set_location('py_za_tx_01032004.SitCalc',37);
1953 trc_AnnBonErn := trc_BonProErn;
1954 trc_TxbAnnBonInc := trc_TxbBonProInc;
1955 trc_TotLibAB := trc_TotLibBP;
1956 END IF;
1957 END IF;
1958
1959 -- Annual Payments
1960 --
1961 -- Ytd Annual Payments
1962 trc_AnnPymYtd :=
1963 ( bal_AA_PRCHD_RVAL_NRFI_YTD + bal_AA_PRCHD_RVAL_RFI_YTD
1964 + bal_ANN_BUR_AND_SCH_NRFI_YTD + bal_ANN_BUR_AND_SCH_RFI_YTD
1965 + bal_ANN_IC_PYMNTS_NRFI_YTD + bal_ANN_IC_PYMNTS_RFI_YTD
1966 + bal_ANN_LB_PYMNTS_NRFI_YTD + bal_ANN_LB_PYMNTS_RFI_YTD
1967 + bal_ANN_PYM_DBT_NRFI_YTD + bal_ANN_PYM_DBT_RFI_YTD
1968 + bal_AC_NRFI_YTD + bal_AC_RFI_YTD
1969 + bal_ANU_FRM_RET_FND_NRFI_YTD + bal_ANU_FRM_RET_FND_RFI_YTD
1970 + bal_ARES_TRD_NRFI_YTD + bal_ARES_TRD_RFI_YTD
1971 + bal_PRCH_ANU_TXB_NRFI_YTD + bal_PRCH_ANU_TXB_RFI_YTD
1972 + bal_TXB_AP_NRFI_YTD + bal_TXB_AP_RFI_YTD
1973 );
1974 -- Skip the calculation if there is No Income
1975 IF trc_AnnPymYtd <> 0 THEN
1976 hr_utility.set_location('py_za_tx_01032004.SitCalc',38);
1977 -- Annual Payments Earnings
1978 trc_AnnPymErn := trc_AnnPymYtd + trc_AnnBonErn;
1979 -- Taxable Annual Payments Income
1980 trc_TxbAnnPymInc := trc_AnnPymErn - trc_AnnTotAbm;
1981 -- Threshold Check
1982 IF trc_TxbAnnPymInc >= trc_Threshold THEN
1983 hr_utility.set_location('py_za_tx_01032004.SitCalc',39);
1984 -- Tax Liability
1985 trc_TotLibAP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnPymInc);
1986 trc_LibFyAP := trc_TotLibAP - least(trc_TotLibAP,trc_TotLibAB);
1987 trc_TotLibAP := greatest(trc_TotLibAP,trc_TotLibAB);
1988 trc_LibFpAP := trc_LibFyAP - bal_TX_ON_AP_YTD;
1989 ELSE
1990 hr_utility.set_location('py_za_tx_01032004.SitCalc',40);
1991 -- Set Cascade Figures and Refund
1992 trc_TotLibAP := trc_TotLibAB;
1993 trc_LibFpAP := -1 * bal_TX_ON_AP_YTD;
1994 trc_LibFpAPOvr := TRUE;
1995 END IF;
1996 ELSE
1997 hr_utility.set_location('py_za_tx_01032004.SitCalc',41);
1998 -- Set Cascade Figures and Refund
1999 trc_AnnPymErn := trc_AnnBonErn;
2000 trc_TxbAnnPymInc := trc_TxbAnnBonInc;
2001 trc_TotLibAP := trc_TotLibAB;
2002 trc_LibFpAP := -1 * bal_TX_ON_AP_YTD;
2003 trc_LibFpAPOvr := TRUE;
2004 END IF;
2005
2006 -- Public Office Allowance
2007 --
2008 -- Ytd Public Office Allowance
2009 trc_PblOffYtd := bal_PO_NRFI_YTD + bal_PO_RFI_YTD;
2010 -- Skip the calculation if there is No Income
2011 IF trc_PblOffYtd <> 0 THEN
2012 hr_utility.set_location('py_za_tx_01032004.SitCalc',42);
2013 -- Public Office Earnings
2014 trc_PblOffErn := trc_PblOffYtd * trc_SitFactor;
2015 -- Tax Liability
2016 trc_LibFyPO := (trc_PblOffErn * glb_ZA_PBL_TX_RTE / 100)/trc_SitFactor;
2017 trc_LibFpPO := trc_LibFyPO - bal_TX_ON_PO_YTD;
2018 ELSE
2019 hr_utility.set_location('py_za_tx_01032004.SitCalc',43);
2020 -- Set Cascade Figures and Refund
2021 trc_LibFyPO := 0;
2022 trc_LibFpPO := -1 * bal_TX_ON_PO_YTD;
2023 trc_LibFpPOOvr := TRUE;
2024 END IF;
2025
2026 -- Net Pay Validation
2027 --
2028 -- Net Pay of the Employee
2029 l_Np := bal_NET_PAY_RUN;
2030 -- Site Limit Check
2031 IF trc_TxbAnnPymInc + trc_PblOffErn < glb_ZA_SIT_LIM THEN
2032 hr_utility.set_location('py_za_tx_01032004.SitCalc',44);
2033 l_Sl := TRUE;
2034 ELSE
2035 hr_utility.set_location('py_za_tx_01032004.SitCalc',45);
2036 l_Sl := FALSE;
2037 END IF;
2038
2039 py_za_tx_utl_01032004.ValidateTaxOns(p_Rf => l_Sl);
2040
2041 hr_utility.set_location('py_za_tx_01032004.SitCalc',46);
2042
2043 -- Set IT3A Indicator
2044 --
2045 IF trc_TxbAnnPymInc + trc_PblOffErn >= trc_Threshold THEN
2046 hr_utility.set_location('py_za_tx_01032004.SitCalc',47);
2047 trc_It3Ind := 0; -- Over Lim
2048 ELSE
2049 hr_utility.set_location('py_za_tx_01032004.SitCalc',48);
2050 trc_It3Ind := 1; -- Under Lim
2051 END IF;
2052
2053 -- Calculate Total Taxable Income and pass out
2054 --
2055 trc_OUpdFig := (trc_TxbAnnPymInc + trc_PblOffErn) - bal_TOT_TXB_INC_ITD;
2056
2057 hr_utility.set_location('py_za_tx_01032004.SitCalc',49);
2058
2059 -- Deemed Remuneration
2060 WrtHrTrc('trc_TxbDmdRmn: '||to_char(trc_TxbDmdRmn));
2061 WrtHrTrc('trc_TotLibDR: '||to_char(trc_TotLibDR));
2062 WrtHrTrc('trc_LibFyDR: '||to_char(trc_LibFyDR));
2063 WrtHrTrc('trc_LibFpDR: '||to_char(trc_LibFpDR));
2064 -- Base Income
2065 WrtHrTrc('trc_BseErn: '||to_char(trc_BseErn));
2066 WrtHrTrc('trc_TxbBseInc: '||to_char(trc_TxbBseInc));
2067 WrtHrTrc('trc_TotLibBse: '||to_char(trc_TotLibBse));
2068 -- Normal Income
2069 WrtHrTrc('trc_NorIncYtd: '||to_char(trc_NorIncYtd));
2070 WrtHrTrc('trc_NorIncPtd: '||to_char(trc_NorIncPtd));
2071 WrtHrTrc('trc_NorErn: '||to_char(trc_NorErn));
2072 WrtHrTrc('trc_TxbNorInc: '||to_char(trc_TxbNorInc));
2073 WrtHrTrc('trc_TotLibNI: '||to_char(trc_TotLibNI));
2074 WrtHrTrc('trc_LibFyNI: '||to_char(trc_LibFyNI));
2075 WrtHrTrc('trc_LibFpNI: '||to_char(trc_LibFpNI));
2076 -- Fringe Benefits
2077 WrtHrTrc('trc_FrnBenYtd: '||to_char(trc_FrnBenYtd));
2078 WrtHrTrc('trc_FrnBenPtd: '||to_char(trc_FrnBenPtd));
2079 WrtHrTrc('trc_FrnBenErn: '||to_char(trc_FrnBenErn));
2080 WrtHrTrc('trc_TxbFrnInc: '||to_char(trc_TxbFrnInc));
2081 WrtHrTrc('trc_TotLibFB: '||to_char(trc_TotLibFB));
2082 WrtHrTrc('trc_LibFyFB: '||to_char(trc_LibFyFB));
2083 WrtHrTrc('trc_LibFpFB: '||to_char(trc_LibFpFB));
2084 -- Travel Allowance
2085 WrtHrTrc('trc_TrvAllYtd: '||to_char(trc_TrvAllYtd));
2086 WrtHrTrc('trc_TrvAllPtd: '||to_char(trc_TrvAllPtd));
2087 WrtHrTrc('trc_TrvAllErn: '||to_char(trc_TrvAllErn));
2088 WrtHrTrc('trc_TxbTrvInc: '||to_char(trc_TxbTrvInc));
2089 WrtHrTrc('trc_TotLibTA: '||to_char(trc_TotLibTA));
2090 WrtHrTrc('trc_LibFyTA: '||to_char(trc_LibFyTA));
2091 WrtHrTrc('trc_LibFpTA: '||to_char(trc_LibFpTA));
2092 -- Bonus Provision
2093 WrtHrTrc('trc_BonProYtd: '||to_char(trc_BonProYtd));
2094 WrtHrTrc('trc_BonProPtd: '||to_char(trc_BonProPtd));
2095 WrtHrTrc('trc_BonProErn: '||to_char(trc_BonProErn));
2096 WrtHrTrc('trc_TxbBonProInc: '||to_char(trc_TxbBonProInc));
2097 WrtHrTrc('trc_TotLibBP: '||to_char(trc_TotLibBP));
2098 WrtHrTrc('trc_LibFyBP: '||to_char(trc_LibFyBP));
2099 WrtHrTrc('trc_LibFpBP: '||to_char(trc_LibFpBP));
2100 -- Annual Bonus
2101 WrtHrTrc('trc_AnnBonYtd: '||to_char(trc_AnnBonYtd));
2102 WrtHrTrc('trc_AnnBonPtd: '||to_char(trc_AnnBonPtd));
2103 WrtHrTrc('trc_AnnBonErn: '||to_char(trc_AnnBonErn));
2104 WrtHrTrc('trc_TxbAnnBonInc: '||to_char(trc_TxbAnnBonInc));
2105 WrtHrTrc('trc_TotLibAB: '||to_char(trc_TotLibAB));
2106 WrtHrTrc('trc_LibFyAB: '||to_char(trc_LibFyAB));
2107 WrtHrTrc('trc_LibFpAB: '||to_char(trc_LibFpAB));
2108 -- Annual Payments
2109 WrtHrTrc('trc_AnnPymYtd: '||to_char(trc_AnnPymYtd));
2110 WrtHrTrc('trc_AnnPymPtd: '||to_char(trc_AnnPymPtd));
2111 WrtHrTrc('trc_AnnPymErn: '||to_char(trc_AnnPymErn));
2112 WrtHrTrc('trc_TxbAnnPymInc: '||to_char(trc_TxbAnnPymInc));
2113 WrtHrTrc('trc_TotLibAP: '||to_char(trc_TotLibAP));
2114 WrtHrTrc('trc_LibFyAP: '||to_char(trc_LibFyAP));
2115 WrtHrTrc('trc_LibFpAP: '||to_char(trc_LibFpAP));
2116
2117 EXCEPTION
2118 WHEN OTHERS THEN
2119 IF xpt_Msg = 'No Error' THEN
2120 xpt_Msg := 'SitCalc: '||TO_CHAR(SQLCODE);
2121 END IF;
2122 RAISE xpt_E;
2123 END SitCalc;
2124
2125 -------------------------------------------------------------------------------
2126 -- DirCalc --
2127 -- Tax Calculation for Directive Assignments --
2128 -------------------------------------------------------------------------------
2129 PROCEDURE DirCalc AS
2130 -- Variables
2131 --
2132 l_Np BALANCE DEFAULT 0;
2133
2134 BEGIN
2135 hr_utility.set_location('py_za_tx_01032004.DirCalc',1);
2136 -- Identify the calculation
2137 --
2138 trc_CalTyp := 'DirCalc';
2139
2140 -- Update Global Balance Values with correct TAXABLE values
2141 --
2142 py_za_tx_utl_01032004.TrvAll;
2143
2144 hr_utility.set_location('py_za_tx_01032004.DirCalc',2);
2145
2146 bal_PO_RFI_YTD := bal_PO_RFI_YTD * glb_ZA_PBL_TX_PRC / 100;
2147 bal_PO_NRFI_YTD := bal_PO_NRFI_YTD * glb_ZA_PBL_TX_PRC / 100;
2148
2149 -- Normal Income
2150 --
2151 -- Ytd Normal Income
2152 trc_NorIncYtd :=
2153 ( bal_COMM_NRFI_YTD + bal_COMM_RFI_YTD
2154 + bal_COMP_ALL_NRFI_YTD + bal_COMP_ALL_RFI_YTD
2155 + bal_ENT_ALL_NRFI_YTD + bal_ENT_ALL_RFI_YTD
2156 + bal_IC_PYMNTS_NRFI_YTD + bal_IC_PYMNTS_RFI_YTD
2157 + bal_LB_PYMNTS_NRFI_YTD + bal_LB_PYMNTS_RFI_YTD
2158 + bal_OTHER_TXB_ALL_NRFI_YTD + bal_OTHER_TXB_ALL_RFI_YTD
2159 + bal_OVTM_NRFI_YTD + bal_OVTM_RFI_YTD
2160 + bal_RES_TRD_NRFI_YTD + bal_RES_TRD_RFI_YTD
2161 + bal_TXB_INC_NRFI_YTD + bal_TXB_INC_RFI_YTD
2162 + bal_TXB_PEN_NRFI_YTD + bal_TXB_PEN_RFI_YTD
2163 + bal_TEL_ALL_NRFI_YTD + bal_TEL_ALL_RFI_YTD
2164 + bal_TOOL_ALL_NRFI_YTD + bal_TOOL_ALL_RFI_YTD
2165 );
2166 -- Skip the calculation if there is No Income
2167 IF trc_NorIncYtd <> 0 THEN
2168 hr_utility.set_location('py_za_tx_01032004.DirCalc',3);
2169 -- Normal Earnings
2170 trc_NorErn := trc_NorIncYtd;
2171 -- Tax Liability
2172 trc_TotLibNI := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_NorErn);
2173 trc_LibFyNI := trc_TotLibNI - 0;
2174 trc_TotLibNI := greatest(trc_TotLibNI,0);
2175 trc_LibFpNI := trc_LibFyNI - bal_TX_ON_NI_YTD;
2176 ELSE
2177 hr_utility.set_location('py_za_tx_01032004.DirCalc',4);
2178 -- Set Cascade Figures and Refund
2179 trc_NorErn := 0;
2180 trc_TotLibNI := 0;
2181 trc_LibFpNI := -1 * bal_TX_ON_NI_YTD;
2182 trc_LibFpNIOvr := TRUE;
2183 END IF;
2184
2185 -- Fringe Benefits
2186 --
2187 -- Ytd Fringe Benefits
2188 trc_FrnBenYtd :=
2189 ( bal_AST_PRCHD_RVAL_NRFI_YTD + bal_AST_PRCHD_RVAL_RFI_YTD
2190 + bal_BUR_AND_SCH_NRFI_YTD + bal_BUR_AND_SCH_RFI_YTD
2191 + bal_FREE_ACCOM_NRFI_YTD + bal_FREE_ACCOM_RFI_YTD
2192 + bal_FREE_SERV_NRFI_YTD + bal_FREE_SERV_RFI_YTD
2193 + bal_LOW_LOANS_NRFI_YTD + bal_LOW_LOANS_RFI_YTD
2194 + bal_MLS_AND_VOUCH_NRFI_YTD + bal_MLS_AND_VOUCH_RFI_YTD
2195 + bal_MED_PAID_NRFI_YTD + bal_MED_PAID_RFI_YTD
2196 + bal_PYM_DBT_NRFI_YTD + bal_PYM_DBT_RFI_YTD
2197 + bal_RGT_AST_NRFI_YTD + bal_RGT_AST_RFI_YTD
2198 + bal_USE_VEH_NRFI_YTD + bal_USE_VEH_RFI_YTD
2199 );
2200 -- Skip the calculation if there is No Income
2201 IF trc_FrnBenYtd <> 0 THEN
2202 hr_utility.set_location('py_za_tx_01032004.DirCalc',5);
2203 -- Fringe Benefit Earnings
2204 trc_FrnBenErn := trc_FrnBenYtd + trc_NorErn;
2205 -- Tax Liability
2206 trc_TotLibFB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_FrnBenErn);
2207 trc_LibFyFB := trc_TotLibFB - least(trc_TotLibFB,trc_TotLibNI);
2208 trc_TotLibFB := greatest(trc_TotLibFB,trc_TotLibNI);
2209 trc_LibFpFB := trc_LibFyFB - bal_TX_ON_FB_YTD;
2210 ELSE
2211 hr_utility.set_location('py_za_tx_01032004.DirCalc',6);
2212 -- Set Cascade Figures and Refund
2213 trc_FrnBenErn := trc_NorErn;
2214 trc_TotLibFB := trc_TotLibNI;
2215 trc_LibFpFB := -1 * bal_TX_ON_FB_YTD;
2216 trc_LibFpFBOvr := TRUE;
2217 END IF;
2218
2219 -- Travel Allowance
2220 --
2221 -- Ytd Travel Allowance
2222 trc_TrvAllYtd := bal_TA_NRFI_YTD + bal_TA_RFI_YTD;
2223 -- Skip the calculation if there is No Income
2224 IF trc_TrvAllYtd <> 0 THEN
2225 hr_utility.set_location('py_za_tx_01032004.DirCalc',7);
2226 -- Travel Allowance Earnings
2227 trc_TrvAllErn := trc_TrvAllYtd + trc_FrnBenErn;
2228 -- Tax Liability
2229 trc_TotLibTA := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TrvAllErn);
2230 trc_LibFyTA := trc_TotLibTA - least(trc_TotLibTA,trc_TotLibFB);
2231 trc_TotLibTA := greatest(trc_TotLibTA,trc_TotLibFB);
2232 trc_LibFpTA := trc_LibFyTA - bal_TX_ON_TA_YTD;
2233 ELSE
2234 hr_utility.set_location('py_za_tx_01032004.DirCalc',8);
2235 -- Set Cascade Figures and Refund
2236 trc_TrvAllErn := trc_FrnBenErn; --Cascade Figure
2237 trc_TotLibTA := trc_TotLibFB;
2238 trc_LibFpTA := -1 * bal_TX_ON_TA_YTD;
2239 trc_LibFpTAOvr := TRUE;
2240 END IF;
2241
2242 -- Bonus Provision
2243 --
2244 -- Ytd Bonus Provision
2245 trc_BonProYtd := bal_BP_YTD;
2246 -- Skip the calculation if there is No Income
2247 IF trc_BonProYtd <> 0 THEN
2248 hr_utility.set_location('py_za_tx_01032004.DirCalc',9);
2249 -- Bonus Provision Earnings
2250 trc_BonProErn := trc_BonProYtd + trc_TrvAllErn;
2251 -- Tax Liability
2252 trc_TotLibBP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_BonProErn);
2253 trc_LibFyBP := trc_TotLibBP - least(trc_TotLibBP,trc_TotLibTA);
2254 trc_TotLibBP := greatest(trc_TotLibBP,trc_TotLibTA);
2255 trc_LibFpBP := trc_LibFyBP - bal_TX_ON_BP_YTD;
2256 ELSE
2257 hr_utility.set_location('py_za_tx_01032004.DirCalc',10);
2258 -- Set Cascade Figures and Refund
2259 trc_BonProErn := trc_TrvAllErn;
2260 trc_TotLibBP := trc_TotLibTA;
2261 trc_LibFpBP := -1 * bal_TX_ON_BP_YTD;
2262 trc_LibFpBPOvr := TRUE;
2263 END IF;
2264
2265 -- Annual Bonus
2266 --
2267 -- Ytd Annual Bonus
2268 trc_AnnBonYtd := bal_AB_NRFI_YTD + bal_AB_RFI_YTD;
2269 -- Skip the calculation if there is No Income
2270 IF trc_AnnBonYtd <> 0 THEN
2271 hr_utility.set_location('py_za_tx_01032004.DirCalc',11);
2272 -- Annual Bonus Earnings
2273 trc_AnnBonErn := trc_AnnBonYtd + trc_TrvAllErn;
2274 -- Tax Liability
2275 trc_TotLibAB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_AnnBonErn);
2276 trc_LibFyAB := trc_TotLibAB - least(trc_TotLibAB,trc_TotLibTA);
2277 trc_TotLibAB := greatest(trc_TotLibAB,trc_TotLibTA);
2278 -- Check Bonus Provision
2279 IF trc_BonProYtd <> 0 THEN
2280 hr_utility.set_location('py_za_tx_01032004.DirCalc',12);
2281 -- Check Bonus Provision Frequency
2282 IF dbi_BP_TX_RCV = 'B' OR py_za_tx_utl_01032004.SitePeriod THEN
2283 hr_utility.set_location('py_za_tx_01032004.DirCalc',13);
2284 trc_LibFpAB :=
2285 trc_LibFyAB - (bal_TX_ON_BP_YTD
2286 + trc_LibFpBP
2287 + bal_TX_ON_AB_YTD);
2288 ELSE
2289 hr_utility.set_location('py_za_tx_01032004.DirCalc',14);
2290 trc_LibFpAB := 0;
2291 END IF;
2292 ELSE
2293 hr_utility.set_location('py_za_tx_01032004.DirCalc',15);
2294 trc_LibFpAB := trc_LibFyAB - bal_TX_ON_AB_YTD;
2295 END IF;
2296 ELSE
2297 hr_utility.set_location('py_za_tx_01032004.DirCalc',16);
2298 -- Set Cascade Figures and Refund
2299 trc_LibFpAB := -1 * bal_TX_ON_AB_YTD;
2300 trc_LibFpABOvr := TRUE;
2301
2302 IF dbi_BP_TX_RCV = 'A' AND py_za_tx_utl_01032004.SitePeriod THEN
2303 hr_utility.set_location('py_za_tx_01032004.DirCalc',17);
2304 trc_LibFpBP := -1 * bal_TX_ON_BP_YTD;
2305 trc_LibFpBPOvr := TRUE;
2306 trc_LibFpAPOvr := TRUE;
2307
2308 trc_AnnBonErn := trc_TrvAllErn;
2309 trc_TotLibAB := trc_TotLibTA;
2310 ELSE
2311 hr_utility.set_location('py_za_tx_01032004.DirCalc',18);
2312 trc_AnnBonErn := trc_BonProErn;
2313 trc_TotLibAB := trc_TotLibBP;
2314 END IF;
2315 END IF;
2316
2317 -- Annual Payments
2318 --
2319 -- Ytd Annual Payments
2320 trc_AnnPymYtd :=
2321 ( bal_AA_PRCHD_RVAL_NRFI_YTD + bal_AA_PRCHD_RVAL_RFI_YTD
2322 + bal_ANN_BUR_AND_SCH_NRFI_YTD + bal_ANN_BUR_AND_SCH_RFI_YTD
2323 + bal_ANN_IC_PYMNTS_NRFI_YTD + bal_ANN_IC_PYMNTS_RFI_YTD
2324 + bal_ANN_LB_PYMNTS_NRFI_YTD + bal_ANN_LB_PYMNTS_RFI_YTD
2325 + bal_ANN_PYM_DBT_NRFI_YTD + bal_ANN_PYM_DBT_RFI_YTD
2326 + bal_AC_NRFI_YTD + bal_AC_RFI_YTD
2327 + bal_ANU_FRM_RET_FND_NRFI_YTD + bal_ANU_FRM_RET_FND_RFI_YTD
2328 + bal_ARES_TRD_NRFI_YTD + bal_ARES_TRD_RFI_YTD
2329 + bal_PRCH_ANU_TXB_NRFI_YTD + bal_PRCH_ANU_TXB_RFI_YTD
2330 + bal_TXB_AP_NRFI_YTD + bal_TXB_AP_RFI_YTD
2331 );
2332 -- Skip the calculation if there is No Income
2333 IF trc_AnnPymYtd <> 0 THEN
2334 hr_utility.set_location('py_za_tx_01032004.DirCalc',19);
2335 -- Annual Payments Earnings
2336 trc_AnnPymErn := trc_AnnPymYtd + trc_AnnBonErn;
2337 -- Tax Liability
2338 trc_TotLibAP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_AnnPymErn);
2339 trc_LibFyAP := trc_TotLibAP - least(trc_TotLibAP,trc_TotLibAB);
2340 trc_TotLibAP := greatest(trc_TotLibAP,trc_TotLibAB);
2341 trc_LibFpAP := trc_LibFyAP - bal_TX_ON_AP_YTD;
2342 ElSE
2343 hr_utility.set_location('py_za_tx_01032004.DirCalc',20);
2344 -- Set Cascade Figures and Refund
2345 trc_AnnPymErn := trc_AnnBonErn;
2346 trc_TotLibAP := trc_TotLibAB;
2347 trc_LibFpAP := -1 * bal_TX_ON_AP_YTD;
2348 trc_LibFpAPOvr := TRUE;
2349 END IF;
2350
2351 -- Public Office Allowance
2352 --
2353 -- Ytd Public Office Allowance
2354 trc_PblOffYtd := bal_PO_NRFI_YTD + bal_PO_RFI_YTD;
2355 -- Skip the calculation if there is No Income
2356 IF trc_PblOffYtd <> 0 THEN
2357 hr_utility.set_location('py_za_tx_01032004.DirCalc',21);
2358 -- Tax Liability
2359 trc_LibFyPO := trc_PblOffYtd * glb_ZA_PBL_TX_RTE / 100;
2360 trc_LibFpPO := trc_LibFyPO - bal_TX_ON_PO_YTD;
2361 ELSE
2362 hr_utility.set_location('py_za_tx_01032004.DirCalc',22);
2363 -- Set Cascade Figures and Refund
2364 trc_LibFyPO := 0;
2365 trc_LibFpPO := -1 * bal_TX_ON_PO_YTD;
2366 trc_LibFpPOOvr := TRUE;
2367 END IF;
2368
2369 -- Net Pay Validation
2370 --
2371 py_za_tx_utl_01032004.ValidateTaxOns(p_Rf => TRUE);
2372
2373 hr_utility.set_location('py_za_tx_01032004.DirCalc',23);
2374
2375 -- Tax Percentage Indicator
2376 --
2377 IF dbi_TX_STA IN ('D','P') THEN
2378 hr_utility.set_location('py_za_tx_01032004.DirCalc',24);
2379 trc_TxPercVal := dbi_TX_DIR_VAL;
2380 ELSIF dbi_TX_STA = 'E' THEN
2381 hr_utility.set_location('py_za_tx_01032004.DirCalc',25);
2382 trc_TxPercVal := glb_ZA_CC_TX_PRC;
2383 ELSIF dbi_TX_STA = 'F' THEN
2384 hr_utility.set_location('py_za_tx_01032004.DirCalc',26);
2385 trc_TxPercVal := glb_ZA_TMP_TX_RTE;
2386 ELSIF dbi_TX_STA = 'J' THEN
2387 hr_utility.set_location('py_za_tx_01032004.DirCalc',27);
2388 trc_TxPercVal := glb_ZA_PER_SERV_COMP_PERC;
2389 ELSIF dbi_TX_STA = 'K' THEN
2390 hr_utility.set_location('py_za_tx_01032004.DirCalc',28);
2391 trc_TxPercVal := glb_ZA_PER_SERV_TRST_PERC;
2392 ELSIF dbi_TX_STA = 'L' THEN
2393 hr_utility.set_location('py_za_tx_01032004.DirCalc',29);
2394 trc_TxPercVal := glb_ZA_PER_SERV_COMP_PERC;
2395 ELSE
2396 hr_utility.set_location('py_za_tx_01032004.DirCalc',30);
2397 trc_TxPercVal := 0;
2398 END IF;
2399
2400 hr_utility.set_location('py_za_tx_01032004.DirCalc',31);
2401
2402 -- Base Income
2403 WrtHrTrc('trc_BseErn: '||to_char(trc_BseErn));
2404 WrtHrTrc('trc_TxbBseInc: '||to_char(trc_TxbBseInc));
2405 WrtHrTrc('trc_TotLibBse: '||to_char(trc_TotLibBse));
2406 -- Normal Income
2407 WrtHrTrc('trc_NorIncYtd: '||to_char(trc_NorIncYtd));
2408 WrtHrTrc('trc_NorIncPtd: '||to_char(trc_NorIncPtd));
2409 WrtHrTrc('trc_NorErn: '||to_char(trc_NorErn));
2410 WrtHrTrc('trc_TxbNorInc: '||to_char(trc_TxbNorInc));
2411 WrtHrTrc('trc_TotLibNI: '||to_char(trc_TotLibNI));
2412 WrtHrTrc('trc_LibFyNI: '||to_char(trc_LibFyNI));
2413 WrtHrTrc('trc_LibFpNI: '||to_char(trc_LibFpNI));
2414 -- Fringe Benefits
2415 WrtHrTrc('trc_FrnBenYtd: '||to_char(trc_FrnBenYtd));
2416 WrtHrTrc('trc_FrnBenPtd: '||to_char(trc_FrnBenPtd));
2417 WrtHrTrc('trc_FrnBenErn: '||to_char(trc_FrnBenErn));
2418 WrtHrTrc('trc_TxbFrnInc: '||to_char(trc_TxbFrnInc));
2419 WrtHrTrc('trc_TotLibFB: '||to_char(trc_TotLibFB));
2420 WrtHrTrc('trc_LibFyFB: '||to_char(trc_LibFyFB));
2421 WrtHrTrc('trc_LibFpFB: '||to_char(trc_LibFpFB));
2422 -- Travel Allowance
2423 WrtHrTrc('trc_TrvAllYtd: '||to_char(trc_TrvAllYtd));
2424 WrtHrTrc('trc_TrvAllPtd: '||to_char(trc_TrvAllPtd));
2425 WrtHrTrc('trc_TrvAllErn: '||to_char(trc_TrvAllErn));
2426 WrtHrTrc('trc_TxbTrvInc: '||to_char(trc_TxbTrvInc));
2427 WrtHrTrc('trc_TotLibTA: '||to_char(trc_TotLibTA));
2428 WrtHrTrc('trc_LibFyTA: '||to_char(trc_LibFyTA));
2429 WrtHrTrc('trc_LibFpTA: '||to_char(trc_LibFpTA));
2430 -- Bonus Provision
2431 WrtHrTrc('trc_BonProYtd: '||to_char(trc_BonProYtd));
2432 WrtHrTrc('trc_BonProPtd: '||to_char(trc_BonProPtd));
2433 WrtHrTrc('trc_BonProErn: '||to_char(trc_BonProErn));
2434 WrtHrTrc('trc_TxbBonProInc: '||to_char(trc_TxbBonProInc));
2435 WrtHrTrc('trc_TotLibBP: '||to_char(trc_TotLibBP));
2436 WrtHrTrc('trc_LibFyBP: '||to_char(trc_LibFyBP));
2437 WrtHrTrc('trc_LibFpBP: '||to_char(trc_LibFpBP));
2438 -- Annual Bonus
2439 WrtHrTrc('trc_AnnBonYtd: '||to_char(trc_AnnBonYtd));
2440 WrtHrTrc('trc_AnnBonPtd: '||to_char(trc_AnnBonPtd));
2441 WrtHrTrc('trc_AnnBonErn: '||to_char(trc_AnnBonErn));
2442 WrtHrTrc('trc_TxbAnnBonInc: '||to_char(trc_TxbAnnBonInc));
2443 WrtHrTrc('trc_TotLibAB: '||to_char(trc_TotLibAB));
2444 WrtHrTrc('trc_LibFyAB: '||to_char(trc_LibFyAB));
2445 WrtHrTrc('trc_LibFpAB: '||to_char(trc_LibFpAB));
2446 -- Annual Payments
2447 WrtHrTrc('trc_AnnPymYtd: '||to_char(trc_AnnPymYtd));
2448 WrtHrTrc('trc_AnnPymPtd: '||to_char(trc_AnnPymPtd));
2449 WrtHrTrc('trc_AnnPymErn: '||to_char(trc_AnnPymErn));
2450 WrtHrTrc('trc_TxbAnnPymInc: '||to_char(trc_TxbAnnPymInc));
2451 WrtHrTrc('trc_TotLibAP: '||to_char(trc_TotLibAP));
2452 WrtHrTrc('trc_LibFyAP: '||to_char(trc_LibFyAP));
2453 WrtHrTrc('trc_LibFpAP: '||to_char(trc_LibFpAP));
2454 -- Pubilc Office Allowance
2455 WrtHrTrc('trc_PblOffYtd: '||to_char(trc_PblOffYtd));
2456 WrtHrTrc('trc_PblOffPtd: '||to_char(trc_PblOffPtd));
2457 WrtHrTrc('trc_PblOffErn: '||to_char(trc_PblOffErn));
2458 WrtHrTrc('trc_LibFyPO: '||to_char(trc_LibFyPO));
2459 WrtHrTrc('trc_LibFpPO: '||to_char(trc_LibFpPO));
2460
2461 EXCEPTION
2462 WHEN OTHERS THEN
2463 IF xpt_Msg = 'No Error' THEN
2464 xpt_Msg := 'DirCalc: '||TO_CHAR(SQLCODE);
2465 END IF;
2466 RAISE xpt_E;
2467 END DirCalc;
2468
2469 -------------------------------------------------------------------------------
2470 -- BasCalc --
2471 -- Pre-Earnings Tax Calculation --
2472 -------------------------------------------------------------------------------
2473 PROCEDURE BasCalc AS
2474 -- Variables
2475 --
2476 l_Np BALANCE;
2477 l_65Year DATE;
2478
2479 BEGIN
2480 hr_utility.set_location('py_za_tx_01032004.BasCalc',1);
2481 -- Identify the Calculation
2482 --
2483 trc_CalTyp := 'BasCalc';
2484
2485 -- Rebates
2486 py_za_tx_utl_01032004.SetRebates;
2487
2488 -- Abatements
2489 py_za_tx_utl_01032004.Abatements;
2490
2491 -- Deemed Remuneration
2492 --
2493 -- Run Deemed Remuneration
2494 trc_DmdRmnRun := bal_DIR_DMD_RMN_ITD;
2495
2496 -- Skip the calculation if there is No Income
2497 IF trc_DmdRmnRun <> 0 THEN
2498 hr_utility.set_location('py_za_tx_01032004.BasCalc',2);
2499 -- Taxable Deemed Remuneration
2500 trc_TxbDmdRmn := trc_DmdRmnRun;
2501 -- Threshold Check
2502 IF trc_TxbDmdRmn >= trc_Threshold THEN
2503 hr_utility.set_location('py_za_tx_01032004.BasCalc',3);
2504 -- Tax Liability
2505 trc_TotLibDR := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbDmdRmn);
2506 ELSE
2507 hr_utility.set_location('py_za_tx_01032004.BasCalc',4);
2508 trc_TotLibDR := 0;
2509 END IF;
2510 ELSE
2511 hr_utility.set_location('py_za_tx_01032004.BasCalc',5);
2512 trc_TotLibDR := 0;
2513 END IF;
2514
2515 hr_utility.set_location('py_za_tx_01032004.BasCalc',6);
2516
2517 -- Base Earnings
2518 --
2519 --Base Earnings
2520 trc_BseErn :=
2521 ( bal_AB_NRFI_PTD + bal_AB_RFI_PTD
2522 + bal_AA_PRCHD_RVAL_NRFI_PTD + bal_AA_PRCHD_RVAL_RFI_PTD
2523 + bal_ANN_BUR_AND_SCH_NRFI_PTD + bal_ANN_BUR_AND_SCH_RFI_PTD
2524 + bal_ANN_IC_PYMNTS_NRFI_PTD + bal_ANN_IC_PYMNTS_RFI_PTD
2525 + bal_ANN_LB_PYMNTS_NRFI_PTD + bal_ANN_LB_PYMNTS_RFI_PTD
2526 + bal_ANN_PYM_DBT_NRFI_PTD + bal_ANN_PYM_DBT_RFI_PTD
2527 + bal_AC_NRFI_PTD + bal_AC_RFI_PTD
2528 + bal_ANU_FRM_RET_FND_NRFI_PTD + bal_ANU_FRM_RET_FND_RFI_PTD
2529 + bal_ARES_TRD_NRFI_PTD + bal_ARES_TRD_RFI_PTD
2530 + bal_PRCH_ANU_TXB_NRFI_PTD + bal_PRCH_ANU_TXB_RFI_PTD
2531 + bal_TXB_AP_NRFI_PTD + bal_TXB_AP_RFI_PTD
2532 );
2533 -- Estimate Base Taxable Income
2534 trc_TxbBseInc := trc_BseErn * dbi_ZA_PAY_PRDS_PER_YR;
2535 -- Threshold Check
2536 IF trc_TxbBseInc >= trc_Threshold THEN
2537 hr_utility.set_location('py_za_tx_01032004.BasCalc',7);
2538 -- Tax Liability
2539 trc_TotLibBse := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbBseInc);
2540 trc_TotLibBse := greatest(trc_TotLibBse,trc_TotLibDR);
2541 ELSE
2542 hr_utility.set_location('py_za_tx_01032004.BasCalc',8);
2543 trc_TotLibBse := trc_TotLibDR;
2544 END IF;
2545
2546 hr_utility.set_location('py_za_tx_01032004.BasCalc',9);
2547
2548 -- Annual Bonus
2549 --
2550 -- Ytd Annual Bonus
2551 trc_AnnBonYtd := bal_AB_NRFI_YTD + bal_AB_RFI_YTD;
2552 -- Skip the calculation if there is No Income
2553 IF trc_AnnBonYtd <> 0 THEN
2554 hr_utility.set_location('py_za_tx_01032004.BasCalc',10);
2555 -- Annual Bonus Earnings
2556 trc_AnnBonErn := trc_AnnBonYtd + trc_TxbBseInc;
2557 -- Taxable Annual Bonus Income
2558 trc_TxbAnnBonInc := trc_AnnBonErn - trc_AnnTotAbm;
2559 -- Threshold Check
2560 IF trc_TxbAnnBonInc >= trc_Threshold THEN
2561 hr_utility.set_location('py_za_tx_01032004.BasCalc',11);
2562 -- Tax Liability
2563 trc_TotLibAB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnBonInc);
2564 trc_LibFyAB := trc_TotLibAB - least(trc_TotLibAB,trc_TotLibBse);
2565 trc_TotLibAB := greatest(trc_TotLibAB,trc_TotLibBse);
2566 -- Check Bonus Provision
2567 IF bal_BP_YTD <> 0 THEN
2568 hr_utility.set_location('py_za_tx_01032004.BasCalc',12);
2569 -- Check Bonus Provision Frequency
2570 IF dbi_BP_TX_RCV = 'A' THEN
2571 hr_utility.set_location('py_za_tx_01032004.BasCalc',13);
2572 trc_LibFpAB := 0;
2573 ELSE
2574 hr_utility.set_location('py_za_tx_01032004.BasCalc',14);
2575 trc_LibFpAB := trc_LibFyAB - ( bal_TX_ON_BP_YTD
2576 + bal_TX_ON_AB_YTD);
2577 END IF;
2578 ELSE
2579 hr_utility.set_location('py_za_tx_01032004.BasCalc',15);
2580 trc_LibFpAB := trc_LibFyAB - bal_TX_ON_AB_YTD;
2581 END IF;
2582 ELSE
2583 hr_utility.set_location('py_za_tx_01032004.BasCalc',16);
2584 trc_TotLibAB := trc_TotLibBse;
2585 END IF;
2586 ELSE
2587 hr_utility.set_location('py_za_tx_01032004.BasCalc',17);
2588 trc_TotLibAB := trc_TotLibBse;
2589 trc_TxbAnnBonInc := trc_TxbBseInc;
2590 END IF;
2591
2592 hr_utility.set_location('py_za_tx_01032004.BasCalc',18);
2593
2594 -- Annual Payments
2595 --
2596 -- Ytd Annual Payments
2597 trc_AnnPymYtd :=
2598 ( bal_AA_PRCHD_RVAL_NRFI_YTD + bal_AA_PRCHD_RVAL_RFI_YTD
2599 + bal_ANN_BUR_AND_SCH_NRFI_YTD + bal_ANN_BUR_AND_SCH_RFI_YTD
2600 + bal_ANN_IC_PYMNTS_NRFI_YTD + bal_ANN_IC_PYMNTS_RFI_PTD
2601 + bal_ANN_LB_PYMNTS_NRFI_YTD + bal_ANN_LB_PYMNTS_RFI_PTD
2602 + bal_ANN_PYM_DBT_NRFI_YTD + bal_ANN_PYM_DBT_RFI_YTD
2603 + bal_AC_NRFI_YTD + bal_AC_RFI_YTD
2604 + bal_ANU_FRM_RET_FND_NRFI_YTD + bal_ANU_FRM_RET_FND_RFI_YTD
2605 + bal_ARES_TRD_NRFI_YTD + bal_ARES_TRD_RFI_YTD
2606 + bal_PRCH_ANU_TXB_NRFI_YTD + bal_PRCH_ANU_TXB_RFI_YTD
2607 + bal_TXB_AP_NRFI_YTD + bal_TXB_AP_RFI_YTD
2608 );
2609 -- Skip the calculation if there is No Income
2610 IF trc_AnnPymYtd <> 0 THEN
2611 hr_utility.set_location('py_za_tx_01032004.BasCalc',19);
2612 -- Taxable Annual Payments Income
2613 trc_TxbAnnPymInc := trc_AnnPymYtd + trc_TxbAnnBonInc;
2614 -- Threshold Check
2615 IF trc_TxbAnnPymInc >= trc_Threshold THEN
2616 hr_utility.set_location('py_za_tx_01032004.BasCalc',20);
2617 -- Tax Liability
2618 trc_TotLibAP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnPymInc);
2619 trc_LibFyAP := trc_TotLibAP - least(trc_TotLibAP,trc_TotLibAB);
2620 trc_TotLibAP := greatest(trc_TotLibAP,trc_TotLibAB);
2621 trc_LibFpAP := trc_LibFyAP - bal_TX_ON_AP_YTD;
2622 ELSE
2623 hr_utility.set_location('py_za_tx_01032004.BasCalc',21);
2624 NULL;
2625 END IF;
2626 ELSE
2627 hr_utility.set_location('py_za_tx_01032004.BasCalc',22);
2628 NULL;
2629 END IF;
2630
2631 -- Net Pay Validation
2632 --
2633 py_za_tx_utl_01032004.ValidateTaxOns;
2634
2635 -- Deemed Remuneration
2636 WrtHrTrc('trc_TxbDmdRmn: '||to_char(trc_TxbDmdRmn));
2637 WrtHrTrc('trc_TotLibDR: '||to_char(trc_TotLibDR));
2638 WrtHrTrc('trc_LibFyDR: '||to_char(trc_LibFyDR));
2639 WrtHrTrc('trc_LibFpDR: '||to_char(trc_LibFpDR));
2640 -- Base Income
2641 WrtHrTrc('trc_BseErn: '||to_char(trc_BseErn));
2642 WrtHrTrc('trc_TxbBseInc: '||to_char(trc_TxbBseInc));
2643 WrtHrTrc('trc_TotLibBse: '||to_char(trc_TotLibBse));
2644 -- Normal Income
2645 WrtHrTrc('trc_NorIncYtd: '||to_char(trc_NorIncYtd));
2646 WrtHrTrc('trc_NorIncPtd: '||to_char(trc_NorIncPtd));
2647 WrtHrTrc('trc_NorErn: '||to_char(trc_NorErn));
2648 WrtHrTrc('trc_TxbNorInc: '||to_char(trc_TxbNorInc));
2649 WrtHrTrc('trc_TotLibNI: '||to_char(trc_TotLibNI));
2650 WrtHrTrc('trc_LibFyNI: '||to_char(trc_LibFyNI));
2651 WrtHrTrc('trc_LibFpNI: '||to_char(trc_LibFpNI));
2652 -- Fringe Benefits
2653 WrtHrTrc('trc_FrnBenYtd: '||to_char(trc_FrnBenYtd));
2654 WrtHrTrc('trc_FrnBenPtd: '||to_char(trc_FrnBenPtd));
2655 WrtHrTrc('trc_FrnBenErn: '||to_char(trc_FrnBenErn));
2656 WrtHrTrc('trc_TxbFrnInc: '||to_char(trc_TxbFrnInc));
2657 WrtHrTrc('trc_TotLibFB: '||to_char(trc_TotLibFB));
2658 WrtHrTrc('trc_LibFyFB: '||to_char(trc_LibFyFB));
2659 WrtHrTrc('trc_LibFpFB: '||to_char(trc_LibFpFB));
2660 -- Travel Allowance
2661 WrtHrTrc('trc_TrvAllYtd: '||to_char(trc_TrvAllYtd));
2662 WrtHrTrc('trc_TrvAllPtd: '||to_char(trc_TrvAllPtd));
2663 WrtHrTrc('trc_TrvAllErn: '||to_char(trc_TrvAllErn));
2664 WrtHrTrc('trc_TxbTrvInc: '||to_char(trc_TxbTrvInc));
2665 WrtHrTrc('trc_TotLibTA: '||to_char(trc_TotLibTA));
2666 WrtHrTrc('trc_LibFyTA: '||to_char(trc_LibFyTA));
2667 WrtHrTrc('trc_LibFpTA: '||to_char(trc_LibFpTA));
2668 -- Bonus Provision
2669 WrtHrTrc('trc_BonProYtd: '||to_char(trc_BonProYtd));
2670 WrtHrTrc('trc_BonProPtd: '||to_char(trc_BonProPtd));
2671 WrtHrTrc('trc_BonProErn: '||to_char(trc_BonProErn));
2672 WrtHrTrc('trc_TxbBonProInc: '||to_char(trc_TxbBonProInc));
2673 WrtHrTrc('trc_TotLibBP: '||to_char(trc_TotLibBP));
2674 WrtHrTrc('trc_LibFyBP: '||to_char(trc_LibFyBP));
2675 WrtHrTrc('trc_LibFpBP: '||to_char(trc_LibFpBP));
2676 -- Annual Bonus
2677 WrtHrTrc('trc_AnnBonYtd: '||to_char(trc_AnnBonYtd));
2678 WrtHrTrc('trc_AnnBonPtd: '||to_char(trc_AnnBonPtd));
2679 WrtHrTrc('trc_AnnBonErn: '||to_char(trc_AnnBonErn));
2680 WrtHrTrc('trc_TxbAnnBonInc: '||to_char(trc_TxbAnnBonInc));
2681 WrtHrTrc('trc_TotLibAB: '||to_char(trc_TotLibAB));
2682 WrtHrTrc('trc_LibFyAB: '||to_char(trc_LibFyAB));
2683 WrtHrTrc('trc_LibFpAB: '||to_char(trc_LibFpAB));
2684 -- Annual Payments
2685 WrtHrTrc('trc_AnnPymYtd: '||to_char(trc_AnnPymYtd));
2686 WrtHrTrc('trc_AnnPymPtd: '||to_char(trc_AnnPymPtd));
2687 WrtHrTrc('trc_AnnPymErn: '||to_char(trc_AnnPymErn));
2688 WrtHrTrc('trc_TxbAnnPymInc: '||to_char(trc_TxbAnnPymInc));
2689 WrtHrTrc('trc_TotLibAP: '||to_char(trc_TotLibAP));
2690 WrtHrTrc('trc_LibFyAP: '||to_char(trc_LibFyAP));
2691 WrtHrTrc('trc_LibFpAP: '||to_char(trc_LibFpAP));
2692 -- Pubilc Office Allowance
2693 WrtHrTrc('trc_PblOffYtd: '||to_char(trc_PblOffYtd));
2694 WrtHrTrc('trc_PblOffPtd: '||to_char(trc_PblOffPtd));
2695 WrtHrTrc('trc_PblOffErn: '||to_char(trc_PblOffErn));
2696 WrtHrTrc('trc_LibFyPO: '||to_char(trc_LibFyPO));
2697 WrtHrTrc('trc_LibFpPO: '||to_char(trc_LibFpPO));
2698
2699 EXCEPTION
2700 WHEN OTHERS THEN
2701 IF xpt_Msg = 'No Error' THEN
2702 xpt_Msg := 'BasCalc: '||TO_CHAR(SQLCODE);
2703 END IF;
2704 RAISE xpt_E;
2705 END BasCalc;
2706
2707 -------------------------------------------------------------------------------
2708 -- CalCalc --
2709 -- Pre-Earnings Tax Calculation --
2710 -------------------------------------------------------------------------------
2711 PROCEDURE CalCalc AS
2712 -- Variables
2713 --
2714 l_Np BALANCE;
2715
2716 BEGIN
2717 hr_utility.set_location('py_za_tx_01032004.CalCalc',1);
2718 -- Identify the calculation
2719 --
2720 trc_CalTyp := 'CalCalc';
2721
2722 -- Update Global Balance Values with correct TAXABLE values
2723 --
2724 py_za_tx_utl_01032004.TrvAll;
2725
2726 hr_utility.set_location('py_za_tx_01032004.CalCalc',2);
2727
2728 -- Calendar Ytd Taxable Income
2729 --
2730 trc_TxbIncYtd :=
2731 ( bal_AST_PRCHD_RVAL_NRFI_CYTD + bal_AST_PRCHD_RVAL_RFI_CYTD
2732 + bal_BUR_AND_SCH_NRFI_CYTD + bal_BUR_AND_SCH_RFI_CYTD
2733 + bal_COMM_NRFI_CYTD + bal_COMM_RFI_CYTD
2734 + bal_COMP_ALL_NRFI_CYTD + bal_COMP_ALL_RFI_CYTD
2735 + bal_ENT_ALL_NRFI_CYTD + bal_ENT_ALL_RFI_CYTD
2736 + bal_FREE_ACCOM_NRFI_CYTD + bal_FREE_ACCOM_RFI_CYTD
2737 + bal_FREE_SERV_NRFI_CYTD + bal_FREE_SERV_RFI_CYTD
2738 + bal_IC_PYMNTS_NRFI_CYTD + bal_IC_PYMNTS_RFI_CYTD
2739 + bal_LB_PYMNTS_NRFI_CYTD + bal_LB_PYMNTS_RFI_CYTD
2740 + bal_LOW_LOANS_NRFI_CYTD + bal_LOW_LOANS_RFI_CYTD
2741 + bal_MLS_AND_VOUCH_NRFI_CYTD + bal_MLS_AND_VOUCH_RFI_CYTD
2742 + bal_MED_PAID_NRFI_CYTD + bal_MED_PAID_RFI_CYTD
2743 + bal_OTHER_TXB_ALL_NRFI_CYTD + bal_OTHER_TXB_ALL_RFI_CYTD
2744 + bal_OVTM_NRFI_CYTD + bal_OVTM_RFI_CYTD
2745 + bal_PYM_DBT_NRFI_CYTD + bal_PYM_DBT_RFI_CYTD
2746 + bal_RES_TRD_NRFI_CYTD + bal_RES_TRD_RFI_CYTD
2747 + bal_RGT_AST_NRFI_CYTD + bal_RGT_AST_RFI_CYTD
2748 + bal_TXB_INC_NRFI_CYTD + bal_TXB_INC_RFI_CYTD
2749 + bal_TXB_PEN_NRFI_CYTD + bal_TXB_PEN_RFI_CYTD
2750 + bal_TEL_ALL_NRFI_CYTD + bal_TEL_ALL_RFI_CYTD
2751 + bal_TOOL_ALL_NRFI_CYTD + bal_TOOL_ALL_RFI_CYTD
2752 + bal_TA_NRFI_CYTD + bal_TA_RFI_CYTD
2753 + bal_USE_VEH_NRFI_CYTD + bal_USE_VEH_RFI_CYTD
2754 );
2755
2756 -- If there is no Income Execute the Base calculation
2757 --
2758 IF trc_TxbIncYtd = 0 THEN
2759 hr_utility.set_location('py_za_tx_01032004.CalCalc',3);
2760 BasCalc;
2761 ELSE -- continue CalCalc
2762 hr_utility.set_location('py_za_tx_01032004.CalCalc',4);
2763 -- Site Factor
2764 --
2765 trc_SitFactor := dbi_ZA_DYS_IN_YR / py_za_tx_utl_01032004.DaysWorked;
2766
2767 -- Rebates
2768 py_za_tx_utl_01032004.SetRebates;
2769
2770 -- Abatements
2771 py_za_tx_utl_01032004.Abatements;
2772
2773 hr_utility.set_location('py_za_tx_01032004.CalCalc',5);
2774
2775 -- Deemed Remuneration
2776 --
2777 -- Run Deemed Remuneration
2778 trc_DmdRmnRun := bal_DIR_DMD_RMN_ITD;
2779
2780 -- Skip the calculation if there is No Income
2781 IF trc_DmdRmnRun <> 0 THEN
2782 hr_utility.set_location('py_za_tx_01032004.CalCalc',6);
2783 -- Taxable Deemed Remuneration
2784 trc_TxbDmdRmn := trc_DmdRmnRun;
2785 -- Threshold Check
2786 IF trc_TxbDmdRmn >= trc_Threshold THEN
2787 hr_utility.set_location('py_za_tx_01032004.CalCalc',7);
2788 -- Tax Liability
2789 trc_TotLibDR := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbDmdRmn);
2790 ELSE
2791 hr_utility.set_location('py_za_tx_01032004.CalCalc',8);
2792 trc_TotLibDR := 0;
2793 END IF;
2794 ELSE
2795 hr_utility.set_location('py_za_tx_01032004.CalCalc',9);
2796 trc_TotLibDR := 0;
2797 END IF;
2798
2799 hr_utility.set_location('py_za_tx_01032004.CalCalc',10);
2800
2801 -- Base Earnings
2802 --
2803 -- Base Earnings
2804 trc_BseErn := trc_TxbIncYtd * trc_SitFactor;
2805 -- Taxable Base Income
2806 trc_TxbBseInc := trc_BseErn - trc_PerTotAbm;
2807 -- Threshold Check
2808 IF trc_TxbBseInc >= trc_Threshold THEN
2809 hr_utility.set_location('py_za_tx_01032004.CalCalc',11);
2810 -- Tax Liability
2811 trc_TotLibBse := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbBseInc);
2812 trc_TotLibBse := greatest(trc_TotLibBse,trc_TotLibDR);
2813 ELSE
2814 hr_utility.set_location('py_za_tx_01032004.CalCalc',12);
2815 trc_TotLibBse := trc_TotLibDR;
2816 END IF;
2817
2818 hr_utility.set_location('py_za_tx_01032004.CalCalc',13);
2819
2820 -- Annual Bonus
2821 --
2822 -- Ytd Annual Bonus
2823 trc_AnnBonYtd := bal_AB_NRFI_YTD + bal_AB_RFI_YTD;
2824 -- Skip the calculation if there is No Income
2825 IF trc_AnnBonYtd <> 0 THEN
2826 hr_utility.set_location('py_za_tx_01032004.CalCalc',14);
2827 -- Annual Bonus Earnings
2828 trc_AnnBonErn := trc_AnnBonYtd + trc_BseErn;
2829 -- Taxable Annual Bonus Income
2830 trc_TxbAnnBonInc := trc_AnnBonErn - trc_AnnTotAbm;
2831 -- Threshold Check
2832 IF trc_TxbAnnBonInc >= trc_Threshold THEN
2833 hr_utility.set_location('py_za_tx_01032004.CalCalc',15);
2834 -- Tax Liability
2835 trc_TotLibAB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnBonInc);
2836 trc_LibFyAB := trc_TotLibAB - least(trc_TotLibAB,trc_TotLibBse);
2837 trc_TotLibAB := greatest(trc_TotLibAB,trc_TotLibBse);
2838 -- Check Bonus Provision
2839 IF bal_BP_YTD <> 0 THEN
2840 hr_utility.set_location('py_za_tx_01032004.CalCalc',16);
2841 -- Check Bonus Provision Frequency
2842 IF dbi_BP_TX_RCV = 'A' THEN
2843 hr_utility.set_location('py_za_tx_01032004.CalCalc',17);
2844 trc_LibFpAB := 0;
2845 ELSE
2846 hr_utility.set_location('py_za_tx_01032004.CalCalc',18);
2847 trc_LibFpAB := trc_LibFyAB - ( bal_TX_ON_BP_YTD
2848 + bal_TX_ON_AB_YTD);
2849 END IF;
2850 ELSE
2851 hr_utility.set_location('py_za_tx_01032004.CalCalc',19);
2852 trc_LibFpAB := trc_LibFyAB - bal_TX_ON_AB_YTD;
2853 END IF;
2854 ELSE
2855 hr_utility.set_location('py_za_tx_01032004.CalCalc',20);
2856 trc_TotLibAB := trc_TotLibBse;
2857 END IF;
2858 ELSE
2859 hr_utility.set_location('py_za_tx_01032004.CalCalc',21);
2860 trc_AnnBonErn := trc_BseErn;
2861 trc_TxbAnnBonInc := trc_TxbBseInc;
2862 trc_TotLibAB := trc_TotLibBse;
2863 END IF;
2864
2865 hr_utility.set_location('py_za_tx_01032004.CalCalc',22);
2866
2867 -- Annual Payments
2868 --
2869 -- Ytd Annual Payments
2870 trc_AnnPymYtd :=
2871 ( bal_AA_PRCHD_RVAL_NRFI_YTD + bal_AA_PRCHD_RVAL_RFI_YTD
2872 + bal_ANN_BUR_AND_SCH_NRFI_YTD + bal_ANN_BUR_AND_SCH_RFI_YTD
2873 + bal_ANN_IC_PYMNTS_NRFI_YTD + bal_ANN_IC_PYMNTS_RFI_YTD
2874 + bal_ANN_LB_PYMNTS_NRFI_YTD + bal_ANN_LB_PYMNTS_RFI_YTD
2875 + bal_ANN_PYM_DBT_NRFI_YTD + bal_ANN_PYM_DBT_RFI_YTD
2876 + bal_AC_NRFI_YTD + bal_AC_RFI_YTD
2877 + bal_ANU_FRM_RET_FND_NRFI_YTD + bal_ANU_FRM_RET_FND_RFI_YTD
2878 + bal_ARES_TRD_NRFI_YTD + bal_ARES_TRD_RFI_YTD
2879 + bal_PRCH_ANU_TXB_NRFI_YTD + bal_PRCH_ANU_TXB_RFI_YTD
2880 + bal_TXB_AP_NRFI_YTD + bal_TXB_AP_RFI_YTD
2881 );
2882 -- Skip the calculation if there is No Income
2883 IF trc_AnnPymYtd <> 0 THEN
2884 hr_utility.set_location('py_za_tx_01032004.CalCalc',23);
2885 -- Annual Payments Earnings
2886 trc_AnnPymErn := trc_AnnPymYtd + trc_AnnBonErn;
2887 -- Taxable Annual Payments Income
2888 trc_TxbAnnPymInc := trc_AnnPymErn - trc_AnnTotAbm;
2889 -- Threshold Check
2890 IF trc_TxbAnnPymInc >= trc_Threshold THEN
2891 hr_utility.set_location('py_za_tx_01032004.CalCalc',24);
2892 -- Tax Liability
2893 trc_TotLibAP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnPymInc);
2894 trc_LibFyAP := trc_TotLibAP - least(trc_TotLibAP,trc_TotLibAB);
2895 trc_TotLibAP := greatest(trc_TotLibAP,trc_TotLibAB);
2896 trc_LibFpAP := trc_LibFyAP - bal_TX_ON_AP_YTD;
2897 ELSE
2898 hr_utility.set_location('py_za_tx_01032004.CalCalc',25);
2899 trc_TotLibAP := trc_TotLibAB;
2900 END IF;
2901 ELSE
2902 hr_utility.set_location('py_za_tx_01032004.CalCalc',26);
2903 trc_AnnPymErn := trc_AnnBonErn;
2904 trc_TxbAnnPymInc := trc_TxbAnnBonInc;
2905 trc_TotLibAP := trc_TotLibAB;
2906 END IF;
2907
2908 -- Net pay Validation
2909 --
2910 py_za_tx_utl_01032004.ValidateTaxOns;
2911
2912 -- Deemed Remuneration
2913 WrtHrTrc('trc_TxbDmdRmn: '||to_char(trc_TxbDmdRmn));
2914 WrtHrTrc('trc_TotLibDR: '||to_char(trc_TotLibDR));
2915 WrtHrTrc('trc_LibFyDR: '||to_char(trc_LibFyDR));
2916 WrtHrTrc('trc_LibFpDR: '||to_char(trc_LibFpDR));
2917 -- Base Income
2918 WrtHrTrc('trc_BseErn: '||to_char(trc_BseErn));
2919 WrtHrTrc('trc_TxbBseInc: '||to_char(trc_TxbBseInc));
2920 WrtHrTrc('trc_TotLibBse: '||to_char(trc_TotLibBse));
2921 -- Normal Income
2922 WrtHrTrc('trc_NorIncYtd: '||to_char(trc_NorIncYtd));
2923 WrtHrTrc('trc_NorIncPtd: '||to_char(trc_NorIncPtd));
2924 WrtHrTrc('trc_NorErn: '||to_char(trc_NorErn));
2925 WrtHrTrc('trc_TxbNorInc: '||to_char(trc_TxbNorInc));
2926 WrtHrTrc('trc_TotLibNI: '||to_char(trc_TotLibNI));
2927 WrtHrTrc('trc_LibFyNI: '||to_char(trc_LibFyNI));
2928 WrtHrTrc('trc_LibFpNI: '||to_char(trc_LibFpNI));
2929 -- Fringe Benefits
2930 WrtHrTrc('trc_FrnBenYtd: '||to_char(trc_FrnBenYtd));
2931 WrtHrTrc('trc_FrnBenPtd: '||to_char(trc_FrnBenPtd));
2932 WrtHrTrc('trc_FrnBenErn: '||to_char(trc_FrnBenErn));
2933 WrtHrTrc('trc_TxbFrnInc: '||to_char(trc_TxbFrnInc));
2934 WrtHrTrc('trc_TotLibFB: '||to_char(trc_TotLibFB));
2935 WrtHrTrc('trc_LibFyFB: '||to_char(trc_LibFyFB));
2936 WrtHrTrc('trc_LibFpFB: '||to_char(trc_LibFpFB));
2937 -- Travel Allowance
2938 WrtHrTrc('trc_TrvAllYtd: '||to_char(trc_TrvAllYtd));
2939 WrtHrTrc('trc_TrvAllPtd: '||to_char(trc_TrvAllPtd));
2940 WrtHrTrc('trc_TrvAllErn: '||to_char(trc_TrvAllErn));
2941 WrtHrTrc('trc_TxbTrvInc: '||to_char(trc_TxbTrvInc));
2942 WrtHrTrc('trc_TotLibTA: '||to_char(trc_TotLibTA));
2943 WrtHrTrc('trc_LibFyTA: '||to_char(trc_LibFyTA));
2944 WrtHrTrc('trc_LibFpTA: '||to_char(trc_LibFpTA));
2945 -- Bonus Provision
2946 WrtHrTrc('trc_BonProYtd: '||to_char(trc_BonProYtd));
2947 WrtHrTrc('trc_BonProPtd: '||to_char(trc_BonProPtd));
2948 WrtHrTrc('trc_BonProErn: '||to_char(trc_BonProErn));
2949 WrtHrTrc('trc_TxbBonProInc: '||to_char(trc_TxbBonProInc));
2950 WrtHrTrc('trc_TotLibBP: '||to_char(trc_TotLibBP));
2951 WrtHrTrc('trc_LibFyBP: '||to_char(trc_LibFyBP));
2952 WrtHrTrc('trc_LibFpBP: '||to_char(trc_LibFpBP));
2953 -- Annual Bonus
2954 WrtHrTrc('trc_AnnBonYtd: '||to_char(trc_AnnBonYtd));
2955 WrtHrTrc('trc_AnnBonPtd: '||to_char(trc_AnnBonPtd));
2956 WrtHrTrc('trc_AnnBonErn: '||to_char(trc_AnnBonErn));
2957 WrtHrTrc('trc_TxbAnnBonInc: '||to_char(trc_TxbAnnBonInc));
2958 WrtHrTrc('trc_TotLibAB: '||to_char(trc_TotLibAB));
2959 WrtHrTrc('trc_LibFyAB: '||to_char(trc_LibFyAB));
2960 WrtHrTrc('trc_LibFpAB: '||to_char(trc_LibFpAB));
2961 -- Annual Payments
2962 WrtHrTrc('trc_AnnPymYtd: '||to_char(trc_AnnPymYtd));
2963 WrtHrTrc('trc_AnnPymPtd: '||to_char(trc_AnnPymPtd));
2964 WrtHrTrc('trc_AnnPymErn: '||to_char(trc_AnnPymErn));
2965 WrtHrTrc('trc_TxbAnnPymInc: '||to_char(trc_TxbAnnPymInc));
2966 WrtHrTrc('trc_TotLibAP: '||to_char(trc_TotLibAP));
2967 WrtHrTrc('trc_LibFyAP: '||to_char(trc_LibFyAP));
2968 WrtHrTrc('trc_LibFpAP: '||to_char(trc_LibFpAP));
2969 -- Pubilc Office Allowance
2970 WrtHrTrc('trc_PblOffYtd: '||to_char(trc_PblOffYtd));
2971 WrtHrTrc('trc_PblOffPtd: '||to_char(trc_PblOffPtd));
2972 WrtHrTrc('trc_PblOffErn: '||to_char(trc_PblOffErn));
2973 WrtHrTrc('trc_LibFyPO: '||to_char(trc_LibFyPO));
2974 WrtHrTrc('trc_LibFpPO: '||to_char(trc_LibFpPO));
2975
2976 END IF;
2977
2978 hr_utility.set_location('py_za_tx_01032004.CalCalc',27);
2979
2980 EXCEPTION
2981 WHEN OTHERS THEN
2982 IF xpt_Msg = 'No Error' THEN
2983 xpt_Msg := 'CalCalc: '||TO_CHAR(SQLCODE);
2984 END IF;
2985 RAISE xpt_E;
2986 END CalCalc;
2987 -------------------------------------------------------------------------------
2988 -- YtdCalc --
2989 -- Pre-Earnings Tax Calculation --
2990 -------------------------------------------------------------------------------
2991 PROCEDURE YtdCalc AS
2992 -- Variables
2993 --
2994 l_Np BALANCE;
2995
2996 BEGIN
2997 hr_utility.set_location('py_za_tx_01032004.YtdCalc',1);
2998 -- Identify the calculation
2999 --
3000 trc_CalTyp := 'YtdCalc';
3001
3002 -- Update Global Balance Values with correct TAXABLE values
3003 py_za_tx_utl_01032004.TrvAll;
3004
3005 hr_utility.set_location('py_za_tx_01032004.YtdCalc',2);
3006
3007 -- Ytd Taxable Income
3008 trc_TxbIncYtd :=
3009 ( bal_AST_PRCHD_RVAL_NRFI_YTD + bal_AST_PRCHD_RVAL_RFI_YTD
3010 + bal_BP_YTD
3011 + bal_BUR_AND_SCH_NRFI_YTD + bal_BUR_AND_SCH_RFI_YTD
3012 + bal_COMM_NRFI_YTD + bal_COMM_RFI_YTD
3013 + bal_COMP_ALL_NRFI_YTD + bal_COMP_ALL_RFI_YTD
3014 + bal_ENT_ALL_NRFI_YTD + bal_ENT_ALL_RFI_YTD
3015 + bal_FREE_ACCOM_NRFI_YTD + bal_FREE_ACCOM_RFI_YTD
3016 + bal_FREE_SERV_NRFI_YTD + bal_FREE_SERV_RFI_YTD
3017 + bal_IC_PYMNTS_NRFI_YTD + bal_IC_PYMNTS_RFI_YTD
3018 + bal_LB_PYMNTS_NRFI_YTD + bal_LB_PYMNTS_RFI_YTD
3019 + bal_LOW_LOANS_NRFI_YTD + bal_LOW_LOANS_RFI_YTD
3020 + bal_MLS_AND_VOUCH_NRFI_YTD + bal_MLS_AND_VOUCH_RFI_YTD
3021 + bal_MED_PAID_NRFI_YTD + bal_MED_PAID_RFI_YTD
3022 + bal_OTHER_TXB_ALL_NRFI_YTD + bal_OTHER_TXB_ALL_RFI_YTD
3023 + bal_OVTM_NRFI_YTD + bal_OVTM_RFI_YTD
3024 + bal_PYM_DBT_NRFI_YTD + bal_PYM_DBT_RFI_YTD
3025 + bal_RES_TRD_NRFI_YTD + bal_RES_TRD_RFI_YTD
3026 + bal_RGT_AST_NRFI_YTD + bal_RGT_AST_RFI_YTD
3027 + bal_TXB_INC_NRFI_YTD + bal_TXB_INC_RFI_YTD
3028 + bal_TXB_PEN_NRFI_YTD + bal_TXB_PEN_RFI_YTD
3029 + bal_TEL_ALL_NRFI_YTD + bal_TEL_ALL_RFI_YTD
3030 + bal_TOOL_ALL_NRFI_YTD + bal_TOOL_ALL_RFI_YTD
3031 + bal_TA_NRFI_YTD + bal_TA_RFI_YTD
3032 + bal_USE_VEH_NRFI_YTD + bal_USE_VEH_RFI_YTD
3033 );
3034
3035 -- If the Ytd Taxable Income = 0, execute the CalCalc
3036 IF trc_TxbIncYtd = 0 THEN
3037 hr_utility.set_location('py_za_tx_01032004.YtdCalc',3);
3038 CalCalc;
3039 ELSE --Continue YtdCalc
3040 hr_utility.set_location('py_za_tx_01032004.YtdCalc',4);
3041 -- Site Factor
3042 trc_SitFactor := dbi_ZA_DYS_IN_YR / py_za_tx_utl_01032004.DaysWorked;
3043
3044 -- Rebates
3045 py_za_tx_utl_01032004.SetRebates;
3046
3047 -- Abatements
3048 py_za_tx_utl_01032004.Abatements;
3049
3050 hr_utility.set_location('py_za_tx_01032004.YtdCalc',5);
3051
3052 -- Deemed Remuneration
3053 --
3054 -- Run Deemed Remuneration
3055 trc_DmdRmnRun := bal_DIR_DMD_RMN_ITD;
3056
3057 -- Skip the calculation if there is No Income
3058 IF trc_DmdRmnRun <> 0 THEN
3059 hr_utility.set_location('py_za_tx_01032004.YtdCalc',6);
3060 -- Taxable Deemed Remuneration
3061 trc_TxbDmdRmn := trc_DmdRmnRun;
3062 -- Threshold Check
3063 IF trc_TxbDmdRmn >= trc_Threshold THEN
3064 hr_utility.set_location('py_za_tx_01032004.YtdCalc',7);
3065 -- Tax Liability
3066 trc_TotLibDR := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbDmdRmn);
3067 ELSE
3068 hr_utility.set_location('py_za_tx_01032004.YtdCalc',8);
3069 trc_TotLibDR := 0;
3070 END IF;
3071 ELSE
3072 hr_utility.set_location('py_za_tx_01032004.YtdCalc',9);
3073 trc_TotLibDR := 0;
3074 END IF;
3075
3076 hr_utility.set_location('py_za_tx_01032004.YtdCalc',10);
3077
3078 -- Base Earnings
3079 --
3080 -- Base Earnings
3081 trc_BseErn := trc_TxbIncYtd * trc_SitFactor;
3082 -- Taxable Base Income
3083 trc_TxbBseInc := trc_BseErn - trc_PerTotAbm;
3084 -- Threshold Check
3085 IF trc_TxbBseInc >= trc_Threshold THEN
3086 hr_utility.set_location('py_za_tx_01032004.YtdCalc',11);
3087 -- Tax Liability
3088 trc_TotLibBse := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbBseInc);
3089 trc_TotLibBse := greatest(trc_TotLibBse,trc_TotLibDR);
3090 ELSE
3091 hr_utility.set_location('py_za_tx_01032004.YtdCalc',12);
3092 trc_TotLibBse := trc_TotLibDR;
3093 END IF;
3094
3095 hr_utility.set_location('py_za_tx_01032004.YtdCalc',13);
3096
3097 -- Annual Bonus
3098 --
3099 -- Ytd Annual Bonus
3100 trc_AnnBonYtd := bal_AB_NRFI_YTD + bal_AB_RFI_YTD;
3101 -- Skip the calculation if there is No Income
3102 IF trc_AnnBonYtd <> 0 THEN
3103 hr_utility.set_location('py_za_tx_01032004.YtdCalc',14);
3104 -- Annual Bonus Earnings
3105 trc_AnnBonErn := trc_AnnBonYtd + trc_BseErn;
3106 -- Taxable Annual Bonus Income
3107 trc_TxbAnnBonInc := trc_AnnBonErn - trc_AnnTotAbm;
3108 -- Threshold Check
3109 IF trc_TxbAnnBonInc >= trc_Threshold THEN
3110 hr_utility.set_location('py_za_tx_01032004.YtdCalc',15);
3111 -- Tax Liability
3112 trc_TotLibAB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnBonInc);
3113 trc_LibFyAB := trc_TotLibAB - least(trc_TotLibAB,trc_TotLibBse);
3114 trc_TotLibAB := greatest(trc_TotLibAB,trc_TotLibBse);
3115 -- Check Bonus Provision
3116 IF bal_BP_YTD <> 0 THEN
3117 hr_utility.set_location('py_za_tx_01032004.YtdCalc',16);
3118 -- Check Bonus Provision Frequency
3119 IF dbi_BP_TX_RCV = 'A' THEN
3120 hr_utility.set_location('py_za_tx_01032004.YtdCalc',17);
3121 trc_LibFpAB := 0;
3122 ELSE
3123 hr_utility.set_location('py_za_tx_01032004.YtdCalc',18);
3124 trc_LibFpAB := trc_LibFyAB - ( bal_TX_ON_BP_YTD
3125 + bal_TX_ON_AB_YTD);
3126 END IF;
3127 ELSE
3128 hr_utility.set_location('py_za_tx_01032004.YtdCalc',19);
3129 trc_LibFpAB := trc_LibFyAB - bal_TX_ON_AB_YTD;
3130 END IF;
3131 ELSE
3132 hr_utility.set_location('py_za_tx_01032004.YtdCalc',20);
3133 trc_TotLibAB := trc_TotLibBse;
3134 END IF;
3135 ELSE
3136 hr_utility.set_location('py_za_tx_01032004.YtdCalc',21);
3137 trc_AnnBonErn := trc_BseErn;
3138 trc_TxbAnnBonInc := trc_TxbBseInc;
3139 trc_TotLibAB := trc_TotLibBse;
3140 END IF;
3141
3142 hr_utility.set_location('py_za_tx_01032004.YtdCalc',22);
3143
3144 -- Annual Payments
3145 --
3146 -- Ytd Annual Payments
3147 trc_AnnPymYtd :=
3148 ( bal_AA_PRCHD_RVAL_NRFI_YTD + bal_AA_PRCHD_RVAL_RFI_YTD
3149 + bal_ANN_BUR_AND_SCH_NRFI_YTD + bal_ANN_BUR_AND_SCH_RFI_YTD
3150 + bal_ANN_IC_PYMNTS_NRFI_YTD + bal_ANN_IC_PYMNTS_RFI_YTD
3151 + bal_ANN_LB_PYMNTS_NRFI_YTD + bal_ANN_LB_PYMNTS_RFI_YTD
3152 + bal_ANN_PYM_DBT_NRFI_YTD + bal_ANN_PYM_DBT_RFI_YTD
3153 + bal_AC_NRFI_YTD + bal_AC_RFI_YTD
3154 + bal_ANU_FRM_RET_FND_NRFI_YTD + bal_ANU_FRM_RET_FND_RFI_YTD
3155 + bal_ARES_TRD_NRFI_YTD + bal_ARES_TRD_RFI_YTD
3156 + bal_PRCH_ANU_TXB_NRFI_YTD + bal_PRCH_ANU_TXB_RFI_YTD
3157 + bal_TXB_AP_NRFI_YTD + bal_TXB_AP_RFI_YTD
3158 );
3159 -- Skip the calculation if there is No Income
3160 IF trc_AnnPymYtd <> 0 THEN
3161 hr_utility.set_location('py_za_tx_01032004.YtdCalc',23);
3162 -- Annual Payments Earnings
3163 trc_AnnPymErn := trc_AnnPymYtd + trc_AnnBonErn;
3164 -- Taxable Annual Payments Income
3165 trc_TxbAnnPymInc := trc_AnnPymErn - trc_AnnTotAbm;
3166 -- Threshold Check
3167 IF trc_TxbAnnPymInc >= trc_Threshold THEN
3168 hr_utility.set_location('py_za_tx_01032004.YtdCalc',24);
3169 -- Tax Liability
3170 trc_TotLibAP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnPymInc);
3171 trc_LibFyAP := trc_TotLibAP - least(trc_TotLibAP,trc_TotLibAB);
3172 trc_TotLibAP := greatest(trc_TotLibAP,trc_TotLibAB);
3173 trc_LibFpAP := trc_LibFyAP - bal_TX_ON_AP_YTD;
3174 ELSE
3175 hr_utility.set_location('py_za_tx_01032004.YtdCalc',25);
3176 trc_TotLibAP := trc_TotLibAB;
3177 END IF;
3178 ELSE
3179 hr_utility.set_location('py_za_tx_01032004.YtdCalc',26);
3180 trc_AnnPymErn := trc_AnnBonErn;
3181 trc_TxbAnnPymInc := trc_TxbAnnBonInc;
3182 trc_TotLibAP := trc_TotLibAB;
3183 END IF;
3184
3185 -- Net Pay validation
3186 --
3187 py_za_tx_utl_01032004.ValidateTaxOns;
3188
3189 hr_utility.set_location('py_za_tx_01032004.YtdCalc',27);
3190
3191 -- Deemed Remuneration
3192 WrtHrTrc('trc_TxbDmdRmn: '||to_char(trc_TxbDmdRmn));
3193 WrtHrTrc('trc_TotLibDR: '||to_char(trc_TotLibDR));
3194 WrtHrTrc('trc_LibFyDR: '||to_char(trc_LibFyDR));
3195 WrtHrTrc('trc_LibFpDR: '||to_char(trc_LibFpDR));
3196 -- Base Income
3197 WrtHrTrc('trc_BseErn: '||to_char(trc_BseErn));
3198 WrtHrTrc('trc_TxbBseInc: '||to_char(trc_TxbBseInc));
3199 WrtHrTrc('trc_TotLibBse: '||to_char(trc_TotLibBse));
3200 -- Normal Income
3201 WrtHrTrc('trc_NorIncYtd: '||to_char(trc_NorIncYtd));
3202 WrtHrTrc('trc_NorIncPtd: '||to_char(trc_NorIncPtd));
3203 WrtHrTrc('trc_NorErn: '||to_char(trc_NorErn));
3204 WrtHrTrc('trc_TxbNorInc: '||to_char(trc_TxbNorInc));
3205 WrtHrTrc('trc_TotLibNI: '||to_char(trc_TotLibNI));
3206 WrtHrTrc('trc_LibFyNI: '||to_char(trc_LibFyNI));
3207 WrtHrTrc('trc_LibFpNI: '||to_char(trc_LibFpNI));
3208 -- Fringe Benefits
3209 WrtHrTrc('trc_FrnBenYtd: '||to_char(trc_FrnBenYtd));
3210 WrtHrTrc('trc_FrnBenPtd: '||to_char(trc_FrnBenPtd));
3211 WrtHrTrc('trc_FrnBenErn: '||to_char(trc_FrnBenErn));
3212 WrtHrTrc('trc_TxbFrnInc: '||to_char(trc_TxbFrnInc));
3213 WrtHrTrc('trc_TotLibFB: '||to_char(trc_TotLibFB));
3214 WrtHrTrc('trc_LibFyFB: '||to_char(trc_LibFyFB));
3215 WrtHrTrc('trc_LibFpFB: '||to_char(trc_LibFpFB));
3216 -- Travel Allowance
3217 WrtHrTrc('trc_TrvAllYtd: '||to_char(trc_TrvAllYtd));
3218 WrtHrTrc('trc_TrvAllPtd: '||to_char(trc_TrvAllPtd));
3219 WrtHrTrc('trc_TrvAllErn: '||to_char(trc_TrvAllErn));
3220 WrtHrTrc('trc_TxbTrvInc: '||to_char(trc_TxbTrvInc));
3221 WrtHrTrc('trc_TotLibTA: '||to_char(trc_TotLibTA));
3222 WrtHrTrc('trc_LibFyTA: '||to_char(trc_LibFyTA));
3223 WrtHrTrc('trc_LibFpTA: '||to_char(trc_LibFpTA));
3224 -- Bonus Provision
3225 WrtHrTrc('trc_BonProYtd: '||to_char(trc_BonProYtd));
3226 WrtHrTrc('trc_BonProPtd: '||to_char(trc_BonProPtd));
3227 WrtHrTrc('trc_BonProErn: '||to_char(trc_BonProErn));
3228 WrtHrTrc('trc_TxbBonProInc: '||to_char(trc_TxbBonProInc));
3229 WrtHrTrc('trc_TotLibBP: '||to_char(trc_TotLibBP));
3230 WrtHrTrc('trc_LibFyBP: '||to_char(trc_LibFyBP));
3231 WrtHrTrc('trc_LibFpBP: '||to_char(trc_LibFpBP));
3232 -- Annual Bonus
3233 WrtHrTrc('trc_AnnBonYtd: '||to_char(trc_AnnBonYtd));
3234 WrtHrTrc('trc_AnnBonPtd: '||to_char(trc_AnnBonPtd));
3235 WrtHrTrc('trc_AnnBonErn: '||to_char(trc_AnnBonErn));
3236 WrtHrTrc('trc_TxbAnnBonInc: '||to_char(trc_TxbAnnBonInc));
3237 WrtHrTrc('trc_TotLibAB: '||to_char(trc_TotLibAB));
3238 WrtHrTrc('trc_LibFyAB: '||to_char(trc_LibFyAB));
3239 WrtHrTrc('trc_LibFpAB: '||to_char(trc_LibFpAB));
3240 -- Annual Payments
3241 WrtHrTrc('trc_AnnPymYtd: '||to_char(trc_AnnPymYtd));
3242 WrtHrTrc('trc_AnnPymPtd: '||to_char(trc_AnnPymPtd));
3243 WrtHrTrc('trc_AnnPymErn: '||to_char(trc_AnnPymErn));
3244 WrtHrTrc('trc_TxbAnnPymInc: '||to_char(trc_TxbAnnPymInc));
3245 WrtHrTrc('trc_TotLibAP: '||to_char(trc_TotLibAP));
3246 WrtHrTrc('trc_LibFyAP: '||to_char(trc_LibFyAP));
3247 WrtHrTrc('trc_LibFpAP: '||to_char(trc_LibFpAP));
3248 -- Pubilc Office Allowance
3249 WrtHrTrc('trc_PblOffYtd: '||to_char(trc_PblOffYtd));
3250 WrtHrTrc('trc_PblOffPtd: '||to_char(trc_PblOffPtd));
3251 WrtHrTrc('trc_PblOffErn: '||to_char(trc_PblOffErn));
3252 WrtHrTrc('trc_LibFyPO: '||to_char(trc_LibFyPO));
3253 WrtHrTrc('trc_LibFpPO: '||to_char(trc_LibFpPO));
3254
3255 END IF;
3256
3257 EXCEPTION
3258 WHEN OTHERS THEN
3259 IF xpt_Msg = 'No Error' THEN
3260 xpt_Msg := 'YtdCalc: '||TO_CHAR(SQLCODE);
3261 END IF;
3262 RAISE xpt_E;
3263 END YtdCalc;
3264 -------------------------------------------------------------------------------
3265 -- NorCalc --
3266 -- Main Tax Calculation for Periodic Income --
3267 -------------------------------------------------------------------------------
3268 PROCEDURE NorCalc AS
3269 -- Variables
3270 --
3271 l_Np BALANCE DEFAULT 0;
3272
3273 BEGIN
3274 hr_utility.set_location('py_za_tx_01032004.NorCalc',1);
3275 -- Identify the calculation
3276 --
3277 trc_CalTyp := 'NorCalc';
3278
3279 -- Update Global Balance Values with correct TAXABLE values
3280 --
3281 bal_TA_RFI_PTD := bal_TA_RFI_PTD * glb_ZA_TRV_ALL_TX_PRC / 100;
3282 bal_TA_NRFI_PTD := bal_TA_NRFI_PTD * glb_ZA_TRV_ALL_TX_PRC / 100;
3283
3284 py_za_tx_utl_01032004.TrvAll;
3285
3286 hr_utility.set_location('py_za_tx_01032004.NorCalc',2);
3287
3288 bal_PO_RFI_PTD := bal_PO_RFI_PTD * glb_ZA_PBL_TX_PRC / 100;
3289 bal_PO_NRFI_PTD := bal_PO_NRFI_PTD * glb_ZA_PBL_TX_PRC / 100;
3290 bal_PO_RFI_YTD := bal_PO_RFI_YTD * glb_ZA_PBL_TX_PRC / 100;
3291 bal_PO_NRFI_YTD := bal_PO_NRFI_YTD * glb_ZA_PBL_TX_PRC / 100;
3292
3293
3294
3295 -- PTD Taxable Income
3296 --
3297 trc_TxbIncPtd :=
3298 ( bal_AST_PRCHD_RVAL_NRFI_PTD + bal_AST_PRCHD_RVAL_RFI_PTD
3299 + bal_BP_PTD
3300 + bal_BUR_AND_SCH_NRFI_PTD + bal_BUR_AND_SCH_RFI_PTD
3301 + bal_COMM_NRFI_PTD + bal_COMM_RFI_PTD
3302 + bal_COMP_ALL_NRFI_PTD + bal_COMP_ALL_RFI_PTD
3303 + bal_ENT_ALL_NRFI_PTD + bal_ENT_ALL_RFI_PTD
3304 + bal_FREE_ACCOM_NRFI_PTD + bal_FREE_ACCOM_RFI_PTD
3305 + bal_FREE_SERV_NRFI_PTD + bal_FREE_SERV_RFI_PTD
3306 + bal_IC_PYMNTS_NRFI_PTD + bal_IC_PYMNTS_RFI_PTD
3307 + bal_LB_PYMNTS_NRFI_PTD + bal_LB_PYMNTS_RFI_PTD
3308 + bal_LOW_LOANS_NRFI_PTD + bal_LOW_LOANS_RFI_PTD
3309 + bal_MLS_AND_VOUCH_NRFI_PTD + bal_MLS_AND_VOUCH_RFI_PTD
3310 + bal_MED_PAID_NRFI_PTD + bal_MED_PAID_RFI_PTD
3311 + bal_OTHER_TXB_ALL_NRFI_PTD + bal_OTHER_TXB_ALL_RFI_PTD
3312 + bal_OVTM_NRFI_PTD + bal_OVTM_RFI_PTD
3313 + bal_PYM_DBT_NRFI_PTD + bal_PYM_DBT_RFI_PTD
3314 + bal_RES_TRD_NRFI_PTD + bal_RES_TRD_RFI_PTD
3315 + bal_RGT_AST_NRFI_PTD + bal_RGT_AST_RFI_PTD
3316 + bal_TXB_INC_NRFI_PTD + bal_TXB_INC_RFI_PTD
3317 + bal_TXB_PEN_NRFI_PTD + bal_TXB_PEN_RFI_PTD
3318 + bal_TEL_ALL_NRFI_PTD + bal_TEL_ALL_RFI_PTD
3319 + bal_TOOL_ALL_NRFI_PTD + bal_TOOL_ALL_RFI_PTD
3320 + bal_TA_NRFI_PTD + bal_TA_RFI_PTD
3321 + bal_USE_VEH_NRFI_PTD + bal_USE_VEH_RFI_PTD
3322 );
3323
3324 -- Period Factor
3325 py_za_tx_utl_01032004.PeriodFactor;
3326
3327 -- Possible Periods Factor
3328 py_za_tx_utl_01032004.PossiblePeriodsFactor;
3329
3330 -- Rebates
3331 py_za_tx_utl_01032004.SetRebates;
3332
3333 -- Abatements
3334 py_za_tx_utl_01032004.Abatements;
3335
3336 hr_utility.set_location('py_za_tx_01032004.NorCalc',3);
3337
3338 -- Deemed Remuneration
3339 --
3340 -- Run Deemed Remuneration
3341 trc_DmdRmnRun := bal_DIR_DMD_RMN_ITD;
3342 -- Skip the calculation if there is No Income
3343 IF trc_DmdRmnRun <> 0 THEN
3344 hr_utility.set_location('py_za_tx_01032004.NorCalc',4);
3345 -- Taxable Deemed Remuneration
3346 trc_TxbDmdRmn := trc_DmdRmnRun;
3347 -- Threshold Check
3348 IF trc_TxbDmdRmn >= trc_Threshold THEN
3349 hr_utility.set_location('py_za_tx_01032004.NorCalc',5);
3350 -- Tax Liability
3351 trc_TotLibDR := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbDmdRmn);
3352 trc_LibFyDR := trc_TotLibDR - 0;
3353 trc_TotLibDR := greatest(trc_TotLibDR,0);
3354 -- DeAnnualise
3355 trc_LibFpDR := py_za_tx_utl_01032004.DeAnnualise
3356 ( p_Liab => trc_LibFyDR
3357 , p_TxOnYtd => bal_TX_ON_DR_YTD
3358 , p_TxOnPtd => bal_TX_ON_DR_PTD
3359 );
3360 ELSE
3361 hr_utility.set_location('py_za_tx_01032004.NorCalc',6);
3362 -- Set Cascade Figures and Refund
3363 trc_TotLibDR := 0;
3364 trc_LibFpDR := -1 * bal_TX_ON_DR_YTD;
3365 trc_LibFpDROvr := TRUE;
3366 END IF;
3367 ELSE
3368 hr_utility.set_location('py_za_tx_01032004.NorCalc',7);
3369 -- Set Cascade Figures and Refund
3370 trc_TxbDmdRmn := 0;
3371 trc_TotLibDR := 0;
3372 trc_LibFpDR := -1 * bal_TX_ON_DR_YTD;
3373 trc_LibFpDROvr := TRUE;
3374 END IF;
3375
3376 -- Normal Income
3377 --
3378 -- Ytd Normal Income
3379 trc_NorIncYtd :=
3380 ( bal_COMM_NRFI_YTD + bal_COMM_RFI_YTD
3381 + bal_COMP_ALL_NRFI_YTD + bal_COMP_ALL_RFI_YTD
3382 + bal_ENT_ALL_NRFI_YTD + bal_ENT_ALL_RFI_YTD
3383 + bal_IC_PYMNTS_NRFI_YTD + bal_IC_PYMNTS_RFI_YTD
3384 + bal_LB_PYMNTS_NRFI_YTD + bal_LB_PYMNTS_RFI_YTD
3385 + bal_OTHER_TXB_ALL_NRFI_YTD + bal_OTHER_TXB_ALL_RFI_YTD
3386 + bal_OVTM_NRFI_YTD + bal_OVTM_RFI_YTD
3387 + bal_RES_TRD_NRFI_YTD + bal_RES_TRD_RFI_YTD
3388 + bal_TXB_INC_NRFI_YTD + bal_TXB_INC_RFI_YTD
3389 + bal_TXB_PEN_NRFI_YTD + bal_TXB_PEN_RFI_YTD
3390 + bal_TEL_ALL_NRFI_YTD + bal_TEL_ALL_RFI_YTD
3391 + bal_TOOL_ALL_NRFI_YTD + bal_TOOL_ALL_RFI_YTD
3392 );
3393
3394 -- Skip the calculation if there is No Income
3395 IF trc_NorIncYtd <> 0 THEN
3396 hr_utility.set_location('py_za_tx_01032004.NorCalc',8);
3397
3398 -- Annualise Normal Income
3399 trc_NorErn := py_za_tx_utl_01032004.Annualise
3400 (p_YtdInc => trc_NorIncYtd
3401 ,p_PtdInc => trc_NorIncPtd
3402 );
3403
3404 -- Taxable Normal Income
3405 trc_TxbNorInc := trc_NorErn - trc_PerTotAbm;
3406
3407 -- Threshold Check
3408 IF trc_TxbNorInc >= trc_Threshold THEN
3409 hr_utility.set_location('py_za_tx_01032004.NorCalc',9);
3410 -- Tax Liability
3411 trc_TotLibNI := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbNorInc);
3412 trc_LibFyNI := trc_TotLibNI - least(trc_TotLibNI,trc_TotLibDR);
3413 trc_TotLibNI := greatest(trc_TotLibNI,trc_TotLibDR);
3414 -- DeAnnualise
3415 trc_LibFpNI := py_za_tx_utl_01032004.DeAnnualise
3416 ( p_Liab => trc_LibFyNI
3417 , p_TxOnYtd => bal_TX_ON_NI_YTD
3418 , p_TxOnPtd => bal_TX_ON_NI_PTD
3419 );
3420 ELSE
3421 hr_utility.set_location('py_za_tx_01032004.NorCalc',10);
3422 -- Set Cascade Figures and Refund
3423 trc_TotLibNI := trc_TotLibDR;
3424 trc_LibFpNI := -1 * bal_TX_ON_NI_YTD;
3425 trc_LibFpNIOvr := TRUE;
3426 END IF;
3427 ELSE
3428 hr_utility.set_location('py_za_tx_01032004.NorCalc',11);
3429 -- Set Cascade Figures and Refund
3430 trc_NorErn := 0;
3431 trc_TxbNorInc := 0;
3432 trc_TotLibNI := trc_TotLibDR;
3433 trc_LibFpNI := -1 * bal_TX_ON_NI_YTD;
3434 trc_LibFpNIOvr := TRUE;
3435 END IF;
3436
3437 -- Fringe Benefits
3438 --
3439 -- Ytd Fringe Benefits
3440 trc_FrnBenYtd :=
3441 ( bal_AST_PRCHD_RVAL_NRFI_YTD + bal_AST_PRCHD_RVAL_RFI_YTD
3442 + bal_BUR_AND_SCH_NRFI_YTD + bal_BUR_AND_SCH_RFI_YTD
3443 + bal_FREE_ACCOM_NRFI_YTD + bal_FREE_ACCOM_RFI_YTD
3444 + bal_FREE_SERV_NRFI_YTD + bal_FREE_SERV_RFI_YTD
3445 + bal_LOW_LOANS_NRFI_YTD + bal_LOW_LOANS_RFI_YTD
3446 + bal_MLS_AND_VOUCH_NRFI_YTD + bal_MLS_AND_VOUCH_RFI_YTD
3447 + bal_MED_PAID_NRFI_YTD + bal_MED_PAID_RFI_YTD
3448 + bal_PYM_DBT_NRFI_YTD + bal_PYM_DBT_RFI_YTD
3449 + bal_RGT_AST_NRFI_YTD + bal_RGT_AST_RFI_YTD
3450 + bal_USE_VEH_NRFI_YTD + bal_USE_VEH_RFI_YTD
3451 );
3452
3453 -- Skip the calculation if there is No Income
3454 IF trc_FrnBenYtd <> 0 THEN
3455 hr_utility.set_location('py_za_tx_01032004.NorCalc',12);
3456
3457 -- Annualise Fringe Benefits
3458 trc_FrnBenErn := py_za_tx_utl_01032004.Annualise
3459 ( p_YtdInc => trc_FrnBenYtd
3460 , p_PtdInc => trc_FrnBenPtd
3461 ) + trc_NorErn;
3462 -- Taxable Fringe Income
3463 trc_TxbFrnInc := trc_FrnBenErn - trc_PerTotAbm;
3464 -- Threshold Check
3465 IF trc_TxbFrnInc >= trc_Threshold THEN
3466 hr_utility.set_location('py_za_tx_01032004.NorCalc',13);
3467 -- Tax Liability
3468 trc_TotLibFB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbFrnInc);
3469 trc_LibFyFB := trc_TotLibFB - least(trc_TotLibFB,trc_TotLibNI);
3470 trc_TotLibFB := greatest(trc_TotLibFB,trc_TotLibNI);
3471 -- DeAnnualise
3472 trc_LibFpFB := py_za_tx_utl_01032004.DeAnnualise
3473 ( trc_LibFyFB
3474 , bal_TX_ON_FB_YTD
3475 , bal_TX_ON_FB_PTD
3476 );
3477 ELSE
3478 hr_utility.set_location('py_za_tx_01032004.NorCalc',14);
3479 -- Set Cascade Figures and Refund
3480 trc_TotLibFB := trc_TotLibNI;
3481 trc_LibFpFB := -1 * bal_TX_ON_FB_YTD;
3482 trc_LibFpFBOvr := TRUE;
3483 END IF;
3484 ELSE
3485 hr_utility.set_location('py_za_tx_01032004.NorCalc',15);
3486 -- Set Cascade Figures and Refund
3487 trc_FrnBenErn := trc_NorErn;
3488 trc_TxbFrnInc := trc_TxbNorInc;
3489 trc_TotLibFB := trc_TotLibNI;
3490 trc_LibFpFB := -1 * bal_TX_ON_FB_YTD;
3491 trc_LibFpFBOvr := TRUE;
3492 END IF;
3493
3494 -- Travel Allowance
3495 --
3496 -- Ytd Travel Allowance
3497 trc_TrvAllYtd := bal_TA_NRFI_YTD + bal_TA_RFI_YTD;
3498 -- Skip the calculation if there is No Income
3499 IF trc_TrvAllYtd <> 0 THEN
3500 hr_utility.set_location('py_za_tx_01032004.NorCalc',16);
3501 -- Ptd Travel Allowance
3502 trc_TrvAllPtd := bal_TA_NRFI_PTD + bal_TA_RFI_PTD;
3503 -- Annualise Travel Allowance
3504 trc_TrvAllErn := py_za_tx_utl_01032004.Annualise
3505 ( p_YtdInc => trc_TrvAllYtd
3506 , p_PtdInc => trc_TrvAllPtd
3507 ) + trc_FrnBenErn;
3508 -- Taxable Travel Income
3509 trc_TxbTrvInc := trc_TrvAllErn - trc_PerTotAbm;
3510 -- Threshold Check
3511 IF trc_TxbTrvInc >= trc_Threshold THEN
3512 hr_utility.set_location('py_za_tx_01032004.NorCalc',17);
3513 -- Tax Liability
3514 trc_TotLibTA := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbTrvInc);
3515 trc_LibFyTA := trc_TotLibTA - least(trc_TotLibTA,trc_TotLibFB);
3516 trc_TotLibTA := greatest(trc_TotLibTA,trc_TotLibFB);
3517 -- DeAnnualise
3518 trc_LibFpTA := py_za_tx_utl_01032004.DeAnnualise
3519 ( trc_LibFyTA
3520 , bal_TX_ON_TA_YTD
3521 , bal_TX_ON_TA_PTD
3522 );
3523 ELSE
3524 hr_utility.set_location('py_za_tx_01032004.NorCalc',18);
3525 -- Set Cascade Figures and Refund
3526 trc_TotLibTA := trc_TotLibFB;
3527 trc_LibFpTA := -1 * bal_TX_ON_TA_YTD;
3528 trc_LibFpTAOvr := TRUE;
3529 END IF;
3530 ELSE
3531 hr_utility.set_location('py_za_tx_01032004.NorCalc',19);
3532 -- Set Cascade Figures and Refund
3533 trc_TrvAllErn := trc_FrnBenErn;
3534 trc_TxbTrvInc := trc_TxbFrnInc;
3535 trc_TotLibTA := trc_TotLibFB;
3536 trc_LibFpTA := -1 * bal_TX_ON_TA_YTD;
3537 trc_LibFpTAOvr := TRUE;
3538 END IF;
3539
3540 -- Bonus Provision
3541 --
3542 -- Ytd Bonus Prvision
3543 trc_BonProYtd := bal_BP_YTD;
3544 -- Skip the calculation if there is No Income
3545 IF trc_BonProYtd <> 0 THEN
3546 hr_utility.set_location('py_za_tx_01032004.NorCalc',20);
3547 -- Annualise Bonus Provision
3548 trc_BonProErn := py_za_tx_utl_01032004.Annualise
3549 ( p_YtdInc => trc_BonProYtd
3550 , p_PtdInc => trc_BonProPtd
3551 ) + trc_TrvAllErn;
3552 -- Taxable Bonus Provision Income
3553 trc_TxbBonProInc := trc_BonProErn - trc_PerTotAbm;
3554 -- Threshold Check
3555 IF trc_TxbBonProInc >= trc_Threshold THEN
3556 hr_utility.set_location('py_za_tx_01032004.NorCalc',21);
3557 -- Tax Liability
3558 trc_TotLibBP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbBonProInc);
3559 trc_LibFyBP := trc_TotLibBP - least(trc_TotLibBP,trc_TotLibTA);
3560 trc_TotLibBP := greatest(trc_TotLibBP,trc_TotLibTA);
3561 -- DeAnnualise
3562 trc_LibFpBP := py_za_tx_utl_01032004.DeAnnualise
3563 ( trc_LibFyBP
3564 , bal_TX_ON_BP_YTD
3565 , bal_TX_ON_BP_PTD
3566 );
3567 ELSE
3568 hr_utility.set_location('py_za_tx_01032004.NorCalc',22);
3569 -- Set Cascade Figures and Refund
3570 trc_TotLibBP := trc_TotLibTA;
3571 trc_LibFpBP := -1 * bal_TX_ON_BP_YTD;
3572 trc_LibFpBPOvr := TRUE;
3573 END IF;
3574 ELSE
3575 hr_utility.set_location('py_za_tx_01032004.NorCalc',23);
3576 -- Set Cascade Figures and Refund
3577 trc_BonProErn := trc_TrvAllErn;
3578 trc_TxbBonProInc := trc_TxbTrvInc;
3579 trc_TotLibBP := trc_TotLibTA;
3580 trc_LibFpBP := -1 * bal_TX_ON_BP_YTD;
3581 trc_LibFpBPOvr := TRUE;
3582 END IF;
3583
3584 -- Annual Bonus
3585 --
3586 -- Ytd Annual Bonus
3587 trc_AnnBonYtd := bal_AB_NRFI_YTD + bal_AB_RFI_YTD;
3588 -- Skip the calculation if there is No Income
3589 IF trc_AnnBonYtd <> 0 THEN
3590 hr_utility.set_location('py_za_tx_01032004.NorCalc',24);
3591 -- Annual Bonus Earnings
3592 trc_AnnBonErn := trc_AnnBonYtd + trc_TrvAllErn;
3593 -- Taxable Annual Bonus Income
3594 trc_TxbAnnBonInc := trc_AnnBonErn - trc_AnnTotAbm;
3595 -- Threshold Check
3596 IF trc_TxbAnnBonInc >= trc_Threshold THEN
3597 hr_utility.set_location('py_za_tx_01032004.NorCalc',25);
3598 -- Tax Liability
3599 trc_TotLibAB := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnBonInc);
3600 trc_LibFyAB := trc_TotLibAB - least(trc_TotLibAB,trc_TotLibTA);
3601 trc_TotLibAB := greatest(trc_TotLibAB,trc_TotLibTA);
3602 -- Check Bonus Provision
3603 IF trc_BonProYtd <> 0 THEN
3604 hr_utility.set_location('py_za_tx_01032004.NorCalc',26);
3605 -- Check Bonus Provision Frequency
3606 IF dbi_BP_TX_RCV = 'A' THEN
3607 hr_utility.set_location('py_za_tx_01032004.NorCalc',27);
3608 trc_LibFpAB := 0;
3609 ELSE
3610 hr_utility.set_location('py_za_tx_01032004.NorCalc',28);
3611 trc_LibFpAB := trc_LibFyAB - ( bal_TX_ON_BP_YTD
3612 + trc_LibFpBP
3613 + bal_TX_ON_AB_YTD);
3614 END IF;
3615 ELSE
3616 hr_utility.set_location('py_za_tx_01032004.NorCalc',29);
3617 trc_LibFpAB := trc_LibFyAB - bal_TX_ON_AB_YTD;
3618 END IF;
3619 ELSE
3620 hr_utility.set_location('py_za_tx_01032004.NorCalc',30);
3621 -- Set Cascade Figures and Refund
3622 trc_TotLibAB := trc_TotLibTA;
3623 trc_LibFpAB := -1 * bal_TX_ON_AB_YTD;
3624 trc_LibFpABOvr := TRUE;
3625 END IF;
3626 ELSE
3627 hr_utility.set_location('py_za_tx_01032004.NorCalc',31);
3628 -- Set Cascade Figures and Refund
3629 trc_AnnBonErn := trc_BonProErn;
3630 trc_TxbAnnBonInc := trc_TxbBonProInc;
3631 trc_TotLibAB := trc_TotLibBP;
3632 trc_LibFpAB := -1 * bal_TX_ON_AB_YTD;
3633 trc_LibFpABOvr := TRUE;
3634 END IF;
3635
3636 -- Annual Payments
3637 --
3638 -- Ytd Annual Payments
3639 trc_AnnPymYtd :=
3640 ( bal_AA_PRCHD_RVAL_NRFI_YTD + bal_AA_PRCHD_RVAL_RFI_YTD
3641 + bal_ANN_BUR_AND_SCH_NRFI_YTD + bal_ANN_BUR_AND_SCH_RFI_YTD
3642 + bal_ANN_IC_PYMNTS_NRFI_YTD + bal_ANN_IC_PYMNTS_RFI_YTD
3643 + bal_ANN_LB_PYMNTS_NRFI_YTD + bal_ANN_LB_PYMNTS_RFI_YTD
3644 + bal_ANN_PYM_DBT_NRFI_YTD + bal_ANN_PYM_DBT_RFI_YTD
3645 + bal_AC_NRFI_YTD + bal_AC_RFI_YTD
3646 + bal_ANU_FRM_RET_FND_NRFI_YTD + bal_ANU_FRM_RET_FND_RFI_YTD
3647 + bal_ARES_TRD_NRFI_YTD + bal_ARES_TRD_RFI_YTD
3648 + bal_PRCH_ANU_TXB_NRFI_YTD + bal_PRCH_ANU_TXB_RFI_YTD
3649 + bal_TXB_AP_NRFI_YTD + bal_TXB_AP_RFI_YTD
3650 );
3651 -- Skip the calculation if there is No Income
3652 IF trc_AnnPymYtd <> 0 THEN
3653 hr_utility.set_location('py_za_tx_01032004.NorCalc',32);
3654 -- Annual Payments Earnings
3655 trc_AnnPymErn := trc_AnnPymYtd + trc_AnnBonErn;
3656 -- Taxable Annual Payments Income
3657 trc_TxbAnnPymInc := trc_AnnPymErn - trc_AnnTotAbm;
3658 -- Threshold Check
3659 IF trc_TxbAnnPymInc >= trc_Threshold THEN
3660 hr_utility.set_location('py_za_tx_01032004.NorCalc',33);
3661 -- Tax Liability
3662 trc_TotLibAP := py_za_tx_utl_01032004.TaxLiability(p_Amt => trc_TxbAnnPymInc);
3663 trc_LibFyAP := trc_TotLibAP - least(trc_TotLibAP,trc_TotLibAB);
3664 trc_TotLibAP := greatest(trc_TotLibAP,trc_TotLibAB);
3665 hr_utility.set_location('py_za_tx_01032004.NorCalc',34);
3666 trc_LibFpAP := trc_LibFyAP - bal_TX_ON_AP_YTD;
3667 ELSE
3668 hr_utility.set_location('py_za_tx_01032004.NorCalc',35);
3669 -- Set Cascade Figures and Refund
3670 trc_TotLibAP := trc_TotLibAB;
3671 trc_LibFpAP := -1 * bal_TX_ON_AP_YTD;
3672 trc_LibFpAPOvr := TRUE;
3673 END IF;
3674 ELSE
3675 hr_utility.set_location('py_za_tx_01032004.NorCalc',36);
3676 -- Set Cascade Figures and Refund
3677 trc_AnnPymErn := trc_AnnBonErn;
3678 trc_TxbAnnPymInc := trc_TxbAnnBonInc;
3679 trc_TotLibAP := trc_TotLibAB;
3680 trc_LibFpAP := -1 * bal_TX_ON_AP_YTD;
3681 trc_LibFpAPOvr := TRUE;
3682 END IF;
3683
3684 -- Public Office Allowance
3685 --
3686 -- Ytd Public Office Allowance
3687 trc_PblOffYtd := bal_PO_NRFI_YTD + bal_PO_RFI_YTD;
3688 -- Skip the calculation if there is No Income
3689 IF trc_PblOffYtd <> 0 THEN
3690 hr_utility.set_location('py_za_tx_01032004.NorCalc',37);
3691 -- Ptd Public Office Allowance
3692 trc_PblOffPtd :=bal_PO_NRFI_PTD + bal_PO_RFI_PTD;
3693 -- Annualise Public Office Allowance
3694 trc_PblOffErn := py_za_tx_utl_01032004.Annualise
3695 ( p_YtdInc => trc_PblOffYtd
3696 , p_PtdInc => trc_PblOffPtd
3697 );
3698 -- Tax Liability
3699 trc_LibFyPO := trc_PblOffErn * glb_ZA_PBL_TX_RTE / 100;
3700 trc_LibFpPO := py_za_tx_utl_01032004.DeAnnualise
3701 ( trc_LibFyPO
3702 , bal_TX_ON_PO_YTD
3703 , bal_TX_ON_PO_PTD
3704 );
3705 ELSE
3706 hr_utility.set_location('py_za_tx_01032004.NorCalc',38);
3707 -- Set Cascade Figures and Refund
3708 trc_LibFpPO := -1 * bal_TX_ON_PO_YTD;
3709 trc_LibFpPOOvr := TRUE;
3710 END IF;
3711
3712 -- Net Pay Validation
3713 --
3714 py_za_tx_utl_01032004.ValidateTaxOns;
3715
3716 hr_utility.set_location('py_za_tx_01032004.NorCalc',39);
3717
3718 -- Deemed Remuneration
3719 WrtHrTrc('trc_TxbDmdRmn: '||to_char(trc_TxbDmdRmn));
3720 WrtHrTrc('trc_TotLibDR: '||to_char(trc_TotLibDR ));
3721 WrtHrTrc('trc_LibFyDR: '||to_char(trc_LibFyDR ));
3722 WrtHrTrc('trc_LibFpDR: '||to_char(trc_LibFpDR ));
3723 -- Base Income
3724 WrtHrTrc('trc_BseErn: '||to_char(trc_BseErn ));
3725 WrtHrTrc('trc_TxbBseInc: '||to_char(trc_TxbBseInc));
3726 WrtHrTrc('trc_TotLibBse: '||to_char(trc_TotLibBse));
3727 -- Normal Income
3728 WrtHrTrc('trc_NorIncYtd: '||to_char(trc_NorIncYtd));
3729 WrtHrTrc('trc_NorIncPtd: '||to_char(trc_NorIncPtd));
3730 WrtHrTrc('trc_NorErn: '||to_char(trc_NorErn ));
3731 WrtHrTrc('trc_TxbNorInc: '||to_char(trc_TxbNorInc));
3732 WrtHrTrc('trc_TotLibNI: '||to_char(trc_TotLibNI ));
3733 WrtHrTrc('trc_LibFyNI: '||to_char(trc_LibFyNI ));
3734 WrtHrTrc('trc_LibFpNI: '||to_char(trc_LibFpNI ));
3735 -- Fringe Benefits
3736 WrtHrTrc('trc_FrnBenYtd: '||to_char(trc_FrnBenYtd));
3737 WrtHrTrc('trc_FrnBenPtd: '||to_char(trc_FrnBenPtd));
3738 WrtHrTrc('trc_FrnBenErn: '||to_char(trc_FrnBenErn));
3739 WrtHrTrc('trc_TxbFrnInc: '||to_char(trc_TxbFrnInc));
3740 WrtHrTrc('trc_TotLibFB: '||to_char(trc_TotLibFB ));
3741 WrtHrTrc('trc_LibFyFB: '||to_char(trc_LibFyFB ));
3742 WrtHrTrc('trc_LibFpFB: '||to_char(trc_LibFpFB ));
3743 -- Travel Allowance
3744 WrtHrTrc('trc_TrvAllYtd: '||to_char(trc_TrvAllYtd));
3745 WrtHrTrc('trc_TrvAllPtd: '||to_char(trc_TrvAllPtd));
3746 WrtHrTrc('trc_TrvAllErn: '||to_char(trc_TrvAllErn));
3747 WrtHrTrc('trc_TxbTrvInc: '||to_char(trc_TxbTrvInc));
3748 WrtHrTrc('trc_TotLibTA: '||to_char(trc_TotLibTA ));
3749 WrtHrTrc('trc_LibFyTA: '||to_char(trc_LibFyTA ));
3750 WrtHrTrc('trc_LibFpTA: '||to_char(trc_LibFpTA ));
3751 -- Bonus Provision
3752 WrtHrTrc('trc_BonProYtd: '||to_char(trc_BonProYtd));
3753 WrtHrTrc('trc_BonProPtd: '||to_char(trc_BonProPtd));
3754 WrtHrTrc('trc_BonProErn: '||to_char(trc_BonProErn));
3755 WrtHrTrc('trc_TxbBonProInc: '||to_char(trc_TxbBonProInc));
3756 WrtHrTrc('trc_TotLibBP: '||to_char(trc_TotLibBP ));
3757 WrtHrTrc('trc_LibFyBP: '||to_char(trc_LibFyBP ));
3758 WrtHrTrc('trc_LibFpBP: '||to_char(trc_LibFpBP ));
3759 -- Annual Bonus
3760 WrtHrTrc('trc_AnnBonYtd: '||to_char(trc_AnnBonYtd));
3761 WrtHrTrc('trc_AnnBonPtd: '||to_char(trc_AnnBonPtd));
3762 WrtHrTrc('trc_AnnBonErn: '||to_char(trc_AnnBonErn));
3763 WrtHrTrc('trc_TxbAnnBonInc: '||to_char(trc_TxbAnnBonInc));
3764 WrtHrTrc('trc_TotLibAB: '||to_char(trc_TotLibAB ));
3765 WrtHrTrc('trc_LibFyAB: '||to_char(trc_LibFyAB ));
3766 WrtHrTrc('trc_LibFpAB: '||to_char(trc_LibFpAB ));
3767 -- Annual Payments
3768 WrtHrTrc('trc_AnnPymYtd: '||to_char(trc_AnnPymYtd));
3769 WrtHrTrc('trc_AnnPymPtd: '||to_char(trc_AnnPymPtd));
3770 WrtHrTrc('trc_AnnPymErn: '||to_char(trc_AnnPymErn));
3771 WrtHrTrc('trc_TxbAnnPymInc: '||to_char(trc_TxbAnnPymInc));
3772 WrtHrTrc('trc_TotLibAP: '||to_char(trc_TotLibAP ));
3773 WrtHrTrc('trc_LibFyAP: '||to_char(trc_LibFyAP ));
3774 WrtHrTrc('trc_LibFpAP: '||to_char(trc_LibFpAP ));
3775 -- Pubilc Office Allowance
3776 WrtHrTrc('trc_PblOffYtd: '||to_char(trc_PblOffYtd));
3777 WrtHrTrc('trc_PblOffPtd: '||to_char(trc_PblOffPtd));
3778 WrtHrTrc('trc_PblOffErn: '||to_char(trc_PblOffErn));
3779 WrtHrTrc('trc_LibFyPO: '||to_char(trc_LibFyPO ));
3780 WrtHrTrc('trc_LibFpPO: '||to_char(trc_LibFpPO ));
3781
3782 EXCEPTION
3783 WHEN OTHERS THEN
3784 IF xpt_Msg = 'No Error' THEN
3785 xpt_Msg := 'NorCalc: '||TO_CHAR(SQLCODE);
3786 END IF;
3787 RAISE xpt_E;
3788 END NorCalc;
3789 -------------------------------------------------------------------------------
3790 -- ZaTxGlb_01032004 --
3791 -- Tax module supporting function --
3792 -------------------------------------------------------------------------------
3793 FUNCTION ZaTxGlb_01032004(
3794 -- Global Values
3795 p_ZA_ADL_TX_RBT IN NUMBER DEFAULT 0
3796 ,p_ZA_ARR_PF_AN_MX_ABT IN NUMBER DEFAULT 0
3797 ,p_ZA_ARR_RA_AN_MX_ABT IN NUMBER DEFAULT 0
3798 ,p_ZA_TRV_ALL_TX_PRC IN NUMBER DEFAULT 0
3799 ,p_ZA_CC_TX_PRC IN NUMBER DEFAULT 0
3800 ,p_ZA_PF_AN_MX_ABT IN NUMBER DEFAULT 0
3801 ,p_ZA_PF_MX_PRC IN NUMBER DEFAULT 0
3802 ,p_ZA_PER_SERV_COMP_PERC IN NUMBER DEFAULT 0
3803 ,p_ZA_PER_SERV_TRST_PERC IN NUMBER DEFAULT 0
3804 ,p_ZA_PRI_TX_RBT IN NUMBER DEFAULT 0
3805 ,p_ZA_PRI_TX_THRSHLD IN NUMBER DEFAULT 0
3806 ,p_ZA_PBL_TX_PRC IN NUMBER DEFAULT 0
3807 ,p_ZA_PBL_TX_RTE IN NUMBER DEFAULT 0
3808 ,p_ZA_RA_AN_MX_ABT IN NUMBER DEFAULT 0
3809 ,p_ZA_RA_MX_PRC IN NUMBER DEFAULT 0
3810 ,p_ZA_SC_TX_THRSHLD IN NUMBER DEFAULT 0
3811 ,p_ZA_SIT_LIM IN NUMBER DEFAULT 0
3812 ,p_ZA_TMP_TX_RTE IN NUMBER DEFAULT 0
3813 ,p_ZA_WRK_DYS_PR_YR IN NUMBER DEFAULT 0
3814 ) RETURN NUMBER
3815 AS
3816 l_Dum NUMBER := 1;
3817 --id VARCHAR2(30);
3818
3819 BEGIN
3820 --id := dbms_debug.initialize('JLTX');
3821 --dbms_debug.debug_on;
3822
3823 -- Initialise Package Globals
3824 -- Global Values
3825 glb_ZA_ADL_TX_RBT := p_ZA_ADL_TX_RBT;
3826 glb_ZA_ARR_PF_AN_MX_ABT := p_ZA_ARR_PF_AN_MX_ABT;
3827 glb_ZA_ARR_RA_AN_MX_ABT := p_ZA_ARR_RA_AN_MX_ABT;
3828 glb_ZA_TRV_ALL_TX_PRC := p_ZA_TRV_ALL_TX_PRC;
3829 glb_ZA_CC_TX_PRC := p_ZA_CC_TX_PRC;
3830 glb_ZA_PF_AN_MX_ABT := p_ZA_PF_AN_MX_ABT;
3831 glb_ZA_PF_MX_PRC := p_ZA_PF_MX_PRC;
3832 glb_ZA_PER_SERV_COMP_PERC := p_ZA_PER_SERV_COMP_PERC;
3833 glb_ZA_PER_SERV_TRST_PERC := p_ZA_PER_SERV_TRST_PERC;
3834 glb_ZA_PRI_TX_RBT := p_ZA_PRI_TX_RBT;
3835 glb_ZA_PRI_TX_THRSHLD := p_ZA_PRI_TX_THRSHLD;
3836 glb_ZA_PBL_TX_PRC := p_ZA_PBL_TX_PRC;
3837 glb_ZA_PBL_TX_RTE := p_ZA_PBL_TX_RTE;
3838 glb_ZA_RA_AN_MX_ABT := p_ZA_RA_AN_MX_ABT;
3839 glb_ZA_RA_MX_PRC := p_ZA_RA_MX_PRC;
3840 glb_ZA_SC_TX_THRSHLD := p_ZA_SC_TX_THRSHLD;
3841 glb_ZA_SIT_LIM := p_ZA_SIT_LIM;
3842 glb_ZA_TMP_TX_RTE := p_ZA_TMP_TX_RTE;
3843 glb_ZA_WRK_DYS_PR_YR := p_ZA_WRK_DYS_PR_YR;
3844
3845 RETURN l_Dum;
3846 EXCEPTION
3847 WHEN OTHERS THEN
3848 hr_utility.set_message(801, 'ZaTxGlb_01032004: '||TO_CHAR(SQLCODE));
3849 hr_utility.raise_error;
3850 END ZaTxGlb_01032004;
3851 -------------------------------------------------------------------------------
3852 -- ZaTxDbi_01032004 --
3853 -- Tax module supporting function --
3854 -------------------------------------------------------------------------------
3855 FUNCTION ZaTxDbi_01032004(
3856 -- Database Items
3857 p_ASG_SAL IN NUMBER DEFAULT 0
3858 ,p_ASG_SAL_FCTR IN NUMBER DEFAULT 0
3859 ,p_BP_TX_RCV IN VARCHAR2 DEFAULT 'B'
3860 ,p_FXD_PRC IN NUMBER
3861 ,p_PAY_PROC_PRD_DTE_PD IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3862 ,p_PER_AGE IN NUMBER DEFAULT 0
3863 ,p_PER_DTE_OF_BRTH IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3864 ,p_SEA_WRK_DYS_WRK IN NUMBER DEFAULT 0
3865 ,p_SES_DTE IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3866 ,p_TX_DIR_NUM IN VARCHAR2 DEFAULT 'NULL'
3867 ,p_TX_DIR_VAL IN NUMBER DEFAULT 0
3868 ,p_TX_STA IN VARCHAR2 DEFAULT 'X'
3869 ,p_TOT_PKG IN NUMBER DEFAULT 0
3870 ,p_ZA_ACT_END_DTE IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3871 ,p_ZA_ACT_STRT_DTE IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3872 ,p_ZA_ASG_TX_RTR_PRD IN VARCHAR2 DEFAULT 'N'
3873 ,p_ZA_ASG_TX_YR IN NUMBER DEFAULT 4712
3874 ,p_ZA_ASG_TX_YR_END IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3875 ,p_ZA_ASG_TX_YR_STRT IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3876 ,p_ZA_CUR_PRD_END_DTE IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3877 ,p_ZA_CUR_PRD_STRT_DTE IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3878 ,p_ZA_DYS_IN_YR IN NUMBER DEFAULT 0
3879 ,p_ZA_PAY_PRDS_LFT IN NUMBER DEFAULT 0
3880 ,p_ZA_PAY_PRDS_PER_YR IN NUMBER DEFAULT 0
3881 ,p_ASG_PEN_BAS IN VARCHAR2 DEFAULT 'X'
3882 ,p_ZA_TX_YR_END IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3883 ,p_ZA_TX_YR_STRT IN DATE DEFAULT to_date('31-12-4712','DD-MM-YYYY')
3884 ) RETURN NUMBER
3885 AS
3886 l_Dum NUMBER := 1;
3887
3888 BEGIN
3889 -- Initialise Package Globals
3890 -- Database Items
3891 dbi_ASG_SAL := p_ASG_SAL;
3892 dbi_ASG_SAL_FCTR := p_ASG_SAL_FCTR;
3893 dbi_BP_TX_RCV := p_BP_TX_RCV;
3894 dbi_FXD_PRC := p_FXD_PRC;
3895 dbi_PAY_PROC_PRD_DTE_PD := p_PAY_PROC_PRD_DTE_PD;
3896 dbi_PER_AGE := p_PER_AGE;
3897 dbi_PER_DTE_OF_BRTH := p_PER_DTE_OF_BRTH;
3898 dbi_SEA_WRK_DYS_WRK := p_SEA_WRK_DYS_WRK;
3899 dbi_SES_DTE := p_SES_DTE;
3900 dbi_TX_DIR_NUM := p_TX_DIR_NUM;
3901 dbi_TX_DIR_VAL := p_TX_DIR_VAL;
3902 dbi_TX_STA := p_TX_STA;
3903 dbi_TOT_PKG := p_TOT_PKG;
3904 dbi_ZA_ACT_END_DTE := p_ZA_ACT_END_DTE;
3905 dbi_ZA_ACT_STRT_DTE := p_ZA_ACT_STRT_DTE;
3906 dbi_ZA_ASG_TX_RTR_PRD := p_ZA_ASG_TX_RTR_PRD;
3907 dbi_ZA_ASG_TX_YR := p_ZA_ASG_TX_YR;
3908 dbi_ZA_ASG_TX_YR_END := p_ZA_ASG_TX_YR_END;
3909 dbi_ZA_ASG_TX_YR_STRT := p_ZA_ASG_TX_YR_STRT;
3910 dbi_ZA_CUR_PRD_END_DTE := p_ZA_CUR_PRD_END_DTE;
3911 dbi_ZA_CUR_PRD_STRT_DTE := p_ZA_CUR_PRD_STRT_DTE;
3912 dbi_ZA_DYS_IN_YR := p_ZA_DYS_IN_YR;
3913 dbi_ZA_PAY_PRDS_LFT := p_ZA_PAY_PRDS_LFT;
3914 dbi_ZA_PAY_PRDS_PER_YR := p_ZA_PAY_PRDS_PER_YR;
3915 dbi_ASG_PEN_BAS := p_ASG_PEN_BAS;
3916 dbi_ZA_TX_YR_END := p_ZA_TX_YR_END;
3917 dbi_ZA_TX_YR_STRT := p_ZA_TX_YR_STRT;
3918
3919 RETURN l_Dum;
3920 EXCEPTION
3921 WHEN OTHERS THEN
3922 hr_utility.set_message(801, 'ZaTxDbi_01032004: '||TO_CHAR(SQLCODE));
3923 hr_utility.raise_error;
3924 END ZaTxDbi_01032004;
3925 -------------------------------------------------------------------------------
3926 -- ZaTxBal1_01032004 --
3927 -- Tax module supporting function --
3928 -------------------------------------------------------------------------------
3929 FUNCTION ZaTxBal1_01032004(
3930 -- Balances
3931 p_ANN_ARR_PF_CMTD IN NUMBER DEFAULT 0
3932 ,p_ANN_ARR_PF_CYTD IN NUMBER DEFAULT 0
3933 ,p_ANN_ARR_PF_RUN IN NUMBER DEFAULT 0
3934 ,p_ANN_ARR_PF_PTD IN NUMBER DEFAULT 0
3935 ,p_ANN_ARR_PF_YTD IN NUMBER DEFAULT 0
3936 ,p_ANN_ARR_RA_CMTD IN NUMBER DEFAULT 0
3937 ,p_ANN_ARR_RA_CYTD IN NUMBER DEFAULT 0
3938 ,p_ANN_ARR_RA_RUN IN NUMBER DEFAULT 0
3939 ,p_ANN_ARR_RA_PTD IN NUMBER DEFAULT 0
3940 ,p_ANN_ARR_RA_YTD IN NUMBER DEFAULT 0
3941 ,p_AA_PRCHD_RVAL_NRFI_CMTD IN NUMBER DEFAULT 0
3942 ,p_AA_PRCHD_RVAL_NRFI_RUN IN NUMBER DEFAULT 0
3943 ,p_AA_PRCHD_RVAL_NRFI_PTD IN NUMBER DEFAULT 0
3944 ,p_AA_PRCHD_RVAL_NRFI_YTD IN NUMBER DEFAULT 0
3945 ,p_AA_PRCHD_RVAL_RFI_CMTD IN NUMBER DEFAULT 0
3946 ,p_AA_PRCHD_RVAL_RFI_RUN IN NUMBER DEFAULT 0
3947 ,p_AA_PRCHD_RVAL_RFI_PTD IN NUMBER DEFAULT 0
3948 ,p_AA_PRCHD_RVAL_RFI_YTD IN NUMBER DEFAULT 0
3949 ,p_AB_NRFI_CMTD IN NUMBER DEFAULT 0
3950 ,p_AB_NRFI_RUN IN NUMBER DEFAULT 0
3951 ,p_AB_NRFI_PTD IN NUMBER DEFAULT 0
3952 ,p_AB_NRFI_YTD IN NUMBER DEFAULT 0
3953 ,p_AB_RFI_CMTD IN NUMBER DEFAULT 0
3954 ,p_AB_RFI_RUN IN NUMBER DEFAULT 0
3955 ,p_AB_RFI_PTD IN NUMBER DEFAULT 0
3956 ,p_AB_RFI_YTD IN NUMBER DEFAULT 0
3957 ,p_ANN_BUR_AND_SCH_NRFI_CMTD IN NUMBER DEFAULT 0
3958 ,p_ANN_BUR_AND_SCH_NRFI_RUN IN NUMBER DEFAULT 0
3959 ,p_ANN_BUR_AND_SCH_NRFI_PTD IN NUMBER DEFAULT 0
3960 ,p_ANN_BUR_AND_SCH_NRFI_YTD IN NUMBER DEFAULT 0
3961 ,p_ANN_BUR_AND_SCH_RFI_CMTD IN NUMBER DEFAULT 0
3962 ,p_ANN_BUR_AND_SCH_RFI_RUN IN NUMBER DEFAULT 0
3963 ,p_ANN_BUR_AND_SCH_RFI_PTD IN NUMBER DEFAULT 0
3964 ,p_ANN_BUR_AND_SCH_RFI_YTD IN NUMBER DEFAULT 0
3965 ,p_AC_NRFI_CMTD IN NUMBER DEFAULT 0
3966 ,p_AC_NRFI_RUN IN NUMBER DEFAULT 0
3967 ,p_AC_NRFI_PTD IN NUMBER DEFAULT 0
3968 ,p_AC_NRFI_YTD IN NUMBER DEFAULT 0
3969 ,p_AC_RFI_CMTD IN NUMBER DEFAULT 0
3970 ,p_AC_RFI_RUN IN NUMBER DEFAULT 0
3971 ,p_AC_RFI_PTD IN NUMBER DEFAULT 0
3972 ,p_AC_RFI_YTD IN NUMBER DEFAULT 0
3973 ,p_ANN_IC_PYMNTS_NRFI_CMTD IN NUMBER DEFAULT 0
3974 ,p_ANN_IC_PYMNTS_NRFI_CYTD IN NUMBER DEFAULT 0
3975 ,p_ANN_IC_PYMNTS_NRFI_RUN IN NUMBER DEFAULT 0
3976 ,p_ANN_IC_PYMNTS_NRFI_PTD IN NUMBER DEFAULT 0
3977 ,p_ANN_IC_PYMNTS_NRFI_QTD IN NUMBER DEFAULT 0
3978 ,p_ANN_IC_PYMNTS_NRFI_YTD IN NUMBER DEFAULT 0
3979 ,p_ANN_IC_PYMNTS_RFI_CMTD IN NUMBER DEFAULT 0
3980 ,p_ANN_IC_PYMNTS_RFI_CYTD IN NUMBER DEFAULT 0
3981 ,p_ANN_IC_PYMNTS_RFI_RUN IN NUMBER DEFAULT 0
3982 ,p_ANN_IC_PYMNTS_RFI_PTD IN NUMBER DEFAULT 0
3983 ,p_ANN_IC_PYMNTS_RFI_QTD IN NUMBER DEFAULT 0
3984 ,p_ANN_IC_PYMNTS_RFI_YTD IN NUMBER DEFAULT 0
3985 ,p_ANN_LB_PYMNTS_NRFI_CMTD IN NUMBER DEFAULT 0
3986 ,p_ANN_LB_PYMNTS_NRFI_CYTD IN NUMBER DEFAULT 0
3987 ,p_ANN_LB_PYMNTS_NRFI_RUN IN NUMBER DEFAULT 0
3988 ,p_ANN_LB_PYMNTS_NRFI_PTD IN NUMBER DEFAULT 0
3989 ,p_ANN_LB_PYMNTS_NRFI_QTD IN NUMBER DEFAULT 0
3990 ,p_ANN_LB_PYMNTS_NRFI_YTD IN NUMBER DEFAULT 0
3991 ,p_ANN_LB_PYMNTS_RFI_CMTD IN NUMBER DEFAULT 0
3992 ,p_ANN_LB_PYMNTS_RFI_CYTD IN NUMBER DEFAULT 0
3993 ,p_ANN_LB_PYMNTS_RFI_RUN IN NUMBER DEFAULT 0
3994 ,p_ANN_LB_PYMNTS_RFI_PTD IN NUMBER DEFAULT 0
3995 ,p_ANN_LB_PYMNTS_RFI_QTD IN NUMBER DEFAULT 0
3996 ,p_ANN_LB_PYMNTS_RFI_YTD IN NUMBER DEFAULT 0
3997 ,p_ANN_NRFI_TOT_PKG_CMTD IN NUMBER DEFAULT 0
3998 ,p_ANN_NRFI_TOT_PKG_PTD IN NUMBER DEFAULT 0
3999 ,p_ANN_NRFI_TOT_PKG_YTD IN NUMBER DEFAULT 0
4000 ,p_ANN_PYM_DBT_NRFI_CMTD IN NUMBER DEFAULT 0
4001 ,p_ANN_PYM_DBT_NRFI_RUN IN NUMBER DEFAULT 0
4002 ,p_ANN_PYM_DBT_NRFI_PTD IN NUMBER DEFAULT 0
4003 ,p_ANN_PYM_DBT_NRFI_YTD IN NUMBER DEFAULT 0
4004 ,p_ANN_PYM_DBT_RFI_CMTD IN NUMBER DEFAULT 0
4005 ,p_ANN_PYM_DBT_RFI_RUN IN NUMBER DEFAULT 0
4006 ,p_ANN_PYM_DBT_RFI_PTD IN NUMBER DEFAULT 0
4007 ,p_ANN_PYM_DBT_RFI_YTD IN NUMBER DEFAULT 0
4008 ,p_ANN_PF_CMTD IN NUMBER DEFAULT 0
4009 ,p_ANN_PF_CYTD IN NUMBER DEFAULT 0
4010 ,p_ANN_PF_RUN IN NUMBER DEFAULT 0
4011 ,p_ANN_PF_PTD IN NUMBER DEFAULT 0
4012 ,p_ANN_PF_YTD IN NUMBER DEFAULT 0
4013 ) RETURN NUMBER
4014 AS
4015 l_Dum NUMBER := 1;
4016
4017 BEGIN
4018 -- Balances
4019 bal_ANN_ARR_PF_CMTD := p_ANN_ARR_PF_CMTD;
4020 bal_ANN_ARR_PF_CYTD := p_ANN_ARR_PF_CYTD;
4021 bal_ANN_ARR_PF_RUN := p_ANN_ARR_PF_RUN;
4022 bal_ANN_ARR_PF_PTD := p_ANN_ARR_PF_PTD;
4023 bal_ANN_ARR_PF_YTD := p_ANN_ARR_PF_YTD;
4024 bal_ANN_ARR_RA_CMTD := p_ANN_ARR_RA_CMTD;
4025 bal_ANN_ARR_RA_CYTD := p_ANN_ARR_RA_CYTD;
4026 bal_ANN_ARR_RA_RUN := p_ANN_ARR_RA_RUN;
4027 bal_ANN_ARR_RA_PTD := p_ANN_ARR_RA_PTD;
4028 bal_ANN_ARR_RA_YTD := p_ANN_ARR_RA_YTD;
4029 bal_AA_PRCHD_RVAL_NRFI_CMTD := p_AA_PRCHD_RVAL_NRFI_CMTD;
4030 bal_AA_PRCHD_RVAL_NRFI_RUN := p_AA_PRCHD_RVAL_NRFI_RUN;
4031 bal_AA_PRCHD_RVAL_NRFI_PTD := p_AA_PRCHD_RVAL_NRFI_PTD;
4032 bal_AA_PRCHD_RVAL_NRFI_YTD := p_AA_PRCHD_RVAL_NRFI_YTD;
4033 bal_AA_PRCHD_RVAL_RFI_CMTD := p_AA_PRCHD_RVAL_RFI_CMTD;
4034 bal_AA_PRCHD_RVAL_RFI_RUN := p_AA_PRCHD_RVAL_RFI_RUN;
4035 bal_AA_PRCHD_RVAL_RFI_PTD := p_AA_PRCHD_RVAL_RFI_PTD;
4036 bal_AA_PRCHD_RVAL_RFI_YTD := p_AA_PRCHD_RVAL_RFI_YTD;
4037 bal_AB_NRFI_CMTD := p_AB_NRFI_CMTD;
4038 bal_AB_NRFI_RUN := p_AB_NRFI_RUN;
4039 bal_AB_NRFI_PTD := p_AB_NRFI_PTD;
4040 bal_AB_NRFI_YTD := p_AB_NRFI_YTD;
4041 bal_AB_RFI_CMTD := p_AB_RFI_CMTD;
4042 bal_AB_RFI_RUN := p_AB_RFI_RUN;
4043 bal_AB_RFI_PTD := p_AB_RFI_PTD;
4044 bal_AB_RFI_YTD := p_AB_RFI_YTD;
4045 bal_ANN_BUR_AND_SCH_NRFI_CMTD := p_ANN_BUR_AND_SCH_NRFI_CMTD;
4046 bal_ANN_BUR_AND_SCH_NRFI_RUN := p_ANN_BUR_AND_SCH_NRFI_RUN;
4047 bal_ANN_BUR_AND_SCH_NRFI_PTD := p_ANN_BUR_AND_SCH_NRFI_PTD;
4048 bal_ANN_BUR_AND_SCH_NRFI_YTD := p_ANN_BUR_AND_SCH_NRFI_YTD;
4049 bal_ANN_BUR_AND_SCH_RFI_CMTD := p_ANN_BUR_AND_SCH_RFI_CMTD;
4050 bal_ANN_BUR_AND_SCH_RFI_RUN := p_ANN_BUR_AND_SCH_RFI_RUN;
4051 bal_ANN_BUR_AND_SCH_RFI_PTD := p_ANN_BUR_AND_SCH_RFI_PTD;
4052 bal_ANN_BUR_AND_SCH_RFI_YTD := p_ANN_BUR_AND_SCH_RFI_YTD;
4053 bal_AC_NRFI_CMTD := p_AC_NRFI_CMTD;
4054 bal_AC_NRFI_RUN := p_AC_NRFI_RUN;
4055 bal_AC_NRFI_PTD := p_AC_NRFI_PTD;
4056 bal_AC_NRFI_YTD := p_AC_NRFI_YTD;
4057 bal_AC_RFI_CMTD := p_AC_RFI_CMTD;
4058 bal_AC_RFI_RUN := p_AC_RFI_RUN;
4059 bal_AC_RFI_PTD := p_AC_RFI_PTD;
4060 bal_AC_RFI_YTD := p_AC_RFI_YTD;
4061 bal_ANN_IC_PYMNTS_NRFI_CMTD := p_ANN_IC_PYMNTS_NRFI_CMTD;
4062 bal_ANN_IC_PYMNTS_NRFI_CYTD := p_ANN_IC_PYMNTS_NRFI_CYTD;
4063 bal_ANN_IC_PYMNTS_NRFI_RUN := p_ANN_IC_PYMNTS_NRFI_RUN;
4064 bal_ANN_IC_PYMNTS_NRFI_PTD := p_ANN_IC_PYMNTS_NRFI_PTD;
4065 bal_ANN_IC_PYMNTS_NRFI_QTD := p_ANN_IC_PYMNTS_NRFI_QTD;
4066 bal_ANN_IC_PYMNTS_NRFI_YTD := p_ANN_IC_PYMNTS_NRFI_YTD;
4067 bal_ANN_IC_PYMNTS_RFI_CMTD := p_ANN_IC_PYMNTS_RFI_CMTD;
4068 bal_ANN_IC_PYMNTS_RFI_CYTD := p_ANN_IC_PYMNTS_RFI_CYTD;
4069 bal_ANN_IC_PYMNTS_RFI_RUN := p_ANN_IC_PYMNTS_RFI_RUN;
4070 bal_ANN_IC_PYMNTS_RFI_PTD := p_ANN_IC_PYMNTS_RFI_PTD;
4071 bal_ANN_IC_PYMNTS_RFI_QTD := p_ANN_IC_PYMNTS_RFI_QTD;
4072 bal_ANN_IC_PYMNTS_RFI_YTD := p_ANN_IC_PYMNTS_RFI_YTD;
4073 bal_ANN_LB_PYMNTS_NRFI_CMTD := p_ANN_LB_PYMNTS_NRFI_CMTD;
4074 bal_ANN_LB_PYMNTS_NRFI_CYTD := p_ANN_LB_PYMNTS_NRFI_CYTD;
4075 bal_ANN_LB_PYMNTS_NRFI_RUN := p_ANN_LB_PYMNTS_NRFI_RUN;
4076 bal_ANN_LB_PYMNTS_NRFI_PTD := p_ANN_LB_PYMNTS_NRFI_PTD;
4077 bal_ANN_LB_PYMNTS_NRFI_QTD := p_ANN_LB_PYMNTS_NRFI_QTD;
4078 bal_ANN_LB_PYMNTS_NRFI_YTD := p_ANN_LB_PYMNTS_NRFI_YTD;
4079 bal_ANN_LB_PYMNTS_RFI_CMTD := p_ANN_LB_PYMNTS_RFI_CMTD;
4080 bal_ANN_LB_PYMNTS_RFI_CYTD := p_ANN_LB_PYMNTS_RFI_CYTD;
4081 bal_ANN_LB_PYMNTS_RFI_RUN := p_ANN_LB_PYMNTS_RFI_RUN;
4082 bal_ANN_LB_PYMNTS_RFI_PTD := p_ANN_LB_PYMNTS_RFI_PTD;
4083 bal_ANN_LB_PYMNTS_RFI_QTD := p_ANN_LB_PYMNTS_RFI_QTD;
4084 bal_ANN_LB_PYMNTS_RFI_YTD := p_ANN_LB_PYMNTS_RFI_YTD;
4085 bal_ANN_NRFI_TOT_PKG_CMTD := p_ANN_NRFI_TOT_PKG_CMTD;
4086 bal_ANN_NRFI_TOT_PKG_PTD := p_ANN_NRFI_TOT_PKG_PTD;
4087 bal_ANN_NRFI_TOT_PKG_YTD := p_ANN_NRFI_TOT_PKG_YTD;
4088 bal_ANN_PYM_DBT_NRFI_CMTD := p_ANN_PYM_DBT_NRFI_CMTD;
4089 bal_ANN_PYM_DBT_NRFI_RUN := p_ANN_PYM_DBT_NRFI_RUN;
4090 bal_ANN_PYM_DBT_NRFI_PTD := p_ANN_PYM_DBT_NRFI_PTD;
4091 bal_ANN_PYM_DBT_NRFI_YTD := p_ANN_PYM_DBT_NRFI_YTD;
4092 bal_ANN_PYM_DBT_RFI_CMTD := p_ANN_PYM_DBT_RFI_CMTD;
4093 bal_ANN_PYM_DBT_RFI_RUN := p_ANN_PYM_DBT_RFI_RUN;
4094 bal_ANN_PYM_DBT_RFI_PTD := p_ANN_PYM_DBT_RFI_PTD;
4095 bal_ANN_PYM_DBT_RFI_YTD := p_ANN_PYM_DBT_RFI_YTD;
4096 bal_ANN_PF_CMTD := p_ANN_PF_CMTD;
4097 bal_ANN_PF_CYTD := p_ANN_PF_CYTD;
4098 bal_ANN_PF_RUN := p_ANN_PF_RUN;
4099 bal_ANN_PF_PTD := p_ANN_PF_PTD;
4100 bal_ANN_PF_YTD := p_ANN_PF_YTD;
4101
4102 RETURN l_Dum;
4103 EXCEPTION
4104 WHEN OTHERS THEN
4105 hr_utility.set_message(801, 'ZaTxBal1_01032004: '||TO_CHAR(SQLCODE));
4106 hr_utility.raise_error;
4107 END ZaTxBal1_01032004;
4108 -------------------------------------------------------------------------------
4109 -- ZaTxBal2_01032004 --
4110 -- Tax module supporting function --
4111 -------------------------------------------------------------------------------
4112 FUNCTION ZaTxBal2_01032004(
4113 -- Balances
4114 p_ARES_TRD_NRFI_CMTD IN NUMBER DEFAULT 0
4115 ,p_ARES_TRD_NRFI_RUN IN NUMBER DEFAULT 0
4116 ,p_ARES_TRD_NRFI_PTD IN NUMBER DEFAULT 0
4117 ,p_ARES_TRD_NRFI_YTD IN NUMBER DEFAULT 0
4118 ,p_ARES_TRD_RFI_CMTD IN NUMBER DEFAULT 0
4119 ,p_ARES_TRD_RFI_RUN IN NUMBER DEFAULT 0
4120 ,p_ARES_TRD_RFI_PTD IN NUMBER DEFAULT 0
4121 ,p_ARES_TRD_RFI_YTD IN NUMBER DEFAULT 0
4122 ,p_ANN_RA_CMTD IN NUMBER DEFAULT 0
4123 ,p_ANN_RA_CYTD IN NUMBER DEFAULT 0
4124 ,p_ANN_RA_RUN IN NUMBER DEFAULT 0
4125 ,p_ANN_RA_PTD IN NUMBER DEFAULT 0
4126 ,p_ANN_RA_YTD IN NUMBER DEFAULT 0
4127 ,p_ANN_RFI_TOT_PKG_CMTD IN NUMBER DEFAULT 0
4128 ,p_ANN_RFI_TOT_PKG_PTD IN NUMBER DEFAULT 0
4129 ,p_ANN_RFI_TOT_PKG_YTD IN NUMBER DEFAULT 0
4130 ,p_ANN_TXB_PKG_COMP_CMTD IN NUMBER DEFAULT 0
4131 ,p_ANN_TXB_PKG_COMP_CYTD IN NUMBER DEFAULT 0
4132 ,p_ANN_TXB_PKG_COMP_RUN IN NUMBER DEFAULT 0
4133 ,p_ANN_TXB_PKG_COMP_PTD IN NUMBER DEFAULT 0
4134 ,p_ANN_TXB_PKG_COMP_YTD IN NUMBER DEFAULT 0
4135 ,p_ANU_FRM_RET_FND_NRFI_CMTD IN NUMBER DEFAULT 0
4136 ,p_ANU_FRM_RET_FND_NRFI_RUN IN NUMBER DEFAULT 0
4137 ,p_ANU_FRM_RET_FND_NRFI_PTD IN NUMBER DEFAULT 0
4138 ,p_ANU_FRM_RET_FND_NRFI_YTD IN NUMBER DEFAULT 0
4139 ,p_ANU_FRM_RET_FND_RFI_CMTD IN NUMBER DEFAULT 0
4140 ,p_ANU_FRM_RET_FND_RFI_RUN IN NUMBER DEFAULT 0
4141 ,p_ANU_FRM_RET_FND_RFI_PTD IN NUMBER DEFAULT 0
4142 ,p_ANU_FRM_RET_FND_RFI_YTD IN NUMBER DEFAULT 0
4143 ,p_ARR_PF_CMTD IN NUMBER DEFAULT 0
4144 ,p_ARR_PF_CYTD IN NUMBER DEFAULT 0
4145 ,p_ARR_PF_PTD IN NUMBER DEFAULT 0
4146 ,p_ARR_PF_YTD IN NUMBER DEFAULT 0
4147 ,p_ARR_RA_CMTD IN NUMBER DEFAULT 0
4148 ,p_ARR_RA_CYTD IN NUMBER DEFAULT 0
4149 ,p_ARR_RA_PTD IN NUMBER DEFAULT 0
4150 ,p_ARR_RA_YTD IN NUMBER DEFAULT 0
4151 ,p_AST_PRCHD_RVAL_NRFI_CMTD IN NUMBER DEFAULT 0
4152 ,p_AST_PRCHD_RVAL_NRFI_CYTD IN NUMBER DEFAULT 0
4153 ,p_AST_PRCHD_RVAL_NRFI_RUN IN NUMBER DEFAULT 0
4154 ,p_AST_PRCHD_RVAL_NRFI_PTD IN NUMBER DEFAULT 0
4155 ,p_AST_PRCHD_RVAL_NRFI_YTD IN NUMBER DEFAULT 0
4156 ,p_AST_PRCHD_RVAL_RFI_CMTD IN NUMBER DEFAULT 0
4157 ,p_AST_PRCHD_RVAL_RFI_CYTD IN NUMBER DEFAULT 0
4158 ,p_AST_PRCHD_RVAL_RFI_RUN IN NUMBER DEFAULT 0
4159 ,p_AST_PRCHD_RVAL_RFI_PTD IN NUMBER DEFAULT 0
4160 ,p_AST_PRCHD_RVAL_RFI_YTD IN NUMBER DEFAULT 0
4161 ,p_BP_CMTD IN NUMBER DEFAULT 0
4162 ,p_BP_PTD IN NUMBER DEFAULT 0
4163 ,p_BP_YTD IN NUMBER DEFAULT 0
4164 ,p_BUR_AND_SCH_NRFI_CMTD IN NUMBER DEFAULT 0
4165 ,p_BUR_AND_SCH_NRFI_CYTD IN NUMBER DEFAULT 0
4166 ,p_BUR_AND_SCH_NRFI_RUN IN NUMBER DEFAULT 0
4167 ,p_BUR_AND_SCH_NRFI_PTD IN NUMBER DEFAULT 0
4168 ,p_BUR_AND_SCH_NRFI_YTD IN NUMBER DEFAULT 0
4169 ,p_BUR_AND_SCH_RFI_CMTD IN NUMBER DEFAULT 0
4170 ,p_BUR_AND_SCH_RFI_CYTD IN NUMBER DEFAULT 0
4171 ,p_BUR_AND_SCH_RFI_RUN IN NUMBER DEFAULT 0
4172 ,p_BUR_AND_SCH_RFI_PTD IN NUMBER DEFAULT 0
4173 ,p_BUR_AND_SCH_RFI_YTD IN NUMBER DEFAULT 0
4174 ,p_COMM_NRFI_CMTD IN NUMBER DEFAULT 0
4175 ,p_COMM_NRFI_CYTD IN NUMBER DEFAULT 0
4176 ,p_COMM_NRFI_RUN IN NUMBER DEFAULT 0
4177 ,p_COMM_NRFI_PTD IN NUMBER DEFAULT 0
4178 ,p_COMM_NRFI_YTD IN NUMBER DEFAULT 0
4179 ,p_COMM_RFI_CMTD IN NUMBER DEFAULT 0
4180 ,p_COMM_RFI_CYTD IN NUMBER DEFAULT 0
4181 ,p_COMM_RFI_RUN IN NUMBER DEFAULT 0
4182 ,p_COMM_RFI_PTD IN NUMBER DEFAULT 0
4183 ,p_COMM_RFI_YTD IN NUMBER DEFAULT 0
4184 ,p_COMP_ALL_NRFI_CMTD IN NUMBER DEFAULT 0
4185 ,p_COMP_ALL_NRFI_CYTD IN NUMBER DEFAULT 0
4186 ,p_COMP_ALL_NRFI_RUN IN NUMBER DEFAULT 0
4187 ,p_COMP_ALL_NRFI_PTD IN NUMBER DEFAULT 0
4188 ,p_COMP_ALL_NRFI_YTD IN NUMBER DEFAULT 0
4189 ,p_COMP_ALL_RFI_CMTD IN NUMBER DEFAULT 0
4190 ,p_COMP_ALL_RFI_CYTD IN NUMBER DEFAULT 0
4191 ,p_COMP_ALL_RFI_RUN IN NUMBER DEFAULT 0
4192 ,p_COMP_ALL_RFI_PTD IN NUMBER DEFAULT 0
4193 ,p_COMP_ALL_RFI_YTD IN NUMBER DEFAULT 0
4194 ) RETURN NUMBER
4195 AS
4196 l_Dum NUMBER := 1;
4197
4198 BEGIN
4199 -- Balances
4200 bal_ARES_TRD_NRFI_CMTD := p_ARES_TRD_NRFI_CMTD;
4201 bal_ARES_TRD_NRFI_RUN := p_ARES_TRD_NRFI_RUN;
4202 bal_ARES_TRD_NRFI_PTD := p_ARES_TRD_NRFI_PTD;
4203 bal_ARES_TRD_NRFI_YTD := p_ARES_TRD_NRFI_YTD;
4204 bal_ARES_TRD_RFI_CMTD := p_ARES_TRD_RFI_CMTD;
4205 bal_ARES_TRD_RFI_RUN := p_ARES_TRD_RFI_RUN;
4206 bal_ARES_TRD_RFI_PTD := p_ARES_TRD_RFI_PTD;
4207 bal_ARES_TRD_RFI_YTD := p_ARES_TRD_RFI_YTD;
4208 bal_ANN_RA_CMTD := p_ANN_RA_CMTD;
4209 bal_ANN_RA_CYTD := p_ANN_RA_CYTD;
4210 bal_ANN_RA_RUN := p_ANN_RA_RUN;
4211 bal_ANN_RA_PTD := p_ANN_RA_PTD;
4212 bal_ANN_RA_YTD := p_ANN_RA_YTD;
4213 bal_ANN_RFI_TOT_PKG_CMTD := p_ANN_RFI_TOT_PKG_CMTD;
4214 bal_ANN_RFI_TOT_PKG_PTD := p_ANN_RFI_TOT_PKG_PTD;
4215 bal_ANN_RFI_TOT_PKG_YTD := p_ANN_RFI_TOT_PKG_YTD;
4216 bal_ANN_TXB_PKG_COMP_CMTD := p_ANN_TXB_PKG_COMP_CMTD;
4217 bal_ANN_TXB_PKG_COMP_CYTD := p_ANN_TXB_PKG_COMP_CYTD;
4218 bal_ANN_TXB_PKG_COMP_RUN := p_ANN_TXB_PKG_COMP_RUN;
4219 bal_ANN_TXB_PKG_COMP_PTD := p_ANN_TXB_PKG_COMP_PTD;
4220 bal_ANN_TXB_PKG_COMP_YTD := p_ANN_TXB_PKG_COMP_YTD;
4221 bal_ANU_FRM_RET_FND_NRFI_CMTD := p_ANU_FRM_RET_FND_NRFI_CMTD;
4222 bal_ANU_FRM_RET_FND_NRFI_RUN := p_ANU_FRM_RET_FND_NRFI_RUN;
4223 bal_ANU_FRM_RET_FND_NRFI_PTD := p_ANU_FRM_RET_FND_NRFI_PTD;
4224 bal_ANU_FRM_RET_FND_NRFI_YTD := p_ANU_FRM_RET_FND_NRFI_YTD;
4225 bal_ANU_FRM_RET_FND_RFI_CMTD := p_ANU_FRM_RET_FND_RFI_CMTD;
4226 bal_ANU_FRM_RET_FND_RFI_RUN := p_ANU_FRM_RET_FND_RFI_RUN;
4227 bal_ANU_FRM_RET_FND_RFI_PTD := p_ANU_FRM_RET_FND_RFI_PTD;
4228 bal_ANU_FRM_RET_FND_RFI_YTD := p_ANU_FRM_RET_FND_RFI_YTD;
4229 bal_ARR_PF_CMTD := p_ARR_PF_CMTD;
4230 bal_ARR_PF_CYTD := p_ARR_PF_CYTD;
4231 bal_ARR_PF_PTD := p_ARR_PF_PTD;
4232 bal_ARR_PF_YTD := p_ARR_PF_YTD;
4233 bal_ARR_RA_CMTD := p_ARR_RA_CMTD;
4234 bal_ARR_RA_CYTD := p_ARR_RA_CYTD;
4235 bal_ARR_RA_PTD := p_ARR_RA_PTD;
4236 bal_ARR_RA_YTD := p_ARR_RA_YTD;
4237 bal_AST_PRCHD_RVAL_NRFI_CMTD := p_AST_PRCHD_RVAL_NRFI_CMTD;
4238 bal_AST_PRCHD_RVAL_NRFI_CYTD := p_AST_PRCHD_RVAL_NRFI_CYTD;
4239 bal_AST_PRCHD_RVAL_NRFI_RUN := p_AST_PRCHD_RVAL_NRFI_RUN;
4240 bal_AST_PRCHD_RVAL_NRFI_PTD := p_AST_PRCHD_RVAL_NRFI_PTD;
4241 bal_AST_PRCHD_RVAL_NRFI_YTD := p_AST_PRCHD_RVAL_NRFI_YTD;
4242 bal_AST_PRCHD_RVAL_RFI_CMTD := p_AST_PRCHD_RVAL_RFI_CMTD;
4243 bal_AST_PRCHD_RVAL_RFI_CYTD := p_AST_PRCHD_RVAL_RFI_CYTD;
4244 bal_AST_PRCHD_RVAL_RFI_RUN := p_AST_PRCHD_RVAL_RFI_RUN;
4245 bal_AST_PRCHD_RVAL_RFI_PTD := p_AST_PRCHD_RVAL_RFI_PTD;
4246 bal_AST_PRCHD_RVAL_RFI_YTD := p_AST_PRCHD_RVAL_RFI_YTD;
4247 bal_BP_CMTD := p_BP_CMTD;
4248 bal_BP_PTD := p_BP_PTD;
4249 bal_BP_YTD := p_BP_YTD;
4250 bal_BUR_AND_SCH_NRFI_CMTD := p_BUR_AND_SCH_NRFI_CMTD;
4251 bal_BUR_AND_SCH_NRFI_CYTD := p_BUR_AND_SCH_NRFI_CYTD;
4252 bal_BUR_AND_SCH_NRFI_RUN := p_BUR_AND_SCH_NRFI_RUN;
4253 bal_BUR_AND_SCH_NRFI_PTD := p_BUR_AND_SCH_NRFI_PTD;
4254 bal_BUR_AND_SCH_NRFI_YTD := p_BUR_AND_SCH_NRFI_YTD;
4255 bal_BUR_AND_SCH_RFI_CMTD := p_BUR_AND_SCH_RFI_CMTD;
4256 bal_BUR_AND_SCH_RFI_CYTD := p_BUR_AND_SCH_RFI_CYTD;
4257 bal_BUR_AND_SCH_RFI_RUN := p_BUR_AND_SCH_RFI_RUN;
4258 bal_BUR_AND_SCH_RFI_PTD := p_BUR_AND_SCH_RFI_PTD;
4259 bal_BUR_AND_SCH_RFI_YTD := p_BUR_AND_SCH_RFI_YTD;
4260 bal_COMM_NRFI_CMTD := p_COMM_NRFI_CMTD;
4261 bal_COMM_NRFI_CYTD := p_COMM_NRFI_CYTD;
4262 bal_COMM_NRFI_RUN := p_COMM_NRFI_RUN;
4263 bal_COMM_NRFI_PTD := p_COMM_NRFI_PTD;
4264 bal_COMM_NRFI_YTD := p_COMM_NRFI_YTD;
4265 bal_COMM_RFI_CMTD := p_COMM_RFI_CMTD;
4266 bal_COMM_RFI_CYTD := p_COMM_RFI_CYTD;
4267 bal_COMM_RFI_RUN := p_COMM_RFI_RUN;
4268 bal_COMM_RFI_PTD := p_COMM_RFI_PTD;
4269 bal_COMM_RFI_YTD := p_COMM_RFI_YTD;
4270 bal_COMP_ALL_NRFI_CMTD := p_COMP_ALL_NRFI_CMTD;
4271 bal_COMP_ALL_NRFI_CYTD := p_COMP_ALL_NRFI_CYTD;
4272 bal_COMP_ALL_NRFI_RUN := p_COMP_ALL_NRFI_RUN;
4273 bal_COMP_ALL_NRFI_PTD := p_COMP_ALL_NRFI_PTD;
4274 bal_COMP_ALL_NRFI_YTD := p_COMP_ALL_NRFI_YTD;
4275 bal_COMP_ALL_RFI_CMTD := p_COMP_ALL_RFI_CMTD;
4276 bal_COMP_ALL_RFI_CYTD := p_COMP_ALL_RFI_CYTD;
4277 bal_COMP_ALL_RFI_RUN := p_COMP_ALL_RFI_RUN;
4278 bal_COMP_ALL_RFI_PTD := p_COMP_ALL_RFI_PTD;
4279 bal_COMP_ALL_RFI_YTD := p_COMP_ALL_RFI_YTD;
4280
4281 RETURN l_Dum;
4282 EXCEPTION
4283 WHEN OTHERS THEN
4284 hr_utility.set_message(801, 'ZaTxBal2_01032004: '||TO_CHAR(SQLCODE));
4285 hr_utility.raise_error;
4286 END ZaTxBal2_01032004;
4287 -------------------------------------------------------------------------------
4288 -- ZaTxBal3_01032004 --
4289 -- Tax module supporting function --
4290 -------------------------------------------------------------------------------
4291 FUNCTION ZaTxBal3_01032004(
4292 -- Balances
4293 p_CUR_PF_CMTD IN NUMBER DEFAULT 0
4294 ,p_CUR_PF_CYTD IN NUMBER DEFAULT 0
4295 ,p_CUR_PF_RUN IN NUMBER DEFAULT 0
4296 ,p_CUR_PF_PTD IN NUMBER DEFAULT 0
4297 ,p_CUR_PF_YTD IN NUMBER DEFAULT 0
4298 ,p_CUR_RA_CMTD IN NUMBER DEFAULT 0
4299 ,p_CUR_RA_CYTD IN NUMBER DEFAULT 0
4300 ,p_CUR_RA_RUN IN NUMBER DEFAULT 0
4301 ,p_CUR_RA_PTD IN NUMBER DEFAULT 0
4302 ,p_CUR_RA_YTD IN NUMBER DEFAULT 0
4303 ,p_DIR_DMD_RMN_ITD IN NUMBER DEFAULT 0
4304 ,p_ENT_ALL_NRFI_CMTD IN NUMBER DEFAULT 0
4305 ,p_ENT_ALL_NRFI_CYTD IN NUMBER DEFAULT 0
4306 ,p_ENT_ALL_NRFI_RUN IN NUMBER DEFAULT 0
4307 ,p_ENT_ALL_NRFI_PTD IN NUMBER DEFAULT 0
4308 ,p_ENT_ALL_NRFI_YTD IN NUMBER DEFAULT 0
4309 ,p_ENT_ALL_RFI_CMTD IN NUMBER DEFAULT 0
4310 ,p_ENT_ALL_RFI_CYTD IN NUMBER DEFAULT 0
4311 ,p_ENT_ALL_RFI_RUN IN NUMBER DEFAULT 0
4312 ,p_ENT_ALL_RFI_PTD IN NUMBER DEFAULT 0
4313 ,p_ENT_ALL_RFI_YTD IN NUMBER DEFAULT 0
4314 ,p_EXC_ARR_PEN_ITD IN NUMBER DEFAULT 0
4315 ,p_EXC_ARR_PEN_PTD IN NUMBER DEFAULT 0
4316 ,p_EXC_ARR_PEN_YTD IN NUMBER DEFAULT 0
4317 ,p_EXC_ARR_RA_ITD IN NUMBER DEFAULT 0
4318 ,p_EXC_ARR_RA_PTD IN NUMBER DEFAULT 0
4319 ,p_EXC_ARR_RA_YTD IN NUMBER DEFAULT 0
4320 ,p_FREE_ACCOM_NRFI_CMTD IN NUMBER DEFAULT 0
4321 ,p_FREE_ACCOM_NRFI_CYTD IN NUMBER DEFAULT 0
4322 ,p_FREE_ACCOM_NRFI_RUN IN NUMBER DEFAULT 0
4323 ,p_FREE_ACCOM_NRFI_PTD IN NUMBER DEFAULT 0
4324 ,p_FREE_ACCOM_NRFI_YTD IN NUMBER DEFAULT 0
4325 ,p_FREE_ACCOM_RFI_CMTD IN NUMBER DEFAULT 0
4326 ,p_FREE_ACCOM_RFI_CYTD IN NUMBER DEFAULT 0
4327 ,p_FREE_ACCOM_RFI_RUN IN NUMBER DEFAULT 0
4328 ,p_FREE_ACCOM_RFI_PTD IN NUMBER DEFAULT 0
4329 ,p_FREE_ACCOM_RFI_YTD IN NUMBER DEFAULT 0
4330 ,p_FREE_SERV_NRFI_CMTD IN NUMBER DEFAULT 0
4331 ,p_FREE_SERV_NRFI_CYTD IN NUMBER DEFAULT 0
4332 ,p_FREE_SERV_NRFI_RUN IN NUMBER DEFAULT 0
4333 ,p_FREE_SERV_NRFI_PTD IN NUMBER DEFAULT 0
4334 ,p_FREE_SERV_NRFI_YTD IN NUMBER DEFAULT 0
4335 ,p_FREE_SERV_RFI_CMTD IN NUMBER DEFAULT 0
4336 ,p_FREE_SERV_RFI_CYTD IN NUMBER DEFAULT 0
4337 ,p_FREE_SERV_RFI_RUN IN NUMBER DEFAULT 0
4338 ,p_FREE_SERV_RFI_PTD IN NUMBER DEFAULT 0
4339 ,p_FREE_SERV_RFI_YTD IN NUMBER DEFAULT 0
4340 ,p_IC_PYMNTS_NRFI_CMTD IN NUMBER DEFAULT 0
4341 ,p_IC_PYMNTS_NRFI_CYTD IN NUMBER DEFAULT 0
4342 ,p_IC_PYMNTS_NRFI_RUN IN NUMBER DEFAULT 0
4343 ,p_IC_PYMNTS_NRFI_PTD IN NUMBER DEFAULT 0
4344 ,p_IC_PYMNTS_NRFI_QTD IN NUMBER DEFAULT 0
4345 ,p_IC_PYMNTS_NRFI_YTD IN NUMBER DEFAULT 0
4346 ,p_IC_PYMNTS_RFI_CMTD IN NUMBER DEFAULT 0
4347 ,p_IC_PYMNTS_RFI_CYTD IN NUMBER DEFAULT 0
4348 ,p_IC_PYMNTS_RFI_RUN IN NUMBER DEFAULT 0
4349 ,p_IC_PYMNTS_RFI_PTD IN NUMBER DEFAULT 0
4350 ,p_IC_PYMNTS_RFI_QTD IN NUMBER DEFAULT 0
4351 ,p_IC_PYMNTS_RFI_YTD IN NUMBER DEFAULT 0
4352 ,p_LB_PYMNTS_NRFI_CMTD IN NUMBER DEFAULT 0
4353 ,p_LB_PYMNTS_NRFI_CYTD IN NUMBER DEFAULT 0
4354 ,p_LB_PYMNTS_NRFI_RUN IN NUMBER DEFAULT 0
4355 ,p_LB_PYMNTS_NRFI_PTD IN NUMBER DEFAULT 0
4356 ,p_LB_PYMNTS_NRFI_QTD IN NUMBER DEFAULT 0
4357 ,p_LB_PYMNTS_NRFI_YTD IN NUMBER DEFAULT 0
4358 ,p_LB_PYMNTS_RFI_CMTD IN NUMBER DEFAULT 0
4359 ,p_LB_PYMNTS_RFI_CYTD IN NUMBER DEFAULT 0
4360 ,p_LB_PYMNTS_RFI_RUN IN NUMBER DEFAULT 0
4361 ,p_LB_PYMNTS_RFI_PTD IN NUMBER DEFAULT 0
4362 ,p_LB_PYMNTS_RFI_QTD IN NUMBER DEFAULT 0
4363 ,p_LB_PYMNTS_RFI_YTD IN NUMBER DEFAULT 0
4364 ) RETURN NUMBER
4365 AS
4366 l_Dum NUMBER := 1;
4367
4368 BEGIN
4369 -- Balances
4370 bal_CUR_PF_CMTD := p_CUR_PF_CMTD;
4371 bal_CUR_PF_CYTD := p_CUR_PF_CYTD;
4372 bal_CUR_PF_RUN := p_CUR_PF_RUN;
4373 bal_CUR_PF_PTD := p_CUR_PF_PTD;
4374 bal_CUR_PF_YTD := p_CUR_PF_YTD;
4375 bal_CUR_RA_CMTD := p_CUR_RA_CMTD;
4376 bal_CUR_RA_CYTD := p_CUR_RA_CYTD;
4377 bal_CUR_RA_RUN := p_CUR_RA_RUN;
4378 bal_CUR_RA_PTD := p_CUR_RA_PTD;
4379 bal_CUR_RA_YTD := p_CUR_RA_YTD;
4380 bal_DIR_DMD_RMN_ITD := p_DIR_DMD_RMN_ITD;
4381 bal_ENT_ALL_NRFI_CMTD := p_ENT_ALL_NRFI_CMTD;
4382 bal_ENT_ALL_NRFI_CYTD := p_ENT_ALL_NRFI_CYTD;
4383 bal_ENT_ALL_NRFI_RUN := p_ENT_ALL_NRFI_RUN;
4384 bal_ENT_ALL_NRFI_PTD := p_ENT_ALL_NRFI_PTD;
4385 bal_ENT_ALL_NRFI_YTD := p_ENT_ALL_NRFI_YTD;
4386 bal_ENT_ALL_RFI_CMTD := p_ENT_ALL_RFI_CMTD;
4387 bal_ENT_ALL_RFI_CYTD := p_ENT_ALL_RFI_CYTD;
4388 bal_ENT_ALL_RFI_RUN := p_ENT_ALL_RFI_RUN;
4389 bal_ENT_ALL_RFI_PTD := p_ENT_ALL_RFI_PTD;
4390 bal_ENT_ALL_RFI_YTD := p_ENT_ALL_RFI_YTD;
4391 bal_EXC_ARR_PEN_ITD := p_EXC_ARR_PEN_ITD;
4392 bal_EXC_ARR_PEN_PTD := p_EXC_ARR_PEN_PTD;
4393 bal_EXC_ARR_PEN_YTD := p_EXC_ARR_PEN_YTD;
4394 bal_EXC_ARR_RA_ITD := p_EXC_ARR_RA_ITD;
4395 bal_EXC_ARR_RA_PTD := p_EXC_ARR_RA_PTD;
4396 bal_EXC_ARR_RA_YTD := p_EXC_ARR_RA_YTD;
4397 bal_FREE_ACCOM_NRFI_CMTD := p_FREE_ACCOM_NRFI_CMTD;
4398 bal_FREE_ACCOM_NRFI_CYTD := p_FREE_ACCOM_NRFI_CYTD;
4399 bal_FREE_ACCOM_NRFI_RUN := p_FREE_ACCOM_NRFI_RUN;
4400 bal_FREE_ACCOM_NRFI_PTD := p_FREE_ACCOM_NRFI_PTD;
4401 bal_FREE_ACCOM_NRFI_YTD := p_FREE_ACCOM_NRFI_YTD;
4402 bal_FREE_ACCOM_RFI_CMTD := p_FREE_ACCOM_RFI_CMTD;
4403 bal_FREE_ACCOM_RFI_CYTD := p_FREE_ACCOM_RFI_CYTD;
4404 bal_FREE_ACCOM_RFI_RUN := p_FREE_ACCOM_RFI_RUN;
4405 bal_FREE_ACCOM_RFI_PTD := p_FREE_ACCOM_RFI_PTD;
4406 bal_FREE_ACCOM_RFI_YTD := p_FREE_ACCOM_RFI_YTD;
4407 bal_FREE_SERV_NRFI_CMTD := p_FREE_SERV_NRFI_CMTD;
4408 bal_FREE_SERV_NRFI_CYTD := p_FREE_SERV_NRFI_CYTD;
4409 bal_FREE_SERV_NRFI_RUN := p_FREE_SERV_NRFI_RUN;
4410 bal_FREE_SERV_NRFI_PTD := p_FREE_SERV_NRFI_PTD;
4411 bal_FREE_SERV_NRFI_YTD := p_FREE_SERV_NRFI_YTD;
4412 bal_FREE_SERV_RFI_CMTD := p_FREE_SERV_RFI_CMTD;
4413 bal_FREE_SERV_RFI_CYTD := p_FREE_SERV_RFI_CYTD;
4414 bal_FREE_SERV_RFI_RUN := p_FREE_SERV_RFI_RUN;
4415 bal_FREE_SERV_RFI_PTD := p_FREE_SERV_RFI_PTD;
4416 bal_FREE_SERV_RFI_YTD := p_FREE_SERV_RFI_YTD;
4417 bal_IC_PYMNTS_NRFI_CMTD := p_IC_PYMNTS_NRFI_CMTD;
4418 bal_IC_PYMNTS_NRFI_CYTD := p_IC_PYMNTS_NRFI_CYTD;
4419 bal_IC_PYMNTS_NRFI_RUN := p_IC_PYMNTS_NRFI_RUN;
4420 bal_IC_PYMNTS_NRFI_PTD := p_IC_PYMNTS_NRFI_PTD;
4421 bal_IC_PYMNTS_NRFI_QTD := p_IC_PYMNTS_NRFI_QTD;
4422 bal_IC_PYMNTS_NRFI_YTD := p_IC_PYMNTS_NRFI_YTD;
4423 bal_IC_PYMNTS_RFI_CMTD := p_IC_PYMNTS_RFI_CMTD;
4424 bal_IC_PYMNTS_RFI_CYTD := p_IC_PYMNTS_RFI_CYTD;
4425 bal_IC_PYMNTS_RFI_RUN := p_IC_PYMNTS_RFI_RUN;
4426 bal_IC_PYMNTS_RFI_PTD := p_IC_PYMNTS_RFI_PTD;
4427 bal_IC_PYMNTS_RFI_QTD := p_IC_PYMNTS_RFI_QTD;
4428 bal_IC_PYMNTS_RFI_YTD := p_IC_PYMNTS_RFI_YTD;
4429 bal_LB_PYMNTS_NRFI_CMTD := p_LB_PYMNTS_NRFI_CMTD;
4430 bal_LB_PYMNTS_NRFI_CYTD := p_LB_PYMNTS_NRFI_CYTD;
4431 bal_LB_PYMNTS_NRFI_RUN := p_LB_PYMNTS_NRFI_RUN;
4432 bal_LB_PYMNTS_NRFI_PTD := p_LB_PYMNTS_NRFI_PTD;
4433 bal_LB_PYMNTS_NRFI_QTD := p_LB_PYMNTS_NRFI_QTD;
4434 bal_LB_PYMNTS_NRFI_YTD := p_LB_PYMNTS_NRFI_YTD;
4435 bal_LB_PYMNTS_RFI_CMTD := p_LB_PYMNTS_RFI_CMTD;
4436 bal_LB_PYMNTS_RFI_CYTD := p_LB_PYMNTS_RFI_CYTD;
4437 bal_LB_PYMNTS_RFI_RUN := p_LB_PYMNTS_RFI_RUN;
4438 bal_LB_PYMNTS_RFI_PTD := p_LB_PYMNTS_RFI_PTD;
4439 bal_LB_PYMNTS_RFI_QTD := p_LB_PYMNTS_RFI_QTD;
4440 bal_LB_PYMNTS_RFI_YTD := p_LB_PYMNTS_RFI_YTD;
4441
4442 RETURN l_Dum;
4443 EXCEPTION
4444 WHEN OTHERS THEN
4445 hr_utility.set_message(801, 'ZaTxBal3_01032004: '||TO_CHAR(SQLCODE));
4446 hr_utility.raise_error;
4447 END ZaTxBal3_01032004;
4448 -------------------------------------------------------------------------------
4449 -- ZaTxBal4_01032004 --
4450 -- Tax module supporting function --
4451 -------------------------------------------------------------------------------
4452 FUNCTION ZaTxBal4_01032004(
4453 -- Balances
4454 p_LOW_LOANS_NRFI_CMTD IN NUMBER DEFAULT 0
4455 ,p_LOW_LOANS_NRFI_CYTD IN NUMBER DEFAULT 0
4456 ,p_LOW_LOANS_NRFI_RUN IN NUMBER DEFAULT 0
4457 ,p_LOW_LOANS_NRFI_PTD IN NUMBER DEFAULT 0
4458 ,p_LOW_LOANS_NRFI_YTD IN NUMBER DEFAULT 0
4459 ,p_LOW_LOANS_RFI_CMTD IN NUMBER DEFAULT 0
4460 ,p_LOW_LOANS_RFI_CYTD IN NUMBER DEFAULT 0
4461 ,p_LOW_LOANS_RFI_RUN IN NUMBER DEFAULT 0
4462 ,p_LOW_LOANS_RFI_PTD IN NUMBER DEFAULT 0
4463 ,p_LOW_LOANS_RFI_YTD IN NUMBER DEFAULT 0
4464 ,p_MLS_AND_VOUCH_NRFI_CMTD IN NUMBER DEFAULT 0
4465 ,p_MLS_AND_VOUCH_NRFI_CYTD IN NUMBER DEFAULT 0
4466 ,p_MLS_AND_VOUCH_NRFI_RUN IN NUMBER DEFAULT 0
4467 ,p_MLS_AND_VOUCH_NRFI_PTD IN NUMBER DEFAULT 0
4468 ,p_MLS_AND_VOUCH_NRFI_YTD IN NUMBER DEFAULT 0
4469 ,p_MLS_AND_VOUCH_RFI_CMTD IN NUMBER DEFAULT 0
4470 ,p_MLS_AND_VOUCH_RFI_CYTD IN NUMBER DEFAULT 0
4471 ,p_MLS_AND_VOUCH_RFI_RUN IN NUMBER DEFAULT 0
4472 ,p_MLS_AND_VOUCH_RFI_PTD IN NUMBER DEFAULT 0
4473 ,p_MLS_AND_VOUCH_RFI_YTD IN NUMBER DEFAULT 0
4474 ,p_MED_CONTR_CMTD IN NUMBER DEFAULT 0
4475 ,p_MED_CONTR_CYTD IN NUMBER DEFAULT 0
4476 ,p_MED_CONTR_RUN IN NUMBER DEFAULT 0
4477 ,p_MED_CONTR_PTD IN NUMBER DEFAULT 0
4478 ,p_MED_CONTR_YTD IN NUMBER DEFAULT 0
4479 ,p_MED_PAID_NRFI_CMTD IN NUMBER DEFAULT 0
4480 ,p_MED_PAID_NRFI_CYTD IN NUMBER DEFAULT 0
4481 ,p_MED_PAID_NRFI_RUN IN NUMBER DEFAULT 0
4482 ,p_MED_PAID_NRFI_PTD IN NUMBER DEFAULT 0
4483 ,p_MED_PAID_NRFI_YTD IN NUMBER DEFAULT 0
4484 ,p_MED_PAID_RFI_CMTD IN NUMBER DEFAULT 0
4485 ,p_MED_PAID_RFI_CYTD IN NUMBER DEFAULT 0
4486 ,p_MED_PAID_RFI_RUN IN NUMBER DEFAULT 0
4487 ,p_MED_PAID_RFI_PTD IN NUMBER DEFAULT 0
4488 ,p_MED_PAID_RFI_YTD IN NUMBER DEFAULT 0
4489 ,p_NET_PAY_RUN IN NUMBER DEFAULT 0
4490 ,p_NET_TXB_INC_CMTD IN NUMBER DEFAULT 0
4491 ,p_NRFI_TOT_PKG_CMTD IN NUMBER DEFAULT 0
4492 ,p_NRFI_TOT_PKG_CYTD IN NUMBER DEFAULT 0
4493 ,p_NRFI_TOT_PKG_PTD IN NUMBER DEFAULT 0
4494 ,p_NRFI_TOT_PKG_YTD IN NUMBER DEFAULT 0
4495 ,p_OTHER_TXB_ALL_NRFI_CMTD IN NUMBER DEFAULT 0
4496 ,p_OTHER_TXB_ALL_NRFI_CYTD IN NUMBER DEFAULT 0
4497 ,p_OTHER_TXB_ALL_NRFI_RUN IN NUMBER DEFAULT 0
4498 ,p_OTHER_TXB_ALL_NRFI_PTD IN NUMBER DEFAULT 0
4499 ,p_OTHER_TXB_ALL_NRFI_YTD IN NUMBER DEFAULT 0
4500 ,p_OTHER_TXB_ALL_RFI_CMTD IN NUMBER DEFAULT 0
4501 ,p_OTHER_TXB_ALL_RFI_CYTD IN NUMBER DEFAULT 0
4502 ,p_OTHER_TXB_ALL_RFI_RUN IN NUMBER DEFAULT 0
4503 ,p_OTHER_TXB_ALL_RFI_PTD IN NUMBER DEFAULT 0
4504 ,p_OTHER_TXB_ALL_RFI_YTD IN NUMBER DEFAULT 0
4505 ,p_OVTM_NRFI_CMTD IN NUMBER DEFAULT 0
4506 ,p_OVTM_NRFI_CYTD IN NUMBER DEFAULT 0
4507 ,p_OVTM_NRFI_RUN IN NUMBER DEFAULT 0
4508 ,p_OVTM_NRFI_PTD IN NUMBER DEFAULT 0
4509 ,p_OVTM_NRFI_YTD IN NUMBER DEFAULT 0
4510 ,p_OVTM_RFI_CMTD IN NUMBER DEFAULT 0
4511 ,p_OVTM_RFI_CYTD IN NUMBER DEFAULT 0
4512 ,p_OVTM_RFI_RUN IN NUMBER DEFAULT 0
4513 ,p_OVTM_RFI_PTD IN NUMBER DEFAULT 0
4514 ,p_OVTM_RFI_YTD IN NUMBER DEFAULT 0
4515 ,p_PAYE_YTD IN NUMBER DEFAULT 0
4516 ,p_PYM_DBT_NRFI_CMTD IN NUMBER DEFAULT 0
4517 ,p_PYM_DBT_NRFI_CYTD IN NUMBER DEFAULT 0
4518 ,p_PYM_DBT_NRFI_RUN IN NUMBER DEFAULT 0
4519 ,p_PYM_DBT_NRFI_PTD IN NUMBER DEFAULT 0
4520 ,p_PYM_DBT_NRFI_YTD IN NUMBER DEFAULT 0
4521 ,p_PYM_DBT_RFI_CMTD IN NUMBER DEFAULT 0
4522 ,p_PYM_DBT_RFI_CYTD IN NUMBER DEFAULT 0
4523 ,p_PYM_DBT_RFI_RUN IN NUMBER DEFAULT 0
4524 ,p_PYM_DBT_RFI_PTD IN NUMBER DEFAULT 0
4525 ,p_PYM_DBT_RFI_YTD IN NUMBER DEFAULT 0
4526 ,p_PO_NRFI_CMTD IN NUMBER DEFAULT 0
4527 ,p_PO_NRFI_RUN IN NUMBER DEFAULT 0
4528 ,p_PO_NRFI_PTD IN NUMBER DEFAULT 0
4529 ,p_PO_NRFI_YTD IN NUMBER DEFAULT 0
4530 ,p_PO_RFI_CMTD IN NUMBER DEFAULT 0
4531 ,p_PO_RFI_RUN IN NUMBER DEFAULT 0
4532 ,p_PO_RFI_PTD IN NUMBER DEFAULT 0
4533 ,p_PO_RFI_YTD IN NUMBER DEFAULT 0
4534 ) RETURN NUMBER
4535 AS
4536 l_Dum NUMBER := 1;
4537
4538 BEGIN
4539 -- Balances
4540 bal_LOW_LOANS_NRFI_CMTD := p_LOW_LOANS_NRFI_CMTD;
4541 bal_LOW_LOANS_NRFI_CYTD := p_LOW_LOANS_NRFI_CYTD;
4542 bal_LOW_LOANS_NRFI_RUN := p_LOW_LOANS_NRFI_RUN;
4543 bal_LOW_LOANS_NRFI_PTD := p_LOW_LOANS_NRFI_PTD;
4544 bal_LOW_LOANS_NRFI_YTD := p_LOW_LOANS_NRFI_YTD;
4545 bal_LOW_LOANS_RFI_CMTD := p_LOW_LOANS_RFI_CMTD;
4546 bal_LOW_LOANS_RFI_CYTD := p_LOW_LOANS_RFI_CYTD;
4547 bal_LOW_LOANS_RFI_RUN := p_LOW_LOANS_RFI_RUN;
4548 bal_LOW_LOANS_RFI_PTD := p_LOW_LOANS_RFI_PTD;
4549 bal_LOW_LOANS_RFI_YTD := p_LOW_LOANS_RFI_YTD;
4550 bal_MLS_AND_VOUCH_NRFI_CMTD := p_MLS_AND_VOUCH_NRFI_CMTD;
4551 bal_MLS_AND_VOUCH_NRFI_CYTD := p_MLS_AND_VOUCH_NRFI_CYTD;
4552 bal_MLS_AND_VOUCH_NRFI_RUN := p_MLS_AND_VOUCH_NRFI_RUN;
4553 bal_MLS_AND_VOUCH_NRFI_PTD := p_MLS_AND_VOUCH_NRFI_PTD;
4554 bal_MLS_AND_VOUCH_NRFI_YTD := p_MLS_AND_VOUCH_NRFI_YTD;
4555 bal_MLS_AND_VOUCH_RFI_CMTD := p_MLS_AND_VOUCH_RFI_CMTD;
4556 bal_MLS_AND_VOUCH_RFI_CYTD := p_MLS_AND_VOUCH_RFI_CYTD;
4557 bal_MLS_AND_VOUCH_RFI_RUN := p_MLS_AND_VOUCH_RFI_RUN;
4558 bal_MLS_AND_VOUCH_RFI_PTD := p_MLS_AND_VOUCH_RFI_PTD;
4559 bal_MLS_AND_VOUCH_RFI_YTD := p_MLS_AND_VOUCH_RFI_YTD;
4560 bal_MED_CONTR_CMTD := p_MED_CONTR_CMTD;
4561 bal_MED_CONTR_CYTD := p_MED_CONTR_CYTD;
4562 bal_MED_CONTR_RUN := p_MED_CONTR_RUN;
4563 bal_MED_CONTR_PTD := p_MED_CONTR_PTD;
4564 bal_MED_CONTR_YTD := p_MED_CONTR_YTD;
4565 bal_MED_PAID_NRFI_CMTD := p_MED_PAID_NRFI_CMTD;
4566 bal_MED_PAID_NRFI_CYTD := p_MED_PAID_NRFI_CYTD;
4567 bal_MED_PAID_NRFI_RUN := p_MED_PAID_NRFI_RUN;
4568 bal_MED_PAID_NRFI_PTD := p_MED_PAID_NRFI_PTD;
4569 bal_MED_PAID_NRFI_YTD := p_MED_PAID_NRFI_YTD;
4570 bal_MED_PAID_RFI_CMTD := p_MED_PAID_RFI_CMTD;
4571 bal_MED_PAID_RFI_CYTD := p_MED_PAID_RFI_CYTD;
4572 bal_MED_PAID_RFI_RUN := p_MED_PAID_RFI_RUN;
4573 bal_MED_PAID_RFI_PTD := p_MED_PAID_RFI_PTD;
4574 bal_MED_PAID_RFI_YTD := p_MED_PAID_RFI_YTD;
4575 bal_NET_PAY_RUN := p_NET_PAY_RUN;
4576 bal_NET_TXB_INC_CMTD := p_NET_TXB_INC_CMTD;
4577 bal_NRFI_TOT_PKG_CMTD := p_NRFI_TOT_PKG_CMTD;
4578 bal_NRFI_TOT_PKG_CYTD := p_NRFI_TOT_PKG_CYTD;
4579 bal_NRFI_TOT_PKG_PTD := p_NRFI_TOT_PKG_PTD;
4580 bal_NRFI_TOT_PKG_YTD := p_NRFI_TOT_PKG_YTD;
4581 bal_OTHER_TXB_ALL_NRFI_CMTD := p_OTHER_TXB_ALL_NRFI_CMTD;
4582 bal_OTHER_TXB_ALL_NRFI_CYTD := p_OTHER_TXB_ALL_NRFI_CYTD;
4583 bal_OTHER_TXB_ALL_NRFI_RUN := p_OTHER_TXB_ALL_NRFI_RUN;
4584 bal_OTHER_TXB_ALL_NRFI_PTD := p_OTHER_TXB_ALL_NRFI_PTD;
4585 bal_OTHER_TXB_ALL_NRFI_YTD := p_OTHER_TXB_ALL_NRFI_YTD;
4586 bal_OTHER_TXB_ALL_RFI_CMTD := p_OTHER_TXB_ALL_RFI_CMTD;
4587 bal_OTHER_TXB_ALL_RFI_CYTD := p_OTHER_TXB_ALL_RFI_CYTD;
4588 bal_OTHER_TXB_ALL_RFI_RUN := p_OTHER_TXB_ALL_RFI_RUN;
4589 bal_OTHER_TXB_ALL_RFI_PTD := p_OTHER_TXB_ALL_RFI_PTD;
4590 bal_OTHER_TXB_ALL_RFI_YTD := p_OTHER_TXB_ALL_RFI_YTD;
4591 bal_OVTM_NRFI_CMTD := p_OVTM_NRFI_CMTD;
4592 bal_OVTM_NRFI_CYTD := p_OVTM_NRFI_CYTD;
4593 bal_OVTM_NRFI_RUN := p_OVTM_NRFI_RUN;
4594 bal_OVTM_NRFI_PTD := p_OVTM_NRFI_PTD;
4595 bal_OVTM_NRFI_YTD := p_OVTM_NRFI_YTD;
4596 bal_OVTM_RFI_CMTD := p_OVTM_RFI_CMTD;
4597 bal_OVTM_RFI_CYTD := p_OVTM_RFI_CYTD;
4598 bal_OVTM_RFI_RUN := p_OVTM_RFI_RUN;
4599 bal_OVTM_RFI_PTD := p_OVTM_RFI_PTD;
4600 bal_OVTM_RFI_YTD := p_OVTM_RFI_YTD;
4601 bal_PAYE_YTD := p_PAYE_YTD;
4602 bal_PYM_DBT_NRFI_CMTD := p_PYM_DBT_NRFI_CMTD;
4603 bal_PYM_DBT_NRFI_CYTD := p_PYM_DBT_NRFI_CYTD;
4604 bal_PYM_DBT_NRFI_RUN := p_PYM_DBT_NRFI_RUN;
4605 bal_PYM_DBT_NRFI_PTD := p_PYM_DBT_NRFI_PTD;
4606 bal_PYM_DBT_NRFI_YTD := p_PYM_DBT_NRFI_YTD;
4607 bal_PYM_DBT_RFI_CMTD := p_PYM_DBT_RFI_CMTD;
4608 bal_PYM_DBT_RFI_CYTD := p_PYM_DBT_RFI_CYTD;
4609 bal_PYM_DBT_RFI_RUN := p_PYM_DBT_RFI_RUN;
4610 bal_PYM_DBT_RFI_PTD := p_PYM_DBT_RFI_PTD;
4611 bal_PYM_DBT_RFI_YTD := p_PYM_DBT_RFI_YTD;
4612 bal_PO_NRFI_CMTD := p_PO_NRFI_CMTD;
4613 bal_PO_NRFI_RUN := p_PO_NRFI_RUN;
4614 bal_PO_NRFI_PTD := p_PO_NRFI_PTD;
4615 bal_PO_NRFI_YTD := p_PO_NRFI_YTD;
4616 bal_PO_RFI_CMTD := p_PO_RFI_CMTD;
4617 bal_PO_RFI_RUN := p_PO_RFI_RUN;
4618 bal_PO_RFI_PTD := p_PO_RFI_PTD;
4619 bal_PO_RFI_YTD := p_PO_RFI_YTD;
4620
4621 RETURN l_Dum;
4622 EXCEPTION
4623 WHEN OTHERS THEN
4624 hr_utility.set_message(801, 'ZaTxBal4_01032004: '||TO_CHAR(SQLCODE));
4625 hr_utility.raise_error;
4626 END ZaTxBal4_01032004;
4627 -------------------------------------------------------------------------------
4628 -- ZaTxBal5_01032004 --
4629 -- Tax module supporting function --
4630 -------------------------------------------------------------------------------
4631 FUNCTION ZaTxBal5_01032004(
4632 -- Balances
4633 p_PRCH_ANU_TXB_NRFI_CMTD IN NUMBER DEFAULT 0
4634 ,p_PRCH_ANU_TXB_NRFI_RUN IN NUMBER DEFAULT 0
4635 ,p_PRCH_ANU_TXB_NRFI_PTD IN NUMBER DEFAULT 0
4636 ,p_PRCH_ANU_TXB_NRFI_YTD IN NUMBER DEFAULT 0
4637 ,p_PRCH_ANU_TXB_RFI_CMTD IN NUMBER DEFAULT 0
4638 ,p_PRCH_ANU_TXB_RFI_RUN IN NUMBER DEFAULT 0
4639 ,p_PRCH_ANU_TXB_RFI_PTD IN NUMBER DEFAULT 0
4640 ,p_PRCH_ANU_TXB_RFI_YTD IN NUMBER DEFAULT 0
4641 ,p_RES_TRD_NRFI_CMTD IN NUMBER DEFAULT 0
4642 ,p_RES_TRD_NRFI_CYTD IN NUMBER DEFAULT 0
4643 ,p_RES_TRD_NRFI_RUN IN NUMBER DEFAULT 0
4644 ,p_RES_TRD_NRFI_PTD IN NUMBER DEFAULT 0
4645 ,p_RES_TRD_NRFI_YTD IN NUMBER DEFAULT 0
4646 ,p_RES_TRD_RFI_CMTD IN NUMBER DEFAULT 0
4647 ,p_RES_TRD_RFI_CYTD IN NUMBER DEFAULT 0
4648 ,p_RES_TRD_RFI_RUN IN NUMBER DEFAULT 0
4649 ,p_RES_TRD_RFI_PTD IN NUMBER DEFAULT 0
4650 ,p_RES_TRD_RFI_YTD IN NUMBER DEFAULT 0
4651 ,p_RFI_TOT_PKG_CMTD IN NUMBER DEFAULT 0
4652 ,p_RFI_TOT_PKG_CYTD IN NUMBER DEFAULT 0
4653 ,p_RFI_TOT_PKG_PTD IN NUMBER DEFAULT 0
4654 ,p_RFI_TOT_PKG_YTD IN NUMBER DEFAULT 0
4655 ,p_RGT_AST_NRFI_CMTD IN NUMBER DEFAULT 0
4656 ,p_RGT_AST_NRFI_CYTD IN NUMBER DEFAULT 0
4657 ,p_RGT_AST_NRFI_RUN IN NUMBER DEFAULT 0
4658 ,p_RGT_AST_NRFI_PTD IN NUMBER DEFAULT 0
4659 ,p_RGT_AST_NRFI_YTD IN NUMBER DEFAULT 0
4660 ,p_RGT_AST_RFI_CMTD IN NUMBER DEFAULT 0
4661 ,p_RGT_AST_RFI_CYTD IN NUMBER DEFAULT 0
4662 ,p_RGT_AST_RFI_RUN IN NUMBER DEFAULT 0
4663 ,p_RGT_AST_RFI_PTD IN NUMBER DEFAULT 0
4664 ,p_RGT_AST_RFI_YTD IN NUMBER DEFAULT 0
4665 ,p_SITE_YTD IN NUMBER DEFAULT 0
4666 ,p_TAX_YTD IN NUMBER DEFAULT 0
4667 ,p_TX_ON_AB_PTD IN NUMBER DEFAULT 0
4668 ,p_TX_ON_AB_YTD IN NUMBER DEFAULT 0
4669 ,p_TX_ON_AP_RUN IN NUMBER DEFAULT 0
4670 ,p_TX_ON_AP_PTD IN NUMBER DEFAULT 0
4671 ,p_TX_ON_AP_YTD IN NUMBER DEFAULT 0
4672 ,p_TX_ON_BP_PTD IN NUMBER DEFAULT 0
4673 ,p_TX_ON_BP_YTD IN NUMBER DEFAULT 0
4674 ,p_TX_ON_TA_PTD IN NUMBER DEFAULT 0
4675 ,p_TX_ON_TA_YTD IN NUMBER DEFAULT 0
4676 ,p_TX_ON_DR_PTD IN NUMBER DEFAULT 0
4677 ,p_TX_ON_DR_YTD IN NUMBER DEFAULT 0
4678 ,p_TX_ON_FB_PTD IN NUMBER DEFAULT 0
4679 ,p_TX_ON_FB_YTD IN NUMBER DEFAULT 0
4680 ,p_TX_ON_NI_PTD IN NUMBER DEFAULT 0
4681 ,p_TX_ON_NI_YTD IN NUMBER DEFAULT 0
4682 ,p_TX_ON_PO_PTD IN NUMBER DEFAULT 0
4683 ,p_TX_ON_PO_YTD IN NUMBER DEFAULT 0
4684 ,p_TXB_AP_NRFI_CMTD IN NUMBER DEFAULT 0
4685 ,p_TXB_AP_NRFI_RUN IN NUMBER DEFAULT 0
4686 ,p_TXB_AP_NRFI_PTD IN NUMBER DEFAULT 0
4687 ,p_TXB_AP_NRFI_YTD IN NUMBER DEFAULT 0
4688 ,p_TXB_AP_RFI_CMTD IN NUMBER DEFAULT 0
4689 ,p_TXB_AP_RFI_RUN IN NUMBER DEFAULT 0
4690 ,p_TXB_AP_RFI_PTD IN NUMBER DEFAULT 0
4691 ,p_TXB_AP_RFI_YTD IN NUMBER DEFAULT 0
4692 ,p_TXB_INC_NRFI_CMTD IN NUMBER DEFAULT 0
4693 ,p_TXB_INC_NRFI_CYTD IN NUMBER DEFAULT 0
4694 ,p_TXB_INC_NRFI_RUN IN NUMBER DEFAULT 0
4695 ,p_TXB_INC_NRFI_PTD IN NUMBER DEFAULT 0
4696 ,p_TXB_INC_NRFI_YTD IN NUMBER DEFAULT 0
4697 ,p_TXB_INC_RFI_CMTD IN NUMBER DEFAULT 0
4698 ,p_TXB_INC_RFI_CYTD IN NUMBER DEFAULT 0
4699 ,p_TXB_INC_RFI_RUN IN NUMBER DEFAULT 0
4700 ,p_TXB_INC_RFI_PTD IN NUMBER DEFAULT 0
4701 ,p_TXB_INC_RFI_YTD IN NUMBER DEFAULT 0
4702 ,p_TXB_PKG_COMP_CMTD IN NUMBER DEFAULT 0
4703 ,p_TXB_PKG_COMP_CYTD IN NUMBER DEFAULT 0
4704 ,p_TXB_PKG_COMP_RUN IN NUMBER DEFAULT 0
4705 ,p_TXB_PKG_COMP_PTD IN NUMBER DEFAULT 0
4706 ,p_TXB_PKG_COMP_YTD IN NUMBER DEFAULT 0
4707 ,p_TXB_PEN_NRFI_CMTD IN NUMBER DEFAULT 0
4708 ,p_TXB_PEN_NRFI_CYTD IN NUMBER DEFAULT 0
4709 ,p_TXB_PEN_NRFI_RUN IN NUMBER DEFAULT 0
4710 ,p_TXB_PEN_NRFI_PTD IN NUMBER DEFAULT 0
4711 ,p_TXB_PEN_NRFI_YTD IN NUMBER DEFAULT 0
4712 ,p_TXB_PEN_RFI_CMTD IN NUMBER DEFAULT 0
4713 ,p_TXB_PEN_RFI_CYTD IN NUMBER DEFAULT 0
4714 ,p_TXB_PEN_RFI_RUN IN NUMBER DEFAULT 0
4715 ,p_TXB_PEN_RFI_PTD IN NUMBER DEFAULT 0
4716 ,p_TXB_PEN_RFI_YTD IN NUMBER DEFAULT 0
4717 ) RETURN NUMBER
4718 AS
4719 l_Dum NUMBER := 1;
4720
4721 BEGIN
4722 -- Balances
4723
4724 bal_PRCH_ANU_TXB_NRFI_CMTD := p_PRCH_ANU_TXB_NRFI_CMTD;
4725 bal_PRCH_ANU_TXB_NRFI_RUN := p_PRCH_ANU_TXB_NRFI_RUN;
4726 bal_PRCH_ANU_TXB_NRFI_PTD := p_PRCH_ANU_TXB_NRFI_PTD;
4727 bal_PRCH_ANU_TXB_NRFI_YTD := p_PRCH_ANU_TXB_NRFI_YTD;
4728 bal_PRCH_ANU_TXB_RFI_CMTD := p_PRCH_ANU_TXB_RFI_CMTD;
4729 bal_PRCH_ANU_TXB_RFI_RUN := p_PRCH_ANU_TXB_RFI_RUN;
4730 bal_PRCH_ANU_TXB_RFI_PTD := p_PRCH_ANU_TXB_RFI_PTD;
4731 bal_PRCH_ANU_TXB_RFI_YTD := p_PRCH_ANU_TXB_RFI_YTD;
4732 bal_RES_TRD_NRFI_CMTD := p_RES_TRD_NRFI_CMTD;
4733 bal_RES_TRD_NRFI_CYTD := p_RES_TRD_NRFI_CYTD;
4734 bal_RES_TRD_NRFI_RUN := p_RES_TRD_NRFI_RUN;
4735 bal_RES_TRD_NRFI_PTD := p_RES_TRD_NRFI_PTD;
4736 bal_RES_TRD_NRFI_YTD := p_RES_TRD_NRFI_YTD;
4737 bal_RES_TRD_RFI_CMTD := p_RES_TRD_RFI_CMTD;
4738 bal_RES_TRD_RFI_CYTD := p_RES_TRD_RFI_CYTD;
4739 bal_RES_TRD_RFI_RUN := p_RES_TRD_RFI_RUN;
4740 bal_RES_TRD_RFI_PTD := p_RES_TRD_RFI_PTD;
4741 bal_RES_TRD_RFI_YTD := p_RES_TRD_RFI_YTD;
4742 bal_RFI_TOT_PKG_CMTD := p_RFI_TOT_PKG_CMTD;
4743 bal_RFI_TOT_PKG_CYTD := p_RFI_TOT_PKG_CYTD;
4744 bal_RFI_TOT_PKG_PTD := p_RFI_TOT_PKG_PTD;
4745 bal_RFI_TOT_PKG_YTD := p_RFI_TOT_PKG_YTD;
4746 bal_RGT_AST_NRFI_CMTD := p_RGT_AST_NRFI_CMTD;
4747 bal_RGT_AST_NRFI_CYTD := p_RGT_AST_NRFI_CYTD;
4748 bal_RGT_AST_NRFI_RUN := p_RGT_AST_NRFI_RUN;
4749 bal_RGT_AST_NRFI_PTD := p_RGT_AST_NRFI_PTD;
4750 bal_RGT_AST_NRFI_YTD := p_RGT_AST_NRFI_YTD;
4751 bal_RGT_AST_RFI_CMTD := p_RGT_AST_RFI_CMTD;
4752 bal_RGT_AST_RFI_CYTD := p_RGT_AST_RFI_CYTD;
4753 bal_RGT_AST_RFI_RUN := p_RGT_AST_RFI_RUN;
4754 bal_RGT_AST_RFI_PTD := p_RGT_AST_RFI_PTD;
4755 bal_RGT_AST_RFI_YTD := p_RGT_AST_RFI_YTD;
4756 bal_SITE_YTD := p_SITE_YTD;
4757 bal_TAX_YTD := p_TAX_YTD;
4758 bal_TX_ON_AB_PTD := p_TX_ON_AB_PTD;
4759 bal_TX_ON_AB_YTD := p_TX_ON_AB_YTD;
4760 bal_TX_ON_AP_RUN := p_TX_ON_AP_RUN;
4761 bal_TX_ON_AP_PTD := p_TX_ON_AP_PTD;
4762 bal_TX_ON_AP_YTD := p_TX_ON_AP_YTD;
4763 bal_TX_ON_BP_PTD := p_TX_ON_BP_PTD;
4764 bal_TX_ON_BP_YTD := p_TX_ON_BP_YTD;
4765 bal_TX_ON_TA_PTD := p_TX_ON_TA_PTD;
4766 bal_TX_ON_TA_YTD := p_TX_ON_TA_YTD;
4767 bal_TX_ON_DR_PTD := p_TX_ON_DR_PTD;
4768 bal_TX_ON_DR_YTD := p_TX_ON_DR_YTD;
4769 bal_TX_ON_FB_PTD := p_TX_ON_FB_PTD;
4770 bal_TX_ON_FB_YTD := p_TX_ON_FB_YTD;
4771 bal_TX_ON_NI_PTD := p_TX_ON_NI_PTD;
4772 bal_TX_ON_NI_YTD := p_TX_ON_NI_YTD;
4773 bal_TX_ON_PO_PTD := p_TX_ON_PO_PTD;
4774 bal_TX_ON_PO_YTD := p_TX_ON_PO_YTD;
4775 bal_TXB_AP_NRFI_CMTD := p_TXB_AP_NRFI_CMTD;
4776 bal_TXB_AP_NRFI_RUN := p_TXB_AP_NRFI_RUN;
4777 bal_TXB_AP_NRFI_PTD := p_TXB_AP_NRFI_PTD;
4778 bal_TXB_AP_NRFI_YTD := p_TXB_AP_NRFI_YTD;
4779 bal_TXB_AP_RFI_CMTD := p_TXB_AP_RFI_CMTD;
4780 bal_TXB_AP_RFI_RUN := p_TXB_AP_RFI_RUN;
4781 bal_TXB_AP_RFI_PTD := p_TXB_AP_RFI_PTD;
4782 bal_TXB_AP_RFI_YTD := p_TXB_AP_RFI_YTD;
4783 bal_TXB_INC_NRFI_CMTD := p_TXB_INC_NRFI_CMTD;
4784 bal_TXB_INC_NRFI_CYTD := p_TXB_INC_NRFI_CYTD;
4785 bal_TXB_INC_NRFI_RUN := p_TXB_INC_NRFI_RUN;
4786 bal_TXB_INC_NRFI_PTD := p_TXB_INC_NRFI_PTD;
4787 bal_TXB_INC_NRFI_YTD := p_TXB_INC_NRFI_YTD;
4788 bal_TXB_INC_RFI_CMTD := p_TXB_INC_RFI_CMTD;
4789 bal_TXB_INC_RFI_CYTD := p_TXB_INC_RFI_CYTD;
4790 bal_TXB_INC_RFI_RUN := p_TXB_INC_RFI_RUN;
4791 bal_TXB_INC_RFI_PTD := p_TXB_INC_RFI_PTD;
4792 bal_TXB_INC_RFI_YTD := p_TXB_INC_RFI_YTD;
4793 bal_TXB_PKG_COMP_CMTD := p_TXB_PKG_COMP_CMTD;
4794 bal_TXB_PKG_COMP_CYTD := p_TXB_PKG_COMP_CYTD;
4795 bal_TXB_PKG_COMP_RUN := p_TXB_PKG_COMP_RUN;
4796 bal_TXB_PKG_COMP_PTD := p_TXB_PKG_COMP_PTD;
4797 bal_TXB_PKG_COMP_YTD := p_TXB_PKG_COMP_YTD;
4798 bal_TXB_PEN_NRFI_CMTD := p_TXB_PEN_NRFI_CMTD;
4799 bal_TXB_PEN_NRFI_CYTD := p_TXB_PEN_NRFI_CYTD;
4800 bal_TXB_PEN_NRFI_RUN := p_TXB_PEN_NRFI_RUN;
4801 bal_TXB_PEN_NRFI_PTD := p_TXB_PEN_NRFI_PTD;
4802 bal_TXB_PEN_NRFI_YTD := p_TXB_PEN_NRFI_YTD;
4803 bal_TXB_PEN_RFI_CMTD := p_TXB_PEN_RFI_CMTD;
4804 bal_TXB_PEN_RFI_CYTD := p_TXB_PEN_RFI_CYTD;
4805 bal_TXB_PEN_RFI_RUN := p_TXB_PEN_RFI_RUN;
4806 bal_TXB_PEN_RFI_PTD := p_TXB_PEN_RFI_PTD;
4807 bal_TXB_PEN_RFI_YTD := p_TXB_PEN_RFI_YTD;
4808 RETURN l_Dum;
4809 EXCEPTION
4810 WHEN OTHERS THEN
4811 hr_utility.set_message(801, 'ZaTxBal5_01032004: '||TO_CHAR(SQLCODE));
4812 hr_utility.raise_error;
4813 END ZaTxBal5_01032004;
4814
4815 -------------------------------------------------------------------------------
4816 -- ZaTxBal6_01032004 --
4817 -- Tax module supporting function --
4818 -------------------------------------------------------------------------------
4819 FUNCTION ZaTxBal6_01032004(
4820 -- Balances
4821 p_TEL_ALL_NRFI_CMTD IN NUMBER DEFAULT 0
4822 ,p_TEL_ALL_NRFI_CYTD IN NUMBER DEFAULT 0
4823 ,p_TEL_ALL_NRFI_RUN IN NUMBER DEFAULT 0
4824 ,p_TEL_ALL_NRFI_PTD IN NUMBER DEFAULT 0
4825 ,p_TEL_ALL_NRFI_YTD IN NUMBER DEFAULT 0
4826 ,p_TEL_ALL_RFI_CMTD IN NUMBER DEFAULT 0
4827 ,p_TEL_ALL_RFI_CYTD IN NUMBER DEFAULT 0
4828 ,p_TEL_ALL_RFI_RUN IN NUMBER DEFAULT 0
4829 ,p_TEL_ALL_RFI_PTD IN NUMBER DEFAULT 0
4830 ,p_TEL_ALL_RFI_YTD IN NUMBER DEFAULT 0
4831 ,p_TOOL_ALL_NRFI_CMTD IN NUMBER DEFAULT 0
4832 ,p_TOOL_ALL_NRFI_CYTD IN NUMBER DEFAULT 0
4833 ,p_TOOL_ALL_NRFI_RUN IN NUMBER DEFAULT 0
4834 ,p_TOOL_ALL_NRFI_PTD IN NUMBER DEFAULT 0
4835 ,p_TOOL_ALL_NRFI_YTD IN NUMBER DEFAULT 0
4836 ,p_TOOL_ALL_RFI_CMTD IN NUMBER DEFAULT 0
4837 ,p_TOOL_ALL_RFI_CYTD IN NUMBER DEFAULT 0
4838 ,p_TOOL_ALL_RFI_RUN IN NUMBER DEFAULT 0
4839 ,p_TOOL_ALL_RFI_PTD IN NUMBER DEFAULT 0
4840 ,p_TOOL_ALL_RFI_YTD IN NUMBER DEFAULT 0
4841 ,p_TOT_INC_PTD IN NUMBER DEFAULT 0
4842 ,p_TOT_INC_YTD IN NUMBER DEFAULT 0
4843 ,p_TOT_NRFI_AN_INC_CMTD IN NUMBER DEFAULT 0
4844 ,p_TOT_NRFI_AN_INC_CYTD IN NUMBER DEFAULT 0
4845 ,p_TOT_NRFI_AN_INC_RUN IN NUMBER DEFAULT 0
4846 ,p_TOT_NRFI_AN_INC_PTD IN NUMBER DEFAULT 0
4847 ,p_TOT_NRFI_AN_INC_YTD IN NUMBER DEFAULT 0
4848 ,p_TOT_NRFI_INC_CMTD IN NUMBER DEFAULT 0
4849 ,p_TOT_NRFI_INC_CYTD IN NUMBER DEFAULT 0
4850 ,p_TOT_NRFI_INC_RUN IN NUMBER DEFAULT 0
4851 ,p_TOT_NRFI_INC_PTD IN NUMBER DEFAULT 0
4852 ,p_TOT_NRFI_INC_YTD IN NUMBER DEFAULT 0
4853 ,p_TOT_RFI_AN_INC_CMTD IN NUMBER DEFAULT 0
4854 ,p_TOT_RFI_AN_INC_CYTD IN NUMBER DEFAULT 0
4855 ,p_TOT_RFI_AN_INC_RUN IN NUMBER DEFAULT 0
4856 ,p_TOT_RFI_AN_INC_PTD IN NUMBER DEFAULT 0
4857 ,p_TOT_RFI_AN_INC_YTD IN NUMBER DEFAULT 0
4858 ,p_TOT_RFI_INC_CMTD IN NUMBER DEFAULT 0
4859 ,p_TOT_RFI_INC_CYTD IN NUMBER DEFAULT 0
4860 ,p_TOT_RFI_INC_RUN IN NUMBER DEFAULT 0
4861 ,p_TOT_RFI_INC_PTD IN NUMBER DEFAULT 0
4862 ,p_TOT_RFI_INC_YTD IN NUMBER DEFAULT 0
4863 ,p_TOT_SEA_WRK_DYS_WRK_YTD IN NUMBER DEFAULT 0
4864 ,p_TOT_TXB_INC_ITD IN NUMBER DEFAULT 0
4865 ,p_TA_NRFI_CMTD IN NUMBER DEFAULT 0
4866 ,p_TA_NRFI_CYTD IN NUMBER DEFAULT 0
4867 ,p_TA_NRFI_PTD IN NUMBER DEFAULT 0
4868 ,p_TA_NRFI_YTD IN NUMBER DEFAULT 0
4869 ,p_TA_RFI_CMTD IN NUMBER DEFAULT 0
4870 ,p_TA_RFI_CYTD IN NUMBER DEFAULT 0
4871 ,p_TA_RFI_PTD IN NUMBER DEFAULT 0
4872 ,p_TA_RFI_YTD IN NUMBER DEFAULT 0
4873 ,p_USE_VEH_NRFI_CMTD IN NUMBER DEFAULT 0
4874 ,p_USE_VEH_NRFI_CYTD IN NUMBER DEFAULT 0
4875 ,p_USE_VEH_NRFI_RUN IN NUMBER DEFAULT 0
4876 ,p_USE_VEH_NRFI_PTD IN NUMBER DEFAULT 0
4877 ,p_USE_VEH_NRFI_YTD IN NUMBER DEFAULT 0
4878 ,p_USE_VEH_RFI_CMTD IN NUMBER DEFAULT 0
4879 ,p_USE_VEH_RFI_CYTD IN NUMBER DEFAULT 0
4880 ,p_USE_VEH_RFI_RUN IN NUMBER DEFAULT 0
4881 ,p_USE_VEH_RFI_PTD IN NUMBER DEFAULT 0
4882 ,p_USE_VEH_RFI_YTD IN NUMBER DEFAULT 0
4883 ) RETURN NUMBER
4884 AS
4885 l_Dum NUMBER := 1;
4886
4887 BEGIN
4888 -- Balances
4889 bal_TEL_ALL_NRFI_CMTD := p_TEL_ALL_NRFI_CMTD;
4890 bal_TEL_ALL_NRFI_CYTD := p_TEL_ALL_NRFI_CYTD;
4891 bal_TEL_ALL_NRFI_RUN := p_TEL_ALL_NRFI_RUN;
4892 bal_TEL_ALL_NRFI_PTD := p_TEL_ALL_NRFI_PTD;
4893 bal_TEL_ALL_NRFI_YTD := p_TEL_ALL_NRFI_YTD;
4894 bal_TEL_ALL_RFI_CMTD := p_TEL_ALL_RFI_CMTD;
4895 bal_TEL_ALL_RFI_CYTD := p_TEL_ALL_RFI_CYTD;
4896 bal_TEL_ALL_RFI_RUN := p_TEL_ALL_RFI_RUN;
4897 bal_TEL_ALL_RFI_PTD := p_TEL_ALL_RFI_PTD;
4898 bal_TEL_ALL_RFI_YTD := p_TEL_ALL_RFI_YTD;
4899 bal_TOOL_ALL_NRFI_CMTD := p_TOOL_ALL_NRFI_CMTD;
4900 bal_TOOL_ALL_NRFI_CYTD := p_TOOL_ALL_NRFI_CYTD;
4901 bal_TOOL_ALL_NRFI_RUN := p_TOOL_ALL_NRFI_RUN;
4902 bal_TOOL_ALL_NRFI_PTD := p_TOOL_ALL_NRFI_PTD;
4903 bal_TOOL_ALL_NRFI_YTD := p_TOOL_ALL_NRFI_YTD;
4904 bal_TOOL_ALL_RFI_CMTD := p_TOOL_ALL_RFI_CMTD;
4905 bal_TOOL_ALL_RFI_CYTD := p_TOOL_ALL_RFI_CYTD;
4906 bal_TOOL_ALL_RFI_RUN := p_TOOL_ALL_RFI_RUN;
4907 bal_TOOL_ALL_RFI_PTD := p_TOOL_ALL_RFI_PTD;
4908 bal_TOOL_ALL_RFI_YTD := p_TOOL_ALL_RFI_YTD;
4909 bal_TOT_INC_PTD := p_TOT_INC_PTD;
4910 bal_TOT_INC_YTD := p_TOT_INC_YTD;
4911 bal_TOT_NRFI_AN_INC_CMTD := p_TOT_NRFI_AN_INC_CMTD;
4912 bal_TOT_NRFI_AN_INC_CYTD := p_TOT_NRFI_AN_INC_CYTD;
4913 bal_TOT_NRFI_AN_INC_RUN := p_TOT_NRFI_AN_INC_RUN;
4914 bal_TOT_NRFI_AN_INC_PTD := p_TOT_NRFI_AN_INC_PTD;
4915 bal_TOT_NRFI_AN_INC_YTD := p_TOT_NRFI_AN_INC_YTD;
4916 bal_TOT_NRFI_INC_CMTD := p_TOT_NRFI_INC_CMTD;
4917 bal_TOT_NRFI_INC_CYTD := p_TOT_NRFI_INC_CYTD;
4918 bal_TOT_NRFI_INC_RUN := p_TOT_NRFI_INC_RUN;
4919 bal_TOT_NRFI_INC_PTD := p_TOT_NRFI_INC_PTD;
4920 bal_TOT_NRFI_INC_YTD := p_TOT_NRFI_INC_YTD;
4921 bal_TOT_RFI_AN_INC_CMTD := p_TOT_RFI_AN_INC_CMTD;
4922 bal_TOT_RFI_AN_INC_CYTD := p_TOT_RFI_AN_INC_CYTD;
4923 bal_TOT_RFI_AN_INC_RUN := p_TOT_RFI_AN_INC_RUN;
4924 bal_TOT_RFI_AN_INC_PTD := p_TOT_RFI_AN_INC_PTD;
4925 bal_TOT_RFI_AN_INC_YTD := p_TOT_RFI_AN_INC_YTD;
4926 bal_TOT_RFI_INC_CMTD := p_TOT_RFI_INC_CMTD;
4927 bal_TOT_RFI_INC_CYTD := p_TOT_RFI_INC_CYTD;
4928 bal_TOT_RFI_INC_RUN := p_TOT_RFI_INC_RUN;
4929 bal_TOT_RFI_INC_PTD := p_TOT_RFI_INC_PTD;
4930 bal_TOT_RFI_INC_YTD := p_TOT_RFI_INC_YTD;
4931 bal_TOT_SEA_WRK_DYS_WRK_YTD := p_TOT_SEA_WRK_DYS_WRK_YTD;
4932 bal_TOT_TXB_INC_ITD := p_TOT_TXB_INC_ITD;
4933 bal_TA_NRFI_CMTD := p_TA_NRFI_CMTD;
4934 bal_TA_NRFI_CYTD := p_TA_NRFI_CYTD;
4935 bal_TA_NRFI_PTD := p_TA_NRFI_PTD;
4936 bal_TA_NRFI_YTD := p_TA_NRFI_YTD;
4937 bal_TA_RFI_CMTD := p_TA_RFI_CMTD;
4938 bal_TA_RFI_CYTD := p_TA_RFI_CYTD;
4939 bal_TA_RFI_PTD := p_TA_RFI_PTD;
4940 bal_TA_RFI_YTD := p_TA_RFI_YTD;
4941 bal_USE_VEH_NRFI_CMTD := p_USE_VEH_NRFI_CMTD;
4942 bal_USE_VEH_NRFI_CYTD := p_USE_VEH_NRFI_CYTD;
4943 bal_USE_VEH_NRFI_RUN := p_USE_VEH_NRFI_RUN;
4944 bal_USE_VEH_NRFI_PTD := p_USE_VEH_NRFI_PTD;
4945 bal_USE_VEH_NRFI_YTD := p_USE_VEH_NRFI_YTD;
4946 bal_USE_VEH_RFI_CMTD := p_USE_VEH_RFI_CMTD;
4947 bal_USE_VEH_RFI_CYTD := p_USE_VEH_RFI_CYTD;
4948 bal_USE_VEH_RFI_RUN := p_USE_VEH_RFI_RUN;
4949 bal_USE_VEH_RFI_PTD := p_USE_VEH_RFI_PTD;
4950 bal_USE_VEH_RFI_YTD := p_USE_VEH_RFI_YTD;
4951
4952 RETURN l_Dum;
4953 EXCEPTION
4954 WHEN OTHERS THEN
4955 hr_utility.set_message(801, 'ZaTxBal6_01032004: '||TO_CHAR(SQLCODE));
4956 hr_utility.raise_error;
4957 END ZaTxBal6_01032004;
4958
4959 -------------------------------------------------------------------------------
4960 -- ZaTx_01032004 --
4961 -- Main Tax module function --
4962 -------------------------------------------------------------------------------
4963 FUNCTION ZaTx_01032004(
4964 /* PARAMETERS */
4965 -- Contexts
4966 ASSIGNMENT_ACTION_ID IN NUMBER
4967 , ASSIGNMENT_ID IN NUMBER
4968 , PAYROLL_ACTION_ID IN NUMBER
4969 , PAYROLL_ID IN NUMBER
4970 -- Out Parameters
4971 , p_LibWrn OUT NOCOPY VARCHAR2
4972 , p_LibFpDR OUT NOCOPY NUMBER
4973 , p_LibFpNI OUT NOCOPY NUMBER
4974 , p_LibFpFB OUT NOCOPY NUMBER
4975 , p_LibFpTA OUT NOCOPY NUMBER
4976 , p_LibFpBP OUT NOCOPY NUMBER
4977 , p_LibFpAB OUT NOCOPY NUMBER
4978 , p_LibFpAP OUT NOCOPY NUMBER
4979 , p_LibFpPO OUT NOCOPY NUMBER
4980 , p_PayValSD OUT NOCOPY NUMBER
4981 , p_PayValEC OUT NOCOPY NUMBER
4982 , p_PayeVal OUT NOCOPY NUMBER
4983 , p_SiteVal OUT NOCOPY NUMBER
4984 , p_It3Ind OUT NOCOPY NUMBER
4985 , p_PfUpdFig OUT NOCOPY NUMBER
4986 , p_RaUpdFig OUT NOCOPY NUMBER
4987 , p_OUpdFig OUT NOCOPY NUMBER
4988 , p_NtiUpdFig OUT NOCOPY NUMBER
4989 , p_PerRFITotPkgPTD_Upd OUT NOCOPY NUMBER
4990 , p_PerNRFITotPkgPTD_Upd OUT NOCOPY NUMBER
4991 , p_AnnRFITotPkgPTD_Upd OUT NOCOPY NUMBER
4992 , p_AnnNRFITotPkgPTD_Upd OUT NOCOPY NUMBER
4993 , p_OvrWrn OUT NOCOPY VARCHAR2
4994 )RETURN NUMBER
4995 AS
4996 -- Variables
4997 --
4998 l_Dum NUMBER := 1;
4999
5000 xpt_FxdPrc EXCEPTION;
5001
5002 -------------------------------------------------------------------------------
5003 BEGIN-- MAIN --
5004 -------------------------------------------------------------------------------
5005 -- Set hr_utility globals if debugging
5006 --
5007 -- py_za_tx_utl_01032004.g_HrTraceEnabled := TRUE;
5008 -- py_za_tx_utl_01032004.g_HrTracePipeName := 'ZATAX';
5009
5010 -- Call hr_utility start procedure
5011 py_za_tx_utl_01032004.StartHrTrace;
5012
5013 -- Setup Trace Header Info
5014 WrtHrTrc(' ');
5015 WrtHrTrc(' ');
5016 WrtHrTrc(' ');
5017 WrtHrTrc('------------------------------------------------------------');
5018 WrtHrTrc('-- Start of Tax Trace File');
5019 WrtHrTrc('------------------------------------------------------------');
5020 WrtHrTrc(' ');
5021 WrtHrTrc(' Processing Assignment ID : '||to_char(ASSIGNMENT_ID ));
5022 WrtHrTrc(' Assignment Action ID : '||to_char(ASSIGNMENT_ACTION_ID));
5023 WrtHrTrc(' Payroll Action ID : '||to_char(PAYROLL_ACTION_ID ));
5024 WrtHrTrc(' Payroll ID : '||to_char(PAYROLL_ID ));
5025 WrtHrTrc(' ');
5026 WrtHrTrc('------------------------------------------------------------');
5027 WrtHrTrc(' ');
5028 WrtHrTrc('-------------------------------------------------------------------------------');
5029 WrtHrTrc('-- Application Global Values');
5030 WrtHrTrc('-------------------------------------------------------------------------------');
5031 WrtHrTrc(' glb_ZA_ADL_TX_RBT: '||to_char(glb_ZA_ADL_TX_RBT ));
5032 WrtHrTrc(' glb_ZA_ARR_PF_AN_MX_ABT: '||to_char(glb_ZA_ARR_PF_AN_MX_ABT ));
5033 WrtHrTrc(' glb_ZA_ARR_RA_AN_MX_ABT: '||to_char(glb_ZA_ARR_RA_AN_MX_ABT ));
5034 WrtHrTrc(' glb_ZA_TRV_ALL_TX_PRC: '||to_char(glb_ZA_TRV_ALL_TX_PRC ));
5035 WrtHrTrc(' glb_ZA_CC_TX_PRC: '||to_char(glb_ZA_CC_TX_PRC ));
5036 WrtHrTrc(' glb_ZA_PF_AN_MX_ABT: '||to_char(glb_ZA_PF_AN_MX_ABT ));
5037 WrtHrTrc(' glb_ZA_PF_MX_PRC: '||to_char(glb_ZA_PF_MX_PRC ));
5038 WrtHrTrc(' glb_ZA_PER_SERV_COMP_PERC: '||to_char(glb_ZA_PER_SERV_COMP_PERC));
5039 WrtHrTrc(' glb_ZA_PER_SERV_TRST_PERC: '||to_char(glb_ZA_PER_SERV_TRST_PERC));
5040 WrtHrTrc(' glb_ZA_PRI_TX_RBT: '||to_char(glb_ZA_PRI_TX_RBT ));
5041 WrtHrTrc(' glb_ZA_PRI_TX_THRSHLD: '||to_char(glb_ZA_PRI_TX_THRSHLD ));
5042 WrtHrTrc(' glb_ZA_PBL_TX_PRC: '||to_char(glb_ZA_PBL_TX_PRC ));
5043 WrtHrTrc(' glb_ZA_PBL_TX_RTE: '||to_char(glb_ZA_PBL_TX_RTE ));
5044 WrtHrTrc(' glb_ZA_RA_AN_MX_ABT: '||to_char(glb_ZA_RA_AN_MX_ABT ));
5045 WrtHrTrc(' glb_ZA_RA_MX_PRC: '||to_char(glb_ZA_RA_MX_PRC ));
5046 WrtHrTrc(' glb_ZA_SC_TX_THRSHLD: '||to_char(glb_ZA_SC_TX_THRSHLD ));
5047 WrtHrTrc(' glb_ZA_SIT_LIM: '||to_char(glb_ZA_SIT_LIM ));
5048 WrtHrTrc(' glb_ZA_TMP_TX_RTE: '||to_char(glb_ZA_TMP_TX_RTE ));
5049 WrtHrTrc(' glb_ZA_WRK_DYS_PR_YR: '||to_char(glb_ZA_WRK_DYS_PR_YR ));
5050 WrtHrTrc('-------------------------------------------------------------------------------');
5051 WrtHrTrc('-- Application Database Items');
5052 WrtHrTrc('-------------------------------------------------------------------------------');
5053 WrtHrTrc(' dbi_ASG_SAL: '||to_char(dbi_ASG_SAL ));
5054 WrtHrTrc(' dbi_ASG_SAL_FCTR: '||to_char(dbi_ASG_SAL_FCTR ));
5055 WrtHrTrc(' dbi_BP_TX_RCV: '|| dbi_BP_TX_RCV );
5056 WrtHrTrc(' dbi_FXD_PRC: '|| dbi_FXD_PRC );
5057 WrtHrTrc(' dbi_PAY_PROC_PRD_DTE_PD: '||to_char(dbi_PAY_PROC_PRD_DTE_PD,'DD/MM/YYYY'));
5058 WrtHrTrc(' dbi_PER_AGE: '||to_char(dbi_PER_AGE ));
5059 WrtHrTrc(' dbi_PER_DTE_OF_BRTH: '||to_char(dbi_PER_DTE_OF_BRTH ,'DD/MM/YYYY'));
5060 WrtHrTrc(' dbi_SEA_WRK_DYS_WRK: '||to_char(dbi_SEA_WRK_DYS_WRK ));
5061 WrtHrTrc(' dbi_SES_DTE: '||to_char(dbi_SES_DTE ,'DD/MM/YYYY'));
5062 WrtHrTrc(' dbi_TX_DIR_NUM: '|| dbi_TX_DIR_NUM );
5063 WrtHrTrc(' dbi_TX_DIR_VAL: '||to_char(dbi_TX_DIR_VAL ));
5064 WrtHrTrc(' dbi_TX_STA: '|| dbi_TX_STA );
5065 WrtHrTrc(' dbi_TOT_PKG: '||to_char(dbi_TOT_PKG ));
5066 WrtHrTrc(' dbi_ZA_ACT_END_DTE: '||to_char(dbi_ZA_ACT_END_DTE ,'DD/MM/YYYY'));
5067 WrtHrTrc(' dbi_ZA_ACT_STRT_DTE: '||to_char(dbi_ZA_ACT_STRT_DTE ,'DD/MM/YYYY'));
5068 WrtHrTrc(' dbi_ZA_ASG_TX_RTR_PRD: '|| dbi_ZA_ASG_TX_RTR_PRD );
5069 WrtHrTrc(' dbi_ZA_ASG_TX_YR: '||to_char(dbi_ZA_ASG_TX_YR ));
5070 WrtHrTrc(' dbi_ZA_ASG_TX_YR_END: '||to_char(dbi_ZA_ASG_TX_YR_END ,'DD/MM/YYYY'));
5071 WrtHrTrc(' dbi_ZA_ASG_TX_YR_STRT: '||to_char(dbi_ZA_ASG_TX_YR_STRT ,'DD/MM/YYYY'));
5072 WrtHrTrc(' dbi_ZA_CUR_PRD_END_DTE: '||to_char(dbi_ZA_CUR_PRD_END_DTE ,'DD/MM/YYYY'));
5073 WrtHrTrc(' dbi_ZA_CUR_PRD_STRT_DTE: '||to_char(dbi_ZA_CUR_PRD_STRT_DTE,'DD/MM/YYYY'));
5074 WrtHrTrc(' dbi_ZA_DYS_IN_YR: '||to_char(dbi_ZA_DYS_IN_YR ));
5075 WrtHrTrc(' dbi_ZA_PAY_PRDS_LFT: '||to_char(dbi_ZA_PAY_PRDS_LFT ));
5076 WrtHrTrc(' dbi_ZA_PAY_PRDS_PER_YR: '||to_char(dbi_ZA_PAY_PRDS_PER_YR ));
5077 WrtHrTrc(' dbi_ASG_PEN_BAS: '|| dbi_ASG_PEN_BAS );
5078 WrtHrTrc(' dbi_ZA_TX_YR_END: '||to_char(dbi_ZA_TX_YR_END ,'DD/MM/YYYY'));
5079 WrtHrTrc(' dbi_ZA_TX_YR_STRT: '||to_char(dbi_ZA_TX_YR_STRT ,'DD/MM/YYYY'));
5080 WrtHrTrc('-------------------------------------------------------------------------------');
5081 WrtHrTrc('-- Balances');
5082 WrtHrTrc('-------------------------------------------------------------------------------');
5083 WrtHrTrc(' bal_ANN_ARR_PF_CMTD: '||to_char(bal_ANN_ARR_PF_CMTD ));
5084 WrtHrTrc(' bal_ANN_ARR_PF_CYTD: '||to_char(bal_ANN_ARR_PF_CYTD ));
5085 WrtHrTrc(' bal_ANN_ARR_PF_RUN: '||to_char(bal_ANN_ARR_PF_RUN ));
5086 WrtHrTrc(' bal_ANN_ARR_PF_PTD: '||to_char(bal_ANN_ARR_PF_PTD ));
5087 WrtHrTrc(' bal_ANN_ARR_PF_YTD: '||to_char(bal_ANN_ARR_PF_YTD ));
5088 WrtHrTrc(' bal_ANN_ARR_RA_CMTD: '||to_char(bal_ANN_ARR_RA_CMTD ));
5089 WrtHrTrc(' bal_ANN_ARR_RA_CYTD: '||to_char(bal_ANN_ARR_RA_CYTD ));
5090 WrtHrTrc(' bal_ANN_ARR_RA_RUN: '||to_char(bal_ANN_ARR_RA_RUN ));
5091 WrtHrTrc(' bal_ANN_ARR_RA_PTD: '||to_char(bal_ANN_ARR_RA_PTD ));
5092 WrtHrTrc(' bal_ANN_ARR_RA_YTD: '||to_char(bal_ANN_ARR_RA_YTD ));
5093 WrtHrTrc(' bal_AA_PRCHD_RVAL_NRFI_CMTD: '||to_char(bal_AA_PRCHD_RVAL_NRFI_CMTD ));
5094 WrtHrTrc(' bal_AA_PRCHD_RVAL_NRFI_RUN: '||to_char(bal_AA_PRCHD_RVAL_NRFI_RUN ));
5095 WrtHrTrc(' bal_AA_PRCHD_RVAL_NRFI_PTD: '||to_char(bal_AA_PRCHD_RVAL_NRFI_PTD ));
5096 WrtHrTrc(' bal_AA_PRCHD_RVAL_NRFI_YTD: '||to_char(bal_AA_PRCHD_RVAL_NRFI_YTD ));
5097 WrtHrTrc(' bal_AA_PRCHD_RVAL_RFI_CMTD: '||to_char(bal_AA_PRCHD_RVAL_RFI_CMTD ));
5098 WrtHrTrc(' bal_AA_PRCHD_RVAL_RFI_RUN: '||to_char(bal_AA_PRCHD_RVAL_RFI_RUN ));
5099 WrtHrTrc(' bal_AA_PRCHD_RVAL_RFI_PTD: '||to_char(bal_AA_PRCHD_RVAL_RFI_PTD ));
5100 WrtHrTrc(' bal_AA_PRCHD_RVAL_RFI_YTD: '||to_char(bal_AA_PRCHD_RVAL_RFI_YTD ));
5101 WrtHrTrc(' bal_AB_NRFI_CMTD: '||to_char(bal_AB_NRFI_CMTD ));
5102 WrtHrTrc(' bal_AB_NRFI_RUN: '||to_char(bal_AB_NRFI_RUN ));
5103 WrtHrTrc(' bal_AB_NRFI_PTD: '||to_char(bal_AB_NRFI_PTD ));
5104 WrtHrTrc(' bal_AB_NRFI_YTD: '||to_char(bal_AB_NRFI_YTD ));
5105 WrtHrTrc(' bal_AB_RFI_CMTD: '||to_char(bal_AB_RFI_CMTD ));
5106 WrtHrTrc(' bal_AB_RFI_RUN: '||to_char(bal_AB_RFI_RUN ));
5107 WrtHrTrc(' bal_AB_RFI_PTD: '||to_char(bal_AB_RFI_PTD ));
5108 WrtHrTrc(' bal_AB_RFI_YTD: '||to_char(bal_AB_RFI_YTD ));
5109 WrtHrTrc(' bal_ANN_BUR_AND_SCH_NRFI_CMTD: '||to_char(bal_ANN_BUR_AND_SCH_NRFI_CMTD));
5110 WrtHrTrc(' bal_ANN_BUR_AND_SCH_NRFI_RUN: '||to_char(bal_ANN_BUR_AND_SCH_NRFI_RUN ));
5111 WrtHrTrc(' bal_ANN_BUR_AND_SCH_NRFI_PTD: '||to_char(bal_ANN_BUR_AND_SCH_NRFI_PTD ));
5112 WrtHrTrc(' bal_ANN_BUR_AND_SCH_NRFI_YTD: '||to_char(bal_ANN_BUR_AND_SCH_NRFI_YTD ));
5113 WrtHrTrc(' bal_ANN_BUR_AND_SCH_RFI_CMTD: '||to_char(bal_ANN_BUR_AND_SCH_RFI_CMTD ));
5114 WrtHrTrc(' bal_ANN_BUR_AND_SCH_RFI_RUN: '||to_char(bal_ANN_BUR_AND_SCH_RFI_RUN ));
5115 WrtHrTrc(' bal_ANN_BUR_AND_SCH_RFI_PTD: '||to_char(bal_ANN_BUR_AND_SCH_RFI_PTD ));
5116 WrtHrTrc(' bal_ANN_BUR_AND_SCH_RFI_YTD: '||to_char(bal_ANN_BUR_AND_SCH_RFI_YTD ));
5117 WrtHrTrc(' bal_AC_NRFI_CMTD: '||to_char(bal_AC_NRFI_CMTD ));
5118 WrtHrTrc(' bal_AC_NRFI_RUN: '||to_char(bal_AC_NRFI_RUN ));
5119 WrtHrTrc(' bal_AC_NRFI_PTD: '||to_char(bal_AC_NRFI_PTD ));
5120 WrtHrTrc(' bal_AC_NRFI_YTD: '||to_char(bal_AC_NRFI_YTD ));
5121 WrtHrTrc(' bal_AC_RFI_CMTD: '||to_char(bal_AC_RFI_CMTD ));
5122 WrtHrTrc(' bal_AC_RFI_RUN: '||to_char(bal_AC_RFI_RUN ));
5123 WrtHrTrc(' bal_AC_RFI_PTD: '||to_char(bal_AC_RFI_PTD ));
5124 WrtHrTrc(' bal_AC_RFI_YTD: '||to_char(bal_AC_RFI_YTD ));
5125 WrtHrTrc(' bal_ANN_IC_PYMNTS_NRFI_CMTD: '||to_char(bal_ANN_IC_PYMNTS_NRFI_CMTD ));
5126 WrtHrTrc(' bal_ANN_IC_PYMNTS_NRFI_CYTD: '||to_char(bal_ANN_IC_PYMNTS_NRFI_CYTD ));
5127 WrtHrTrc(' bal_ANN_IC_PYMNTS_NRFI_RUN: '||to_char(bal_ANN_IC_PYMNTS_NRFI_RUN ));
5128 WrtHrTrc(' bal_ANN_IC_PYMNTS_NRFI_PTD: '||to_char(bal_ANN_IC_PYMNTS_NRFI_PTD ));
5129 WrtHrTrc(' bal_ANN_IC_PYMNTS_NRFI_QTD: '||to_char(bal_ANN_IC_PYMNTS_NRFI_QTD ));
5130 WrtHrTrc(' bal_ANN_IC_PYMNTS_NRFI_YTD: '||to_char(bal_ANN_IC_PYMNTS_NRFI_YTD ));
5131 WrtHrTrc(' bal_ANN_IC_PYMNTS_RFI_CMTD: '||to_char(bal_ANN_IC_PYMNTS_RFI_CMTD ));
5132 WrtHrTrc(' bal_ANN_IC_PYMNTS_RFI_CYTD: '||to_char(bal_ANN_IC_PYMNTS_RFI_CYTD ));
5133 WrtHrTrc(' bal_ANN_IC_PYMNTS_RFI_RUN: '||to_char(bal_ANN_IC_PYMNTS_RFI_RUN ));
5134 WrtHrTrc(' bal_ANN_IC_PYMNTS_RFI_PTD: '||to_char(bal_ANN_IC_PYMNTS_RFI_PTD ));
5135 WrtHrTrc(' bal_ANN_IC_PYMNTS_RFI_QTD: '||to_char(bal_ANN_IC_PYMNTS_RFI_QTD ));
5136 WrtHrTrc(' bal_ANN_IC_PYMNTS_RFI_YTD: '||to_char(bal_ANN_IC_PYMNTS_RFI_YTD ));
5137 WrtHrTrc(' bal_ANN_LB_PYMNTS_NRFI_CMTD: '||to_char(bal_ANN_LB_PYMNTS_NRFI_CMTD ));
5138 WrtHrTrc(' bal_ANN_LB_PYMNTS_NRFI_CYTD: '||to_char(bal_ANN_LB_PYMNTS_NRFI_CYTD ));
5139 WrtHrTrc(' bal_ANN_LB_PYMNTS_NRFI_RUN: '||to_char(bal_ANN_LB_PYMNTS_NRFI_RUN ));
5140 WrtHrTrc(' bal_ANN_LB_PYMNTS_NRFI_PTD: '||to_char(bal_ANN_LB_PYMNTS_NRFI_PTD ));
5141 WrtHrTrc(' bal_ANN_LB_PYMNTS_NRFI_QTD: '||to_char(bal_ANN_LB_PYMNTS_NRFI_QTD ));
5142 WrtHrTrc(' bal_ANN_LB_PYMNTS_NRFI_YTD: '||to_char(bal_ANN_LB_PYMNTS_NRFI_YTD ));
5143 WrtHrTrc(' bal_ANN_LB_PYMNTS_RFI_CMTD: '||to_char(bal_ANN_LB_PYMNTS_RFI_CMTD ));
5144 WrtHrTrc(' bal_ANN_LB_PYMNTS_RFI_CYTD: '||to_char(bal_ANN_LB_PYMNTS_RFI_CYTD ));
5145 WrtHrTrc(' bal_ANN_LB_PYMNTS_RFI_RUN: '||to_char(bal_ANN_LB_PYMNTS_RFI_RUN ));
5146 WrtHrTrc(' bal_ANN_LB_PYMNTS_RFI_PTD: '||to_char(bal_ANN_LB_PYMNTS_RFI_PTD ));
5147 WrtHrTrc(' bal_ANN_LB_PYMNTS_RFI_QTD: '||to_char(bal_ANN_LB_PYMNTS_RFI_QTD ));
5148 WrtHrTrc(' bal_ANN_LB_PYMNTS_RFI_YTD: '||to_char(bal_ANN_LB_PYMNTS_RFI_YTD ));
5149 WrtHrTrc(' bal_ANN_NRFI_TOT_PKG_CMTD: '||to_char(bal_ANN_NRFI_TOT_PKG_CMTD ));
5150 WrtHrTrc(' bal_ANN_NRFI_TOT_PKG_PTD: '||to_char(bal_ANN_NRFI_TOT_PKG_PTD ));
5151 WrtHrTrc(' bal_ANN_NRFI_TOT_PKG_YTD: '||to_char(bal_ANN_NRFI_TOT_PKG_YTD ));
5152 WrtHrTrc(' bal_ANN_PYM_DBT_NRFI_CMTD: '||to_char(bal_ANN_PYM_DBT_NRFI_CMTD ));
5153 WrtHrTrc(' bal_ANN_PYM_DBT_NRFI_RUN: '||to_char(bal_ANN_PYM_DBT_NRFI_RUN ));
5154 WrtHrTrc(' bal_ANN_PYM_DBT_NRFI_PTD: '||to_char(bal_ANN_PYM_DBT_NRFI_PTD ));
5155 WrtHrTrc(' bal_ANN_PYM_DBT_NRFI_YTD: '||to_char(bal_ANN_PYM_DBT_NRFI_YTD ));
5156 WrtHrTrc(' bal_ANN_PYM_DBT_RFI_CMTD: '||to_char(bal_ANN_PYM_DBT_RFI_CMTD ));
5157 WrtHrTrc(' bal_ANN_PYM_DBT_RFI_RUN: '||to_char(bal_ANN_PYM_DBT_RFI_RUN ));
5158 WrtHrTrc(' bal_ANN_PYM_DBT_RFI_PTD: '||to_char(bal_ANN_PYM_DBT_RFI_PTD ));
5159 WrtHrTrc(' bal_ANN_PYM_DBT_RFI_YTD: '||to_char(bal_ANN_PYM_DBT_RFI_YTD ));
5160 WrtHrTrc(' bal_ANN_PF_CMTD: '||to_char(bal_ANN_PF_CMTD ));
5161 WrtHrTrc(' bal_ANN_PF_CYTD: '||to_char(bal_ANN_PF_CYTD ));
5162 WrtHrTrc(' bal_ANN_PF_RUN: '||to_char(bal_ANN_PF_RUN ));
5163 WrtHrTrc(' bal_ANN_PF_PTD: '||to_char(bal_ANN_PF_PTD ));
5164 WrtHrTrc(' bal_ANN_PF_YTD: '||to_char(bal_ANN_PF_YTD ));
5165 WrtHrTrc(' bal_ARES_TRD_NRFI_CMTD: '||to_char(bal_ARES_TRD_NRFI_CMTD ));
5166 WrtHrTrc(' bal_ARES_TRD_NRFI_RUN: '||to_char(bal_ARES_TRD_NRFI_RUN ));
5167 WrtHrTrc(' bal_ARES_TRD_NRFI_PTD: '||to_char(bal_ARES_TRD_NRFI_PTD ));
5168 WrtHrTrc(' bal_ARES_TRD_NRFI_YTD: '||to_char(bal_ARES_TRD_NRFI_YTD ));
5169 WrtHrTrc(' bal_ARES_TRD_RFI_CMTD: '||to_char(bal_ARES_TRD_RFI_CMTD ));
5170 WrtHrTrc(' bal_ARES_TRD_RFI_RUN: '||to_char(bal_ARES_TRD_RFI_RUN ));
5171 WrtHrTrc(' bal_ARES_TRD_RFI_PTD: '||to_char(bal_ARES_TRD_RFI_PTD ));
5172 WrtHrTrc(' bal_ARES_TRD_RFI_YTD: '||to_char(bal_ARES_TRD_RFI_YTD ));
5173 WrtHrTrc(' bal_ANN_RA_CMTD: '||to_char(bal_ANN_RA_CMTD ));
5174 WrtHrTrc(' bal_ANN_RA_CYTD: '||to_char(bal_ANN_RA_CYTD ));
5175 WrtHrTrc(' bal_ANN_RA_RUN: '||to_char(bal_ANN_RA_RUN ));
5176 WrtHrTrc(' bal_ANN_RA_PTD: '||to_char(bal_ANN_RA_PTD ));
5177 WrtHrTrc(' bal_ANN_RA_YTD: '||to_char(bal_ANN_RA_YTD ));
5178 WrtHrTrc(' bal_ANN_RFI_TOT_PKG_CMTD: '||to_char(bal_ANN_RFI_TOT_PKG_CMTD ));
5179 WrtHrTrc(' bal_ANN_RFI_TOT_PKG_PTD: '||to_char(bal_ANN_RFI_TOT_PKG_PTD ));
5180 WrtHrTrc(' bal_ANN_RFI_TOT_PKG_YTD: '||to_char(bal_ANN_RFI_TOT_PKG_YTD ));
5181 WrtHrTrc(' bal_ANN_TXB_PKG_COMP_CMTD: '||to_char(bal_ANN_TXB_PKG_COMP_CMTD ));
5182 WrtHrTrc(' bal_ANN_TXB_PKG_COMP_CYTD: '||to_char(bal_ANN_TXB_PKG_COMP_CYTD ));
5183 WrtHrTrc(' bal_ANN_TXB_PKG_COMP_RUN: '||to_char(bal_ANN_TXB_PKG_COMP_RUN ));
5184 WrtHrTrc(' bal_ANN_TXB_PKG_COMP_PTD: '||to_char(bal_ANN_TXB_PKG_COMP_PTD ));
5185 WrtHrTrc(' bal_ANN_TXB_PKG_COMP_YTD: '||to_char(bal_ANN_TXB_PKG_COMP_YTD ));
5186 WrtHrTrc(' bal_ANU_FRM_RET_FND_NRFI_CMTD: '||to_char(bal_ANU_FRM_RET_FND_NRFI_CMTD));
5187 WrtHrTrc(' bal_ANU_FRM_RET_FND_NRFI_RUN: '||to_char(bal_ANU_FRM_RET_FND_NRFI_RUN ));
5188 WrtHrTrc(' bal_ANU_FRM_RET_FND_NRFI_PTD: '||to_char(bal_ANU_FRM_RET_FND_NRFI_PTD ));
5189 WrtHrTrc(' bal_ANU_FRM_RET_FND_NRFI_YTD: '||to_char(bal_ANU_FRM_RET_FND_NRFI_YTD ));
5190 WrtHrTrc(' bal_ANU_FRM_RET_FND_RFI_CMTD: '||to_char(bal_ANU_FRM_RET_FND_RFI_CMTD ));
5191 WrtHrTrc(' bal_ANU_FRM_RET_FND_RFI_RUN: '||to_char(bal_ANU_FRM_RET_FND_RFI_RUN ));
5192 WrtHrTrc(' bal_ANU_FRM_RET_FND_RFI_PTD: '||to_char(bal_ANU_FRM_RET_FND_RFI_PTD ));
5193 WrtHrTrc(' bal_ANU_FRM_RET_FND_RFI_YTD: '||to_char(bal_ANU_FRM_RET_FND_RFI_YTD ));
5194 WrtHrTrc(' bal_ARR_PF_CMTD: '||to_char(bal_ARR_PF_CMTD ));
5195 WrtHrTrc(' bal_ARR_PF_CYTD: '||to_char(bal_ARR_PF_CYTD ));
5196 WrtHrTrc(' bal_ARR_PF_PTD: '||to_char(bal_ARR_PF_PTD ));
5197 WrtHrTrc(' bal_ARR_PF_YTD: '||to_char(bal_ARR_PF_YTD ));
5198 WrtHrTrc(' bal_ARR_RA_CMTD: '||to_char(bal_ARR_RA_CMTD ));
5199 WrtHrTrc(' bal_ARR_RA_CYTD: '||to_char(bal_ARR_RA_CYTD ));
5200 WrtHrTrc(' bal_ARR_RA_PTD: '||to_char(bal_ARR_RA_PTD ));
5201 WrtHrTrc(' bal_ARR_RA_YTD: '||to_char(bal_ARR_RA_YTD ));
5202 WrtHrTrc(' bal_AST_PRCHD_RVAL_NRFI_CMTD: '||to_char(bal_AST_PRCHD_RVAL_NRFI_CMTD ));
5203 WrtHrTrc(' bal_AST_PRCHD_RVAL_NRFI_CYTD: '||to_char(bal_AST_PRCHD_RVAL_NRFI_CYTD ));
5204 WrtHrTrc(' bal_AST_PRCHD_RVAL_NRFI_RUN: '||to_char(bal_AST_PRCHD_RVAL_NRFI_RUN ));
5205 WrtHrTrc(' bal_AST_PRCHD_RVAL_NRFI_PTD: '||to_char(bal_AST_PRCHD_RVAL_NRFI_PTD ));
5206 WrtHrTrc(' bal_AST_PRCHD_RVAL_NRFI_YTD: '||to_char(bal_AST_PRCHD_RVAL_NRFI_YTD ));
5207 WrtHrTrc(' bal_AST_PRCHD_RVAL_RFI_CMTD: '||to_char(bal_AST_PRCHD_RVAL_RFI_CMTD ));
5208 WrtHrTrc(' bal_AST_PRCHD_RVAL_RFI_CYTD: '||to_char(bal_AST_PRCHD_RVAL_RFI_CYTD ));
5209 WrtHrTrc(' bal_AST_PRCHD_RVAL_RFI_RUN: '||to_char(bal_AST_PRCHD_RVAL_RFI_RUN ));
5210 WrtHrTrc(' bal_AST_PRCHD_RVAL_RFI_PTD: '||to_char(bal_AST_PRCHD_RVAL_RFI_PTD ));
5211 WrtHrTrc(' bal_AST_PRCHD_RVAL_RFI_YTD: '||to_char(bal_AST_PRCHD_RVAL_RFI_YTD ));
5212 WrtHrTrc(' bal_BP_CMTD: '||to_char(bal_BP_CMTD ));
5213 WrtHrTrc(' bal_BP_PTD: '||to_char(bal_BP_PTD ));
5214 WrtHrTrc(' bal_BP_YTD: '||to_char(bal_BP_YTD ));
5215 WrtHrTrc(' bal_BUR_AND_SCH_NRFI_CMTD: '||to_char(bal_BUR_AND_SCH_NRFI_CMTD ));
5216 WrtHrTrc(' bal_BUR_AND_SCH_NRFI_CYTD: '||to_char(bal_BUR_AND_SCH_NRFI_CYTD ));
5217 WrtHrTrc(' bal_BUR_AND_SCH_NRFI_RUN: '||to_char(bal_BUR_AND_SCH_NRFI_RUN ));
5218 WrtHrTrc(' bal_BUR_AND_SCH_NRFI_PTD: '||to_char(bal_BUR_AND_SCH_NRFI_PTD ));
5219 WrtHrTrc(' bal_BUR_AND_SCH_NRFI_YTD: '||to_char(bal_BUR_AND_SCH_NRFI_YTD ));
5220 WrtHrTrc(' bal_BUR_AND_SCH_RFI_CMTD: '||to_char(bal_BUR_AND_SCH_RFI_CMTD ));
5221 WrtHrTrc(' bal_BUR_AND_SCH_RFI_CYTD: '||to_char(bal_BUR_AND_SCH_RFI_CYTD ));
5222 WrtHrTrc(' bal_BUR_AND_SCH_RFI_RUN: '||to_char(bal_BUR_AND_SCH_RFI_RUN ));
5223 WrtHrTrc(' bal_BUR_AND_SCH_RFI_PTD: '||to_char(bal_BUR_AND_SCH_RFI_PTD ));
5224 WrtHrTrc(' bal_BUR_AND_SCH_RFI_YTD: '||to_char(bal_BUR_AND_SCH_RFI_YTD ));
5225 WrtHrTrc(' bal_COMM_NRFI_CMTD: '||to_char(bal_COMM_NRFI_CMTD ));
5226 WrtHrTrc(' bal_COMM_NRFI_CYTD: '||to_char(bal_COMM_NRFI_CYTD ));
5227 WrtHrTrc(' bal_COMM_NRFI_RUN: '||to_char(bal_COMM_NRFI_RUN ));
5228 WrtHrTrc(' bal_COMM_NRFI_PTD: '||to_char(bal_COMM_NRFI_PTD ));
5229 WrtHrTrc(' bal_COMM_NRFI_YTD: '||to_char(bal_COMM_NRFI_YTD ));
5230 WrtHrTrc(' bal_COMM_RFI_CMTD: '||to_char(bal_COMM_RFI_CMTD ));
5231 WrtHrTrc(' bal_COMM_RFI_CYTD: '||to_char(bal_COMM_RFI_CYTD ));
5232 WrtHrTrc(' bal_COMM_RFI_RUN: '||to_char(bal_COMM_RFI_RUN ));
5233 WrtHrTrc(' bal_COMM_RFI_PTD: '||to_char(bal_COMM_RFI_PTD ));
5234 WrtHrTrc(' bal_COMM_RFI_YTD: '||to_char(bal_COMM_RFI_YTD ));
5235 WrtHrTrc(' bal_COMP_ALL_NRFI_CMTD: '||to_char(bal_COMP_ALL_NRFI_CMTD ));
5236 WrtHrTrc(' bal_COMP_ALL_NRFI_CYTD: '||to_char(bal_COMP_ALL_NRFI_CYTD ));
5237 WrtHrTrc(' bal_COMP_ALL_NRFI_RUN: '||to_char(bal_COMP_ALL_NRFI_RUN ));
5238 WrtHrTrc(' bal_COMP_ALL_NRFI_PTD: '||to_char(bal_COMP_ALL_NRFI_PTD ));
5239 WrtHrTrc(' bal_COMP_ALL_NRFI_YTD: '||to_char(bal_COMP_ALL_NRFI_YTD ));
5240 WrtHrTrc(' bal_COMP_ALL_RFI_CMTD: '||to_char(bal_COMP_ALL_RFI_CMTD ));
5241 WrtHrTrc(' bal_COMP_ALL_RFI_CYTD: '||to_char(bal_COMP_ALL_RFI_CYTD ));
5242 WrtHrTrc(' bal_COMP_ALL_RFI_RUN: '||to_char(bal_COMP_ALL_RFI_RUN ));
5243 WrtHrTrc(' bal_COMP_ALL_RFI_PTD: '||to_char(bal_COMP_ALL_RFI_PTD ));
5244 WrtHrTrc(' bal_COMP_ALL_RFI_YTD: '||to_char(bal_COMP_ALL_RFI_YTD ));
5245 WrtHrTrc(' bal_CUR_PF_CMTD: '||to_char(bal_CUR_PF_CMTD ));
5246 WrtHrTrc(' bal_CUR_PF_CYTD: '||to_char(bal_CUR_PF_CYTD ));
5247 WrtHrTrc(' bal_CUR_PF_RUN: '||to_char(bal_CUR_PF_RUN ));
5248 WrtHrTrc(' bal_CUR_PF_PTD: '||to_char(bal_CUR_PF_PTD ));
5249 WrtHrTrc(' bal_CUR_PF_YTD: '||to_char(bal_CUR_PF_YTD ));
5250 WrtHrTrc(' bal_CUR_RA_CMTD: '||to_char(bal_CUR_RA_CMTD ));
5251 WrtHrTrc(' bal_CUR_RA_CYTD: '||to_char(bal_CUR_RA_CYTD ));
5252 WrtHrTrc(' bal_CUR_RA_RUN: '||to_char(bal_CUR_RA_RUN ));
5253 WrtHrTrc(' bal_CUR_RA_PTD: '||to_char(bal_CUR_RA_PTD ));
5254 WrtHrTrc(' bal_CUR_RA_YTD: '||to_char(bal_CUR_RA_YTD ));
5255 WrtHrTrc(' bal_DIR_DMD_RMN_ITD '||to_char(bal_DIR_DMD_RMN_ITD ));
5256 WrtHrTrc(' bal_ENT_ALL_NRFI_CMTD: '||to_char(bal_ENT_ALL_NRFI_CMTD ));
5257 WrtHrTrc(' bal_ENT_ALL_NRFI_CYTD: '||to_char(bal_ENT_ALL_NRFI_CYTD ));
5258 WrtHrTrc(' bal_ENT_ALL_NRFI_RUN: '||to_char(bal_ENT_ALL_NRFI_RUN ));
5259 WrtHrTrc(' bal_ENT_ALL_NRFI_PTD: '||to_char(bal_ENT_ALL_NRFI_PTD ));
5260 WrtHrTrc(' bal_ENT_ALL_NRFI_YTD: '||to_char(bal_ENT_ALL_NRFI_YTD ));
5261 WrtHrTrc(' bal_ENT_ALL_RFI_CMTD: '||to_char(bal_ENT_ALL_RFI_CMTD ));
5262 WrtHrTrc(' bal_ENT_ALL_RFI_CYTD: '||to_char(bal_ENT_ALL_RFI_CYTD ));
5263 WrtHrTrc(' bal_ENT_ALL_RFI_RUN: '||to_char(bal_ENT_ALL_RFI_RUN ));
5264 WrtHrTrc(' bal_ENT_ALL_RFI_PTD: '||to_char(bal_ENT_ALL_RFI_PTD ));
5265 WrtHrTrc(' bal_ENT_ALL_RFI_YTD: '||to_char(bal_ENT_ALL_RFI_YTD ));
5266 WrtHrTrc(' bal_EXC_ARR_PEN_ITD: '||to_char(bal_EXC_ARR_PEN_ITD ));
5267 WrtHrTrc(' bal_EXC_ARR_PEN_PTD: '||to_char(bal_EXC_ARR_PEN_PTD ));
5268 WrtHrTrc(' bal_EXC_ARR_PEN_YTD: '||to_char(bal_EXC_ARR_PEN_YTD ));
5269 WrtHrTrc(' bal_EXC_ARR_RA_ITD: '||to_char(bal_EXC_ARR_RA_ITD ));
5270 WrtHrTrc(' bal_EXC_ARR_RA_PTD: '||to_char(bal_EXC_ARR_RA_PTD ));
5271 WrtHrTrc(' bal_EXC_ARR_RA_YTD: '||to_char(bal_EXC_ARR_RA_YTD ));
5272 WrtHrTrc(' bal_FREE_ACCOM_NRFI_CMTD: '||to_char(bal_FREE_ACCOM_NRFI_CMTD ));
5273 WrtHrTrc(' bal_FREE_ACCOM_NRFI_CYTD: '||to_char(bal_FREE_ACCOM_NRFI_CYTD ));
5274 WrtHrTrc(' bal_FREE_ACCOM_NRFI_RUN: '||to_char(bal_FREE_ACCOM_NRFI_RUN ));
5275 WrtHrTrc(' bal_FREE_ACCOM_NRFI_PTD: '||to_char(bal_FREE_ACCOM_NRFI_PTD ));
5276 WrtHrTrc(' bal_FREE_ACCOM_NRFI_YTD: '||to_char(bal_FREE_ACCOM_NRFI_YTD ));
5277 WrtHrTrc(' bal_FREE_ACCOM_RFI_CMTD: '||to_char(bal_FREE_ACCOM_RFI_CMTD ));
5278 WrtHrTrc(' bal_FREE_ACCOM_RFI_CYTD: '||to_char(bal_FREE_ACCOM_RFI_CYTD ));
5279 WrtHrTrc(' bal_FREE_ACCOM_RFI_RUN: '||to_char(bal_FREE_ACCOM_RFI_RUN ));
5280 WrtHrTrc(' bal_FREE_ACCOM_RFI_PTD: '||to_char(bal_FREE_ACCOM_RFI_PTD ));
5281 WrtHrTrc(' bal_FREE_ACCOM_RFI_YTD: '||to_char(bal_FREE_ACCOM_RFI_YTD ));
5282 WrtHrTrc(' bal_FREE_SERV_NRFI_CMTD: '||to_char(bal_FREE_SERV_NRFI_CMTD ));
5283 WrtHrTrc(' bal_FREE_SERV_NRFI_CYTD: '||to_char(bal_FREE_SERV_NRFI_CYTD ));
5284 WrtHrTrc(' bal_FREE_SERV_NRFI_RUN: '||to_char(bal_FREE_SERV_NRFI_RUN ));
5285 WrtHrTrc(' bal_FREE_SERV_NRFI_PTD: '||to_char(bal_FREE_SERV_NRFI_PTD ));
5286 WrtHrTrc(' bal_FREE_SERV_NRFI_YTD: '||to_char(bal_FREE_SERV_NRFI_YTD ));
5287 WrtHrTrc(' bal_FREE_SERV_RFI_CMTD: '||to_char(bal_FREE_SERV_RFI_CMTD ));
5288 WrtHrTrc(' bal_FREE_SERV_RFI_CYTD: '||to_char(bal_FREE_SERV_RFI_CYTD ));
5289 WrtHrTrc(' bal_FREE_SERV_RFI_RUN: '||to_char(bal_FREE_SERV_RFI_RUN ));
5290 WrtHrTrc(' bal_FREE_SERV_RFI_PTD: '||to_char(bal_FREE_SERV_RFI_PTD ));
5291 WrtHrTrc(' bal_FREE_SERV_RFI_YTD: '||to_char(bal_FREE_SERV_RFI_YTD ));
5292 WrtHrTrc(' bal_IC_PYMNTS_NRFI_CMTD: '||to_char(bal_IC_PYMNTS_NRFI_CMTD ));
5293 WrtHrTrc(' bal_IC_PYMNTS_NRFI_CYTD: '||to_char(bal_IC_PYMNTS_NRFI_CYTD ));
5294 WrtHrTrc(' bal_IC_PYMNTS_NRFI_RUN: '||to_char(bal_IC_PYMNTS_NRFI_RUN ));
5295 WrtHrTrc(' bal_IC_PYMNTS_NRFI_PTD: '||to_char(bal_IC_PYMNTS_NRFI_PTD ));
5296 WrtHrTrc(' bal_IC_PYMNTS_NRFI_QTD: '||to_char(bal_IC_PYMNTS_NRFI_QTD ));
5297 WrtHrTrc(' bal_IC_PYMNTS_NRFI_YTD: '||to_char(bal_IC_PYMNTS_NRFI_YTD ));
5298 WrtHrTrc(' bal_IC_PYMNTS_RFI_CMTD: '||to_char(bal_IC_PYMNTS_RFI_CMTD ));
5299 WrtHrTrc(' bal_IC_PYMNTS_RFI_CYTD: '||to_char(bal_IC_PYMNTS_RFI_CYTD ));
5300 WrtHrTrc(' bal_IC_PYMNTS_RFI_RUN: '||to_char(bal_IC_PYMNTS_RFI_RUN ));
5301 WrtHrTrc(' bal_IC_PYMNTS_RFI_PTD: '||to_char(bal_IC_PYMNTS_RFI_PTD ));
5302 WrtHrTrc(' bal_IC_PYMNTS_RFI_QTD: '||to_char(bal_IC_PYMNTS_RFI_QTD ));
5303 WrtHrTrc(' bal_IC_PYMNTS_RFI_YTD: '||to_char(bal_IC_PYMNTS_RFI_YTD ));
5304 WrtHrTrc(' bal_LB_PYMNTS_NRFI_CMTD: '||to_char(bal_LB_PYMNTS_NRFI_CMTD ));
5305 WrtHrTrc(' bal_LB_PYMNTS_NRFI_CYTD: '||to_char(bal_LB_PYMNTS_NRFI_CYTD ));
5306 WrtHrTrc(' bal_LB_PYMNTS_NRFI_RUN: '||to_char(bal_LB_PYMNTS_NRFI_RUN ));
5307 WrtHrTrc(' bal_LB_PYMNTS_NRFI_PTD: '||to_char(bal_LB_PYMNTS_NRFI_PTD ));
5308 WrtHrTrc(' bal_LB_PYMNTS_NRFI_QTD: '||to_char(bal_LB_PYMNTS_NRFI_QTD ));
5309 WrtHrTrc(' bal_LB_PYMNTS_NRFI_YTD: '||to_char(bal_LB_PYMNTS_NRFI_YTD ));
5310 WrtHrTrc(' bal_LB_PYMNTS_RFI_CMTD: '||to_char(bal_LB_PYMNTS_RFI_CMTD ));
5311 WrtHrTrc(' bal_LB_PYMNTS_RFI_CYTD: '||to_char(bal_LB_PYMNTS_RFI_CYTD ));
5312 WrtHrTrc(' bal_LB_PYMNTS_RFI_RUN: '||to_char(bal_LB_PYMNTS_RFI_RUN ));
5313 WrtHrTrc(' bal_LB_PYMNTS_RFI_PTD: '||to_char(bal_LB_PYMNTS_RFI_PTD ));
5314 WrtHrTrc(' bal_LB_PYMNTS_RFI_QTD: '||to_char(bal_LB_PYMNTS_RFI_QTD ));
5315 WrtHrTrc(' bal_LB_PYMNTS_RFI_YTD: '||to_char(bal_LB_PYMNTS_RFI_YTD ));
5316 WrtHrTrc(' bal_LOW_LOANS_NRFI_CMTD: '||to_char(bal_LOW_LOANS_NRFI_CMTD ));
5317 WrtHrTrc(' bal_LOW_LOANS_NRFI_CYTD: '||to_char(bal_LOW_LOANS_NRFI_CYTD ));
5318 WrtHrTrc(' bal_LOW_LOANS_NRFI_RUN: '||to_char(bal_LOW_LOANS_NRFI_RUN ));
5319 WrtHrTrc(' bal_LOW_LOANS_NRFI_PTD: '||to_char(bal_LOW_LOANS_NRFI_PTD ));
5320 WrtHrTrc(' bal_LOW_LOANS_NRFI_YTD: '||to_char(bal_LOW_LOANS_NRFI_YTD ));
5321 WrtHrTrc(' bal_LOW_LOANS_RFI_CMTD: '||to_char(bal_LOW_LOANS_RFI_CMTD ));
5322 WrtHrTrc(' bal_LOW_LOANS_RFI_CYTD: '||to_char(bal_LOW_LOANS_RFI_CYTD ));
5323 WrtHrTrc(' bal_LOW_LOANS_RFI_RUN: '||to_char(bal_LOW_LOANS_RFI_RUN ));
5324 WrtHrTrc(' bal_LOW_LOANS_RFI_PTD: '||to_char(bal_LOW_LOANS_RFI_PTD ));
5325 WrtHrTrc(' bal_LOW_LOANS_RFI_YTD: '||to_char(bal_LOW_LOANS_RFI_YTD ));
5326 WrtHrTrc(' bal_MLS_AND_VOUCH_NRFI_CMTD: '||to_char(bal_MLS_AND_VOUCH_NRFI_CMTD ));
5327 WrtHrTrc(' bal_MLS_AND_VOUCH_NRFI_CYTD: '||to_char(bal_MLS_AND_VOUCH_NRFI_CYTD ));
5328 WrtHrTrc(' bal_MLS_AND_VOUCH_NRFI_RUN: '||to_char(bal_MLS_AND_VOUCH_NRFI_RUN ));
5329 WrtHrTrc(' bal_MLS_AND_VOUCH_NRFI_PTD: '||to_char(bal_MLS_AND_VOUCH_NRFI_PTD ));
5330 WrtHrTrc(' bal_MLS_AND_VOUCH_NRFI_YTD: '||to_char(bal_MLS_AND_VOUCH_NRFI_YTD ));
5331 WrtHrTrc(' bal_MLS_AND_VOUCH_RFI_CMTD: '||to_char(bal_MLS_AND_VOUCH_RFI_CMTD ));
5332 WrtHrTrc(' bal_MLS_AND_VOUCH_RFI_CYTD: '||to_char(bal_MLS_AND_VOUCH_RFI_CYTD ));
5333 WrtHrTrc(' bal_MLS_AND_VOUCH_RFI_RUN: '||to_char(bal_MLS_AND_VOUCH_RFI_RUN ));
5334 WrtHrTrc(' bal_MLS_AND_VOUCH_RFI_PTD: '||to_char(bal_MLS_AND_VOUCH_RFI_PTD ));
5335 WrtHrTrc(' bal_MLS_AND_VOUCH_RFI_YTD: '||to_char(bal_MLS_AND_VOUCH_RFI_YTD ));
5336 WrtHrTrc(' bal_MED_CONTR_CMTD: '||to_char(bal_MED_CONTR_CMTD ));
5337 WrtHrTrc(' bal_MED_CONTR_CYTD: '||to_char(bal_MED_CONTR_CYTD ));
5338 WrtHrTrc(' bal_MED_CONTR_RUN: '||to_char(bal_MED_CONTR_RUN ));
5339 WrtHrTrc(' bal_MED_CONTR_PTD: '||to_char(bal_MED_CONTR_PTD ));
5340 WrtHrTrc(' bal_MED_CONTR_YTD: '||to_char(bal_MED_CONTR_YTD ));
5341 WrtHrTrc(' bal_MED_PAID_NRFI_CMTD: '||to_char(bal_MED_PAID_NRFI_CMTD ));
5342 WrtHrTrc(' bal_MED_PAID_NRFI_CYTD: '||to_char(bal_MED_PAID_NRFI_CYTD ));
5343 WrtHrTrc(' bal_MED_PAID_NRFI_RUN: '||to_char(bal_MED_PAID_NRFI_RUN ));
5344 WrtHrTrc(' bal_MED_PAID_NRFI_PTD: '||to_char(bal_MED_PAID_NRFI_PTD ));
5345 WrtHrTrc(' bal_MED_PAID_NRFI_YTD: '||to_char(bal_MED_PAID_NRFI_YTD ));
5346 WrtHrTrc(' bal_MED_PAID_RFI_CMTD: '||to_char(bal_MED_PAID_RFI_CMTD ));
5347 WrtHrTrc(' bal_MED_PAID_RFI_CYTD: '||to_char(bal_MED_PAID_RFI_CYTD ));
5348 WrtHrTrc(' bal_MED_PAID_RFI_RUN: '||to_char(bal_MED_PAID_RFI_RUN ));
5349 WrtHrTrc(' bal_MED_PAID_RFI_PTD: '||to_char(bal_MED_PAID_RFI_PTD ));
5350 WrtHrTrc(' bal_MED_PAID_RFI_YTD: '||to_char(bal_MED_PAID_RFI_YTD ));
5351 WrtHrTrc(' bal_NET_PAY_RUN: '||to_char(bal_NET_PAY_RUN ));
5352 WrtHrTrc(' bal_NET_TXB_INC_CMTD: '||to_char(bal_NET_TXB_INC_CMTD ));
5353 WrtHrTrc(' bal_NRFI_TOT_PKG_CMTD: '||to_char(bal_NRFI_TOT_PKG_CMTD ));
5354 WrtHrTrc(' bal_NRFI_TOT_PKG_CYTD: '||to_char(bal_NRFI_TOT_PKG_CYTD ));
5355 WrtHrTrc(' bal_NRFI_TOT_PKG_PTD: '||to_char(bal_NRFI_TOT_PKG_PTD ));
5356 WrtHrTrc(' bal_NRFI_TOT_PKG_YTD: '||to_char(bal_NRFI_TOT_PKG_YTD ));
5357 WrtHrTrc(' bal_OTHER_TXB_ALL_NRFI_CMTD: '||to_char(bal_OTHER_TXB_ALL_NRFI_CMTD ));
5358 WrtHrTrc(' bal_OTHER_TXB_ALL_NRFI_CYTD: '||to_char(bal_OTHER_TXB_ALL_NRFI_CYTD ));
5359 WrtHrTrc(' bal_OTHER_TXB_ALL_NRFI_RUN: '||to_char(bal_OTHER_TXB_ALL_NRFI_RUN ));
5360 WrtHrTrc(' bal_OTHER_TXB_ALL_NRFI_PTD: '||to_char(bal_OTHER_TXB_ALL_NRFI_PTD ));
5361 WrtHrTrc(' bal_OTHER_TXB_ALL_NRFI_YTD: '||to_char(bal_OTHER_TXB_ALL_NRFI_YTD ));
5362 WrtHrTrc(' bal_OTHER_TXB_ALL_RFI_CMTD: '||to_char(bal_OTHER_TXB_ALL_RFI_CMTD ));
5363 WrtHrTrc(' bal_OTHER_TXB_ALL_RFI_CYTD: '||to_char(bal_OTHER_TXB_ALL_RFI_CYTD ));
5364 WrtHrTrc(' bal_OTHER_TXB_ALL_RFI_RUN: '||to_char(bal_OTHER_TXB_ALL_RFI_RUN ));
5365 WrtHrTrc(' bal_OTHER_TXB_ALL_RFI_PTD: '||to_char(bal_OTHER_TXB_ALL_RFI_PTD ));
5366 WrtHrTrc(' bal_OTHER_TXB_ALL_RFI_YTD: '||to_char(bal_OTHER_TXB_ALL_RFI_YTD ));
5367 WrtHrTrc(' bal_OVTM_NRFI_CMTD: '||to_char(bal_OVTM_NRFI_CMTD ));
5368 WrtHrTrc(' bal_OVTM_NRFI_CYTD: '||to_char(bal_OVTM_NRFI_CYTD ));
5369 WrtHrTrc(' bal_OVTM_NRFI_RUN: '||to_char(bal_OVTM_NRFI_RUN ));
5370 WrtHrTrc(' bal_OVTM_NRFI_PTD: '||to_char(bal_OVTM_NRFI_PTD ));
5371 WrtHrTrc(' bal_OVTM_NRFI_YTD: '||to_char(bal_OVTM_NRFI_YTD ));
5372 WrtHrTrc(' bal_OVTM_RFI_CMTD: '||to_char(bal_OVTM_RFI_CMTD ));
5373 WrtHrTrc(' bal_OVTM_RFI_CYTD: '||to_char(bal_OVTM_RFI_CYTD ));
5374 WrtHrTrc(' bal_OVTM_RFI_RUN: '||to_char(bal_OVTM_RFI_RUN ));
5375 WrtHrTrc(' bal_OVTM_RFI_PTD: '||to_char(bal_OVTM_RFI_PTD ));
5376 WrtHrTrc(' bal_OVTM_RFI_YTD: '||to_char(bal_OVTM_RFI_YTD ));
5377 WrtHrTrc(' bal_PAYE_YTD: '||to_char(bal_PAYE_YTD ));
5378 WrtHrTrc(' bal_PYM_DBT_NRFI_CMTD: '||to_char(bal_PYM_DBT_NRFI_CMTD ));
5379 WrtHrTrc(' bal_PYM_DBT_NRFI_CYTD: '||to_char(bal_PYM_DBT_NRFI_CYTD ));
5380 WrtHrTrc(' bal_PYM_DBT_NRFI_RUN: '||to_char(bal_PYM_DBT_NRFI_RUN ));
5381 WrtHrTrc(' bal_PYM_DBT_NRFI_PTD: '||to_char(bal_PYM_DBT_NRFI_PTD ));
5382 WrtHrTrc(' bal_PYM_DBT_NRFI_YTD: '||to_char(bal_PYM_DBT_NRFI_YTD ));
5383 WrtHrTrc(' bal_PYM_DBT_RFI_CMTD: '||to_char(bal_PYM_DBT_RFI_CMTD ));
5384 WrtHrTrc(' bal_PYM_DBT_RFI_CYTD: '||to_char(bal_PYM_DBT_RFI_CYTD ));
5385 WrtHrTrc(' bal_PYM_DBT_RFI_RUN: '||to_char(bal_PYM_DBT_RFI_RUN ));
5386 WrtHrTrc(' bal_PYM_DBT_RFI_PTD: '||to_char(bal_PYM_DBT_RFI_PTD ));
5387 WrtHrTrc(' bal_PYM_DBT_RFI_YTD: '||to_char(bal_PYM_DBT_RFI_YTD ));
5388 WrtHrTrc(' bal_PO_NRFI_CMTD: '||to_char(bal_PO_NRFI_CMTD ));
5389 WrtHrTrc(' bal_PO_NRFI_RUN: '||to_char(bal_PO_NRFI_RUN ));
5390 WrtHrTrc(' bal_PO_NRFI_PTD: '||to_char(bal_PO_NRFI_PTD ));
5391 WrtHrTrc(' bal_PO_NRFI_YTD: '||to_char(bal_PO_NRFI_YTD ));
5392 WrtHrTrc(' bal_PO_RFI_CMTD: '||to_char(bal_PO_RFI_CMTD ));
5393 WrtHrTrc(' bal_PO_RFI_RUN: '||to_char(bal_PO_RFI_RUN ));
5394 WrtHrTrc(' bal_PO_RFI_PTD: '||to_char(bal_PO_RFI_PTD ));
5395 WrtHrTrc(' bal_PO_RFI_YTD: '||to_char(bal_PO_RFI_YTD ));
5396 WrtHrTrc(' bal_PRCH_ANU_TXB_NRFI_CMTD: '||to_char(bal_PRCH_ANU_TXB_NRFI_CMTD ));
5397 WrtHrTrc(' bal_PRCH_ANU_TXB_NRFI_RUN: '||to_char(bal_PRCH_ANU_TXB_NRFI_RUN ));
5398 WrtHrTrc(' bal_PRCH_ANU_TXB_NRFI_PTD: '||to_char(bal_PRCH_ANU_TXB_NRFI_PTD ));
5399 WrtHrTrc(' bal_PRCH_ANU_TXB_NRFI_YTD: '||to_char(bal_PRCH_ANU_TXB_NRFI_YTD ));
5400 WrtHrTrc(' bal_PRCH_ANU_TXB_RFI_CMTD: '||to_char(bal_PRCH_ANU_TXB_RFI_CMTD ));
5401 WrtHrTrc(' bal_PRCH_ANU_TXB_RFI_RUN: '||to_char(bal_PRCH_ANU_TXB_RFI_RUN ));
5402 WrtHrTrc(' bal_PRCH_ANU_TXB_RFI_PTD: '||to_char(bal_PRCH_ANU_TXB_RFI_PTD ));
5403 WrtHrTrc(' bal_PRCH_ANU_TXB_RFI_YTD: '||to_char(bal_PRCH_ANU_TXB_RFI_YTD ));
5404 WrtHrTrc(' bal_RES_TRD_NRFI_CMTD: '||to_char(bal_RES_TRD_NRFI_CMTD ));
5405 WrtHrTrc(' bal_RES_TRD_NRFI_CYTD: '||to_char(bal_RES_TRD_NRFI_CYTD ));
5406 WrtHrTrc(' bal_RES_TRD_NRFI_RUN: '||to_char(bal_RES_TRD_NRFI_RUN ));
5407 WrtHrTrc(' bal_RES_TRD_NRFI_PTD: '||to_char(bal_RES_TRD_NRFI_PTD ));
5408 WrtHrTrc(' bal_RES_TRD_NRFI_YTD: '||to_char(bal_RES_TRD_NRFI_YTD ));
5409 WrtHrTrc(' bal_RES_TRD_RFI_CMTD: '||to_char(bal_RES_TRD_RFI_CMTD ));
5410 WrtHrTrc(' bal_RES_TRD_RFI_CYTD: '||to_char(bal_RES_TRD_RFI_CYTD ));
5411 WrtHrTrc(' bal_RES_TRD_RFI_RUN: '||to_char(bal_RES_TRD_RFI_RUN ));
5412 WrtHrTrc(' bal_RES_TRD_RFI_PTD: '||to_char(bal_RES_TRD_RFI_PTD ));
5413 WrtHrTrc(' bal_RES_TRD_RFI_YTD: '||to_char(bal_RES_TRD_RFI_YTD ));
5414 WrtHrTrc(' bal_RFI_TOT_PKG_CMTD: '||to_char(bal_RFI_TOT_PKG_CMTD ));
5415 WrtHrTrc(' bal_RFI_TOT_PKG_CYTD: '||to_char(bal_RFI_TOT_PKG_CYTD ));
5416 WrtHrTrc(' bal_RFI_TOT_PKG_PTD: '||to_char(bal_RFI_TOT_PKG_PTD ));
5417 WrtHrTrc(' bal_RFI_TOT_PKG_YTD: '||to_char(bal_RFI_TOT_PKG_YTD ));
5418 WrtHrTrc(' bal_RGT_AST_NRFI_CMTD: '||to_char(bal_RGT_AST_NRFI_CMTD ));
5419 WrtHrTrc(' bal_RGT_AST_NRFI_CYTD: '||to_char(bal_RGT_AST_NRFI_CYTD ));
5420 WrtHrTrc(' bal_RGT_AST_NRFI_RUN: '||to_char(bal_RGT_AST_NRFI_RUN ));
5421 WrtHrTrc(' bal_RGT_AST_NRFI_PTD: '||to_char(bal_RGT_AST_NRFI_PTD ));
5422 WrtHrTrc(' bal_RGT_AST_NRFI_YTD: '||to_char(bal_RGT_AST_NRFI_YTD ));
5423 WrtHrTrc(' bal_RGT_AST_RFI_CMTD: '||to_char(bal_RGT_AST_RFI_CMTD ));
5424 WrtHrTrc(' bal_RGT_AST_RFI_CYTD: '||to_char(bal_RGT_AST_RFI_CYTD ));
5425 WrtHrTrc(' bal_RGT_AST_RFI_RUN: '||to_char(bal_RGT_AST_RFI_RUN ));
5426 WrtHrTrc(' bal_RGT_AST_RFI_PTD: '||to_char(bal_RGT_AST_RFI_PTD ));
5427 WrtHrTrc(' bal_RGT_AST_RFI_YTD: '||to_char(bal_RGT_AST_RFI_YTD ));
5428 WrtHrTrc(' bal_SITE_YTD: '||to_char(bal_SITE_YTD ));
5429 WrtHrTrc(' bal_TAX_YTD: '||to_char(bal_TAX_YTD ));
5430 WrtHrTrc(' bal_TX_ON_AB_PTD: '||to_char(bal_TX_ON_AB_PTD ));
5431 WrtHrTrc(' bal_TX_ON_AB_YTD: '||to_char(bal_TX_ON_AB_YTD ));
5432 WrtHrTrc(' bal_TX_ON_AP_RUN: '||to_char(bal_TX_ON_AP_RUN ));
5433 WrtHrTrc(' bal_TX_ON_AP_PTD: '||to_char(bal_TX_ON_AP_PTD ));
5434 WrtHrTrc(' bal_TX_ON_AP_YTD: '||to_char(bal_TX_ON_AP_YTD ));
5435 WrtHrTrc(' bal_TX_ON_BP_PTD: '||to_char(bal_TX_ON_BP_PTD ));
5436 WrtHrTrc(' bal_TX_ON_BP_YTD: '||to_char(bal_TX_ON_BP_YTD ));
5437 WrtHrTrc(' bal_TX_ON_TA_PTD: '||to_char(bal_TX_ON_TA_PTD ));
5438 WrtHrTrc(' bal_TX_ON_TA_YTD: '||to_char(bal_TX_ON_TA_YTD ));
5439 WrtHrTrc(' bal_TX_ON_DR_PTD: '||to_char(bal_TX_ON_DR_PTD ));
5440 WrtHrTrc(' bal_TX_ON_DR_YTD: '||to_char(bal_TX_ON_DR_YTD ));
5441 WrtHrTrc(' bal_TX_ON_FB_PTD: '||to_char(bal_TX_ON_FB_PTD ));
5442 WrtHrTrc(' bal_TX_ON_FB_YTD: '||to_char(bal_TX_ON_FB_YTD ));
5443 WrtHrTrc(' bal_TX_ON_NI_PTD: '||to_char(bal_TX_ON_NI_PTD ));
5444 WrtHrTrc(' bal_TX_ON_NI_YTD: '||to_char(bal_TX_ON_NI_YTD ));
5445 WrtHrTrc(' bal_TX_ON_PO_PTD: '||to_char(bal_TX_ON_PO_PTD ));
5446 WrtHrTrc(' bal_TX_ON_PO_YTD: '||to_char(bal_TX_ON_PO_YTD ));
5447 WrtHrTrc(' bal_TXB_AP_NRFI_CMTD: '||to_char(bal_TXB_AP_NRFI_CMTD ));
5448 WrtHrTrc(' bal_TXB_AP_NRFI_RUN: '||to_char(bal_TXB_AP_NRFI_RUN ));
5449 WrtHrTrc(' bal_TXB_AP_NRFI_PTD: '||to_char(bal_TXB_AP_NRFI_PTD ));
5450 WrtHrTrc(' bal_TXB_AP_NRFI_YTD: '||to_char(bal_TXB_AP_NRFI_YTD ));
5451 WrtHrTrc(' bal_TXB_AP_RFI_CMTD: '||to_char(bal_TXB_AP_RFI_CMTD ));
5452 WrtHrTrc(' bal_TXB_AP_RFI_RUN: '||to_char(bal_TXB_AP_RFI_RUN ));
5453 WrtHrTrc(' bal_TXB_AP_RFI_PTD: '||to_char(bal_TXB_AP_RFI_PTD ));
5454 WrtHrTrc(' bal_TXB_AP_RFI_YTD: '||to_char(bal_TXB_AP_RFI_YTD ));
5455 WrtHrTrc(' bal_TXB_INC_NRFI_CMTD: '||to_char(bal_TXB_INC_NRFI_CMTD ));
5456 WrtHrTrc(' bal_TXB_INC_NRFI_CYTD: '||to_char(bal_TXB_INC_NRFI_CYTD ));
5457 WrtHrTrc(' bal_TXB_INC_NRFI_RUN: '||to_char(bal_TXB_INC_NRFI_RUN ));
5458 WrtHrTrc(' bal_TXB_INC_NRFI_PTD: '||to_char(bal_TXB_INC_NRFI_PTD ));
5459 WrtHrTrc(' bal_TXB_INC_NRFI_YTD: '||to_char(bal_TXB_INC_NRFI_YTD ));
5460 WrtHrTrc(' bal_TXB_INC_RFI_CMTD: '||to_char(bal_TXB_INC_RFI_CMTD ));
5461 WrtHrTrc(' bal_TXB_INC_RFI_CYTD: '||to_char(bal_TXB_INC_RFI_CYTD ));
5462 WrtHrTrc(' bal_TXB_INC_RFI_RUN: '||to_char(bal_TXB_INC_RFI_RUN ));
5463 WrtHrTrc(' bal_TXB_INC_RFI_PTD: '||to_char(bal_TXB_INC_RFI_PTD ));
5464 WrtHrTrc(' bal_TXB_INC_RFI_YTD: '||to_char(bal_TXB_INC_RFI_YTD ));
5465 WrtHrTrc(' bal_TXB_PKG_COMP_CMTD: '||to_char(bal_TXB_PKG_COMP_CMTD ));
5466 WrtHrTrc(' bal_TXB_PKG_COMP_CYTD: '||to_char(bal_TXB_PKG_COMP_CYTD ));
5467 WrtHrTrc(' bal_TXB_PKG_COMP_RUN: '||to_char(bal_TXB_PKG_COMP_RUN ));
5468 WrtHrTrc(' bal_TXB_PKG_COMP_PTD: '||to_char(bal_TXB_PKG_COMP_PTD ));
5469 WrtHrTrc(' bal_TXB_PKG_COMP_YTD: '||to_char(bal_TXB_PKG_COMP_YTD ));
5470 WrtHrTrc(' bal_TXB_PEN_NRFI_CMTD: '||to_char(bal_TXB_PEN_NRFI_CMTD ));
5471 WrtHrTrc(' bal_TXB_PEN_NRFI_CYTD: '||to_char(bal_TXB_PEN_NRFI_CYTD ));
5472 WrtHrTrc(' bal_TXB_PEN_NRFI_RUN: '||to_char(bal_TXB_PEN_NRFI_RUN ));
5473 WrtHrTrc(' bal_TXB_PEN_NRFI_PTD: '||to_char(bal_TXB_PEN_NRFI_PTD ));
5474 WrtHrTrc(' bal_TXB_PEN_NRFI_YTD: '||to_char(bal_TXB_PEN_NRFI_YTD ));
5475 WrtHrTrc(' bal_TXB_PEN_RFI_CMTD: '||to_char(bal_TXB_PEN_RFI_CMTD ));
5476 WrtHrTrc(' bal_TXB_PEN_RFI_CYTD: '||to_char(bal_TXB_PEN_RFI_CYTD ));
5477 WrtHrTrc(' bal_TXB_PEN_RFI_RUN: '||to_char(bal_TXB_PEN_RFI_RUN ));
5478 WrtHrTrc(' bal_TXB_PEN_RFI_PTD: '||to_char(bal_TXB_PEN_RFI_PTD ));
5479 WrtHrTrc(' bal_TXB_PEN_RFI_YTD: '||to_char(bal_TXB_PEN_RFI_YTD ));
5480 WrtHrTrc(' bal_TEL_ALL_NRFI_CMTD: '||to_char(bal_TEL_ALL_NRFI_CMTD ));
5481 WrtHrTrc(' bal_TEL_ALL_NRFI_CYTD: '||to_char(bal_TEL_ALL_NRFI_CYTD ));
5482 WrtHrTrc(' bal_TEL_ALL_NRFI_RUN: '||to_char(bal_TEL_ALL_NRFI_RUN ));
5483 WrtHrTrc(' bal_TEL_ALL_NRFI_PTD: '||to_char(bal_TEL_ALL_NRFI_PTD ));
5484 WrtHrTrc(' bal_TEL_ALL_NRFI_YTD: '||to_char(bal_TEL_ALL_NRFI_YTD ));
5485 WrtHrTrc(' bal_TEL_ALL_RFI_CMTD: '||to_char(bal_TEL_ALL_RFI_CMTD ));
5486 WrtHrTrc(' bal_TEL_ALL_RFI_CYTD: '||to_char(bal_TEL_ALL_RFI_CYTD ));
5487 WrtHrTrc(' bal_TEL_ALL_RFI_RUN: '||to_char(bal_TEL_ALL_RFI_RUN ));
5488 WrtHrTrc(' bal_TEL_ALL_RFI_PTD: '||to_char(bal_TEL_ALL_RFI_PTD ));
5489 WrtHrTrc(' bal_TEL_ALL_RFI_YTD: '||to_char(bal_TEL_ALL_RFI_YTD ));
5490 WrtHrTrc(' bal_TOOL_ALL_NRFI_CMTD: '||to_char(bal_TOOL_ALL_NRFI_CMTD ));
5491 WrtHrTrc(' bal_TOOL_ALL_NRFI_CYTD: '||to_char(bal_TOOL_ALL_NRFI_CYTD ));
5492 WrtHrTrc(' bal_TOOL_ALL_NRFI_RUN: '||to_char(bal_TOOL_ALL_NRFI_RUN ));
5493 WrtHrTrc(' bal_TOOL_ALL_NRFI_PTD: '||to_char(bal_TOOL_ALL_NRFI_PTD ));
5494 WrtHrTrc(' bal_TOOL_ALL_NRFI_YTD: '||to_char(bal_TOOL_ALL_NRFI_YTD ));
5495 WrtHrTrc(' bal_TOOL_ALL_RFI_CMTD: '||to_char(bal_TOOL_ALL_RFI_CMTD ));
5496 WrtHrTrc(' bal_TOOL_ALL_RFI_CYTD: '||to_char(bal_TOOL_ALL_RFI_CYTD ));
5497 WrtHrTrc(' bal_TOOL_ALL_RFI_RUN: '||to_char(bal_TOOL_ALL_RFI_RUN ));
5498 WrtHrTrc(' bal_TOOL_ALL_RFI_PTD: '||to_char(bal_TOOL_ALL_RFI_PTD ));
5499 WrtHrTrc(' bal_TOOL_ALL_RFI_YTD: '||to_char(bal_TOOL_ALL_RFI_YTD ));
5500 WrtHrTrc(' bal_TOT_INC_PTD: '||to_char(bal_TOT_INC_PTD ));
5501 WrtHrTrc(' bal_TOT_INC_YTD: '||to_char(bal_TOT_INC_YTD ));
5502 WrtHrTrc(' bal_TOT_NRFI_AN_INC_CMTD: '||to_char(bal_TOT_NRFI_AN_INC_CMTD ));
5503 WrtHrTrc(' bal_TOT_NRFI_AN_INC_CYTD: '||to_char(bal_TOT_NRFI_AN_INC_CYTD ));
5504 WrtHrTrc(' bal_TOT_NRFI_AN_INC_RUN: '||to_char(bal_TOT_NRFI_AN_INC_RUN ));
5505 WrtHrTrc(' bal_TOT_NRFI_AN_INC_PTD: '||to_char(bal_TOT_NRFI_AN_INC_PTD ));
5506 WrtHrTrc(' bal_TOT_NRFI_AN_INC_YTD: '||to_char(bal_TOT_NRFI_AN_INC_YTD ));
5507 WrtHrTrc(' bal_TOT_NRFI_INC_CMTD: '||to_char(bal_TOT_NRFI_INC_CMTD ));
5508 WrtHrTrc(' bal_TOT_NRFI_INC_CYTD: '||to_char(bal_TOT_NRFI_INC_CYTD ));
5509 WrtHrTrc(' bal_TOT_NRFI_INC_RUN: '||to_char(bal_TOT_NRFI_INC_RUN ));
5510 WrtHrTrc(' bal_TOT_NRFI_INC_PTD: '||to_char(bal_TOT_NRFI_INC_PTD ));
5511 WrtHrTrc(' bal_TOT_NRFI_INC_YTD: '||to_char(bal_TOT_NRFI_INC_YTD ));
5512 WrtHrTrc(' bal_TOT_RFI_AN_INC_CMTD: '||to_char(bal_TOT_RFI_AN_INC_CMTD ));
5513 WrtHrTrc(' bal_TOT_RFI_AN_INC_CYTD: '||to_char(bal_TOT_RFI_AN_INC_CYTD ));
5514 WrtHrTrc(' bal_TOT_RFI_AN_INC_RUN: '||to_char(bal_TOT_RFI_AN_INC_RUN ));
5515 WrtHrTrc(' bal_TOT_RFI_AN_INC_PTD: '||to_char(bal_TOT_RFI_AN_INC_PTD ));
5516 WrtHrTrc(' bal_TOT_RFI_AN_INC_YTD: '||to_char(bal_TOT_RFI_AN_INC_YTD ));
5517 WrtHrTrc(' bal_TOT_RFI_INC_CMTD: '||to_char(bal_TOT_RFI_INC_CMTD ));
5518 WrtHrTrc(' bal_TOT_RFI_INC_CYTD: '||to_char(bal_TOT_RFI_INC_CYTD ));
5519 WrtHrTrc(' bal_TOT_RFI_INC_RUN: '||to_char(bal_TOT_RFI_INC_RUN ));
5520 WrtHrTrc(' bal_TOT_RFI_INC_PTD: '||to_char(bal_TOT_RFI_INC_PTD ));
5521 WrtHrTrc(' bal_TOT_RFI_INC_YTD: '||to_char(bal_TOT_RFI_INC_YTD ));
5522 WrtHrTrc(' bal_TOT_SEA_WRK_DYS_WRK_YTD: '||to_char(bal_TOT_SEA_WRK_DYS_WRK_YTD ));
5523 WrtHrTrc(' bal_TOT_TXB_INC_ITD: '||to_char(bal_TOT_TXB_INC_ITD ));
5524 WrtHrTrc(' bal_TA_NRFI_CMTD: '||to_char(bal_TA_NRFI_CMTD ));
5525 WrtHrTrc(' bal_TA_NRFI_CYTD: '||to_char(bal_TA_NRFI_CYTD ));
5526 WrtHrTrc(' bal_TA_NRFI_PTD: '||to_char(bal_TA_NRFI_PTD ));
5527 WrtHrTrc(' bal_TA_NRFI_YTD: '||to_char(bal_TA_NRFI_YTD ));
5528 WrtHrTrc(' bal_TA_RFI_CMTD: '||to_char(bal_TA_RFI_CMTD ));
5529 WrtHrTrc(' bal_TA_RFI_CYTD: '||to_char(bal_TA_RFI_CYTD ));
5530 WrtHrTrc(' bal_TA_RFI_PTD: '||to_char(bal_TA_RFI_PTD ));
5531 WrtHrTrc(' bal_TA_RFI_YTD: '||to_char(bal_TA_RFI_YTD ));
5532 WrtHrTrc(' bal_USE_VEH_NRFI_CMTD: '||to_char(bal_USE_VEH_NRFI_CMTD ));
5533 WrtHrTrc(' bal_USE_VEH_NRFI_CYTD: '||to_char(bal_USE_VEH_NRFI_CYTD ));
5534 WrtHrTrc(' bal_USE_VEH_NRFI_RUN: '||to_char(bal_USE_VEH_NRFI_RUN ));
5535 WrtHrTrc(' bal_USE_VEH_NRFI_PTD: '||to_char(bal_USE_VEH_NRFI_PTD ));
5536 WrtHrTrc(' bal_USE_VEH_NRFI_YTD: '||to_char(bal_USE_VEH_NRFI_YTD ));
5537 WrtHrTrc(' bal_USE_VEH_RFI_CMTD: '||to_char(bal_USE_VEH_RFI_CMTD ));
5538 WrtHrTrc(' bal_USE_VEH_RFI_CYTD: '||to_char(bal_USE_VEH_RFI_CYTD ));
5539 WrtHrTrc(' bal_USE_VEH_RFI_RUN: '||to_char(bal_USE_VEH_RFI_RUN ));
5540 WrtHrTrc(' bal_USE_VEH_RFI_PTD: '||to_char(bal_USE_VEH_RFI_PTD ));
5541 WrtHrTrc(' bal_USE_VEH_RFI_YTD: '||to_char(bal_USE_VEH_RFI_YTD ));
5542
5543 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',1);
5544
5545 -- Initialise Package Globals
5546 -- Contexts
5547 con_ASG_ACT_ID := ASSIGNMENT_ACTION_ID;
5548 con_ASG_ID := ASSIGNMENT_ID;
5549 con_PRL_ACT_ID := PAYROLL_ACTION_ID;
5550 con_PRL_ID := PAYROLL_ID;
5551
5552 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',2);
5553
5554 -- Temporary Fixed Percentage Check
5555 --
5556 IF dbi_ASG_PEN_BAS = '1' AND dbi_FXD_PRC = -1 THEN
5557 RAISE xpt_FxdPrc;
5558 END IF;
5559 -- Date Effective Tax Status Validation
5560 --
5561 /* IF dbi_TX_STA IN ('J','K','L') THEN
5562 IF xpt_Msg = 'No Error' THEN
5563 xpt_Msg := 'PY_ZA_TX_STATE_AUG';
5564 END IF;
5565 RAISE xpt_E;
5566 END IF;
5567 */
5568 -- Tax Override Validation
5569 --
5570 /*
5571 V = Amount
5572 P = Percentage
5573 S = Force Site Calculation
5574 */
5575
5576 -- Tax Status Validation
5577 --
5578 /*
5579 A = Normal
5580 B = Provisional
5581 C = Directive Amount
5582 D = Directive Percentage
5583 E = Close Corporation
5584 F = Temporary Worker/Student
5585 G = Seasonal Worker
5586 H = Zero Tax
5587 J = Personal Service Company
5588 K = Personal Service Trust
5589 L = Labour Broker
5590 M = Private Director
5591 N = Private Director with Directive Amount
5592 P = Private Director with Directive Percentage
5593 Q = Private Director Zero Tax
5594 */
5595 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',3);
5596
5597 -- C = Directive Amount
5598 -- N = Private Director with Directive Amount
5599 --
5600 IF dbi_TX_STA IN ('C','N') THEN
5601 IF trc_OvrTxCalc AND (trc_OvrTyp = 'S' OR trc_OvrTyp = 'P') THEN
5602 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',4);
5603 IF xpt_Msg = 'No Error' THEN
5604 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',5);
5605 xpt_Msg := 'PY_ZA_TX_OVR_TX_STATE_C';
5606 END IF;
5607 RAISE xpt_E;
5608 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',6);
5609 ELSIF trc_OvrTxCalc AND trc_OvrTyp = 'V' THEN
5610 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',7);
5611 trc_CalTyp := 'OvrCalc';
5612 trc_OvrWrn := 'WARNING: Tax Override - Total Tax Value: '||to_char(trc_LibFpNI + trc_LibFpAP);
5613 -- Check Directive Number First
5614 ELSIF dbi_TX_DIR_NUM = 'NULL' THEN
5615 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',8);
5616 IF xpt_Msg = 'No Error' THEN
5617 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',9);
5618 xpt_Msg := 'PY_ZA_TX_DIR_NUM';
5619 END IF;
5620 RAISE xpt_E;
5621 -- Check that directive value is filled in
5622 ELSIF dbi_TX_DIR_VAL = -1 THEN
5623 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',10);
5624 IF xpt_Msg = 'No Error' THEN
5625 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',11);
5626 xpt_Msg := 'PY_ZA_TX_DIR_MONT';
5627 END IF;
5628 RAISE xpt_E;
5629 ELSE
5630 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',12);
5631 trc_CalTyp := 'NoCalc';
5632 -- Liability = entered value
5633 trc_LibFpNI := dbi_TX_DIR_VAL;
5634 -- Standard NetPay Validation
5635 py_za_tx_utl_01032004.ValidateTaxOns;
5636 END IF;
5637 -- D = Directive Percentage
5638 -- P = Private Director wth Directive Percentage
5639 --
5640 ELSIF dbi_TX_STA IN ('D','P') THEN
5641 IF trc_OvrTxCalc AND trc_OvrTyp = 'S' THEN
5642 IF xpt_Msg = 'No Error' THEN
5643 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',13);
5644 xpt_Msg := 'PY_ZA_TX_OVR_TX_STATE_DEF';
5645 END IF;
5646 RAISE xpt_E;
5647 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',14);
5648 ELSIF trc_OvrTxCalc AND trc_OvrTyp = 'V' THEN
5649 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',15);
5650 trc_CalTyp := 'OvrCalc';
5651 trc_OvrWrn := 'WARNING: Tax Override - Total Tax Value: '||to_char(trc_LibFpNI + trc_LibFpAP);
5652 ELSE
5653 IF trc_OvrTxCalc AND trc_OvrTyp = 'P' THEN
5654 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',16);
5655 trc_OvrWrn := 'WARNING: Tax Override - '||to_char(trc_OvrPrc)||' Percent';
5656 -- Percentage taken into account in py_za_tx_utl_01032004.TaxLiability
5657 END IF;
5658 -- Check Directive Number First
5659 IF dbi_TX_DIR_NUM = 'NULL' THEN
5660 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',17);
5661 IF xpt_Msg = 'No Error' THEN
5662 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',18);
5663 xpt_Msg := 'PY_ZA_TX_DIR_NUM';
5664 END IF;
5665 RAISE xpt_E;
5666 -- Check that directive value is filled in
5667 ELSIF dbi_TX_DIR_VAL = -1 THEN
5668 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',19);
5669 IF xpt_Msg = 'No Error' THEN
5670 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',20);
5671 xpt_Msg := 'PY_ZA_TX_DIR_PERC';
5672 END IF;
5673 RAISE xpt_E;
5674 ELSE
5675 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',21);
5676 DirCalc;
5677 END IF;
5678 END IF;
5679 -- E = Close Corporation
5680 -- F = Temporary Worker/Student
5681 -- J = Personal Service Company
5682 -- K = Personal Service Trust
5683 -- L = Labour Broker
5684 --
5685 ELSIF dbi_TX_STA IN ('E','F','J','K','L') THEN
5686 IF trc_OvrTxCalc AND trc_OvrTyp = 'S' THEN
5687 IF xpt_Msg = 'No Error' THEN
5688 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',22);
5689 xpt_Msg := 'PY_ZA_TX_OVR_TX_STATE_DEF';
5690 END IF;
5691 RAISE xpt_E;
5692 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',23);
5693 ELSIF trc_OvrTxCalc AND trc_OvrTyp = 'V' THEN
5694 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',24);
5695 trc_CalTyp := 'OvrCalc';
5696 trc_OvrWrn := 'WARNING: Tax Override - Total Tax Value: '||to_char(trc_LibFpNI + trc_LibFpAP);
5697 ELSE
5698 IF trc_OvrTxCalc AND trc_OvrTyp = 'P' THEN
5699 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',25);
5700 trc_OvrWrn := 'WARNING: Tax Override - '||to_char(trc_OvrPrc)||' Percent';
5701 -- Percentage taken into account in py_za_tx_utl_01032004.TaxLiability
5702 END IF;
5703 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',26);
5704 -- Simply Execute the Directive Calculation
5705 DirCalc;
5706 END IF;
5707 -- G = Seasonal Worker
5708 --
5709 ELSIF dbi_TX_STA = 'G' THEN
5710 IF trc_OvrTxCalc AND (trc_OvrTyp = 'S' OR trc_OvrTyp = 'P') THEN
5711 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',27);
5712 IF xpt_Msg = 'No Error' THEN
5713 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',28);
5714 xpt_Msg := 'PY_ZA_TX_OVR_TX_STATE_G';
5715 END IF;
5716 RAISE xpt_E;
5717 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',29);
5718 -- Check that seasonal worker days worked is filled in
5719 ELSIF dbi_SEA_WRK_DYS_WRK = 0 THEN
5720 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',30);
5721 IF xpt_Msg = 'No Error' THEN
5722 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',31);
5723 xpt_Msg := 'PY_ZA_TX_SEA_WRK_DYS';
5724 END IF;
5725 RAISE xpt_E;
5726 ELSE
5727 IF trc_OvrTxCalc AND trc_OvrTyp = 'V' THEN
5728 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',32);
5729 trc_CalTyp := 'OvrCalc';
5730 trc_OvrWrn := 'WARNING: Tax Override - Total Tax Value: '||to_char(trc_LibFpNI + trc_LibFpAP);
5731 py_za_tx_utl_01032004.SetRebates;
5732 ELSE
5733 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',33);
5734 SeaCalc;
5735 END IF;
5736 END IF;
5737 -- A = Normal
5738 -- B = Provisional
5739 -- M = Private Director
5740 --
5741 ELSIF dbi_TX_STA IN ('A','B','M') THEN
5742 IF dbi_TX_STA <> 'M' THEN
5743 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',34);
5744 -- Deemed Remuneration only applicable to 'M'
5745 bal_DIR_DMD_RMN_ITD := 0;
5746 END IF;
5747
5748 IF trc_OvrTxCalc AND trc_OvrTyp = 'V' THEN
5749 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',35);
5750 trc_CalTyp := 'OvrCalc';
5751 trc_OvrWrn := 'WARNING: Tax Override - Total Tax Value: '||to_char(trc_LibFpNI + trc_LibFpAP);
5752 py_za_tx_utl_01032004.SetRebates;
5753 trc_SitFactor := dbi_ZA_DYS_IN_YR / py_za_tx_utl_01032004.DaysWorked;
5754 ELSIF trc_OvrTxCalc AND trc_OvrTyp = 'S' THEN
5755 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',36);
5756 trc_CalTyp := 'OvrCalc';
5757 trc_OvrWrn := 'WARNING: Tax Override - Forced Site Calculation';
5758 -- Force the Site Calculation
5759 SitCalc;
5760 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',37);
5761 ELSE
5762 IF trc_OvrTxCalc AND trc_OvrTyp = 'P' THEN
5763 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',38);
5764 trc_OvrWrn := 'WARNING: Tax Override - '||to_char(trc_OvrPrc)||' Percent';
5765 -- Percentage taken into account in py_za_tx_utl_01032004.TaxLiability
5766 END IF;
5767
5768 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',39);
5769 IF py_za_tx_utl_01032004.LatePayPeriod THEN
5770 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',40);
5771 LteCalc;
5772 -- Is this a SITE Period?
5773 ELSIF py_za_tx_utl_01032004.EmpTermPrePeriod THEN
5774 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',41);
5775 SitCalc;
5776 ELSIF py_za_tx_utl_01032004.LstPeriod OR py_za_tx_utl_01032004.EmpTermInPeriod THEN
5777 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',42);
5778 IF py_za_tx_utl_01032004.PreErnPeriod THEN
5779 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',43);
5780 YtdCalc;
5781 ELSE
5782 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',44);
5783 SitCalc;
5784 END IF;
5785 ElSE
5786 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',45);
5787 -- The employee has NOT been terminated!
5788 IF py_za_tx_utl_01032004.PreErnPeriod THEN
5789 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',46);
5790 YtdCalc;
5791 ELSIF dbi_ZA_ASG_TX_RTR_PRD = 'Y' THEN
5792 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',47);
5793 SitCalc;
5794 ELSIF py_za_tx_utl_01032004.NegPtd THEN
5795 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',48);
5796 SitCalc;
5797 ELSE
5798 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',49);
5799 NorCalc;
5800 END IF;
5801 END IF;
5802 END IF;
5803 -- H = Zero Tax
5804 -- Q = Private Director Zero Tax
5805 --
5806 ELSIF dbi_TX_STA IN ('H','Q') THEN
5807 IF trc_OvrTxCalc THEN
5808 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',50);
5809 IF xpt_Msg = 'No Error' THEN
5810 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',51);
5811 xpt_Msg := 'PY_ZA_TX_OVR_TX_STATE_H';
5812 END IF;
5813 RAISE xpt_E;
5814 ELSE
5815 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',52);
5816 trc_LibFpNI := -1 * bal_TX_ON_NI_YTD;
5817 trc_LibFpFB := -1 * bal_TX_ON_FB_YTD;
5818 trc_LibFpTA := -1 * bal_TX_ON_TA_YTD;
5819 trc_LibFpBP := -1 * bal_TX_ON_BP_YTD;
5820 trc_LibFpAB := -1 * bal_TX_ON_AB_YTD;
5821 trc_LibFpAP := -1 * bal_TX_ON_AP_YTD;
5822 trc_LibFpPO := -1 * bal_TX_ON_PO_YTD;
5823 END IF;
5824 ELSE
5825 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',53);
5826 hr_utility.set_message(801, 'ERROR: Invalid Tax Status');
5827 hr_utility.raise_error;
5828 END IF;
5829
5830 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',54);
5831
5832 -- Post Calculation Steps
5833 --
5834 py_za_tx_utl_01032004.SitPaySplit;
5835
5836 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',55);
5837
5838 -- Execute the Arrear Processing
5839 --
5840 IF py_za_tx_utl_01032004.SitePeriod THEN
5841 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',56);
5842 py_za_tx_utl_01032004.ArrearExcess;
5843 END IF;
5844
5845 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',57);
5846
5847 -- Calculate Net Taxable Income
5848 --
5849 NetTxbIncCalc;
5850
5851 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',58);
5852
5853 -- Setup the Out Parameters
5854 --
5855 -- Messages
5856 p_LibWrn := trc_LibWrn; -- Liability Warning
5857 p_OvrWrn := trc_OvrWrn; -- Override Warning
5858
5859 -- Pay Values
5860 trc_PayValSD := ( trc_LibFpNI
5861 + trc_LibFpFB
5862 + trc_LibFpTA
5863 + trc_LibFpBP
5864 + trc_LibFpAB
5865 + trc_LibFpAP
5866 + trc_LibFpPO
5867 );
5868 trc_PayValEC := trc_LibFpDR;
5869
5870 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',59);
5871
5872 -- Tax On's
5873 p_LibFpDR := trc_LibFpDR;
5874 p_LibFpNI := trc_LibFpNI;
5875 p_LibFpFB := trc_LibFpFB;
5876 p_LibFpTA := trc_LibFpTA;
5877 p_LibFpBP := trc_LibFpBP;
5878 p_LibFpAB := trc_LibFpAB;
5879 p_LibFpAP := trc_LibFpAP;
5880 p_LibFpPO := trc_LibFpPO;
5881 p_PayValSD := trc_PayValSD;
5882 p_PayValEC := trc_PayValEC;
5883
5884 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',60);
5885
5886 -- Indicators, Splits and Updates
5887 p_PayeVal := trc_PayeVal;
5888 p_SiteVal := trc_SiteVal;
5889 p_It3Ind := trc_It3Ind;
5890 p_PfUpdFig := trc_PfUpdFig;
5891 p_RaUpdFig := trc_RaUpdFig;
5892 p_OUpdFig := trc_OUpdFig;
5893 p_NtiUpdFig := trc_NtiUpdFig;
5894 p_PerRFITotPkgPTD_Upd := trc_PerRFITotPkgPTD_Upd;
5895 p_PerNRFITotPkgPTD_Upd := trc_PerNRFITotPkgPTD_Upd;
5896 p_AnnRFITotPkgPTD_Upd := trc_AnnRFITotPkgPTD_Upd;
5897 p_AnnNRFITotPkgPTD_Upd := trc_AnnNRFITotPkgPTD_Upd;
5898
5899 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',61);
5900
5901 -- Execute The Tax Trace
5902 --
5903 py_za_tx_utl_01032004.Trace;
5904
5905 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',62);
5906
5907 -- Clear Globals
5908 --
5909 py_za_tx_utl_01032004.ClearGlobals;
5910
5911 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',63);
5912
5913 -- End off Trace File
5914 WrtHrTrc('------------------------------------------------------------');
5915 WrtHrTrc('-- End of Tax Trace File --');
5916 WrtHrTrc('------------------------------------------------------------');
5917 WrtHrTrc(' -- ');
5918
5919 -- Call hr_utility stop procedure
5920 py_za_tx_utl_01032004.StopHrTrace;
5921
5922 --dbms_debug.debug_off;
5923
5924 RETURN l_Dum;
5925
5926 EXCEPTION
5927 WHEN xpt_FxdPrc THEN
5928 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',66);
5929 WrtHrTrc('Sql error msg: Fixed Percentage was not entered for Fixed Percentage of Total Package Pension Basis');
5930 py_za_tx_utl_01032004.StopHrTrace;
5931 hr_utility.set_message(801, 'Fixed Percentage not entered');
5932 py_za_tx_utl_01032004.ClearGlobals;
5933 hr_utility.raise_error;
5934 WHEN xpt_E THEN
5935 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',64);
5936 WrtHrTrc('xpt_Msg: '||xpt_Msg);
5937 py_za_tx_utl_01032004.StopHrTrace;
5938 hr_utility.set_message(801, xpt_Msg);
5939 py_za_tx_utl_01032004.ClearGlobals;
5940 hr_utility.raise_error;
5941 WHEN OTHERS THEN
5942 hr_utility.set_location('py_za_tx_01032004.ZaTx_01032004',65);
5943 WrtHrTrc('Sql error code: '||TO_CHAR(SQLCODE));
5944 WrtHrTrc('Sql error msg: '||SUBSTR(SQLERRM(SQLCODE), 1, 100));
5945 py_za_tx_utl_01032004.StopHrTrace;
5946 hr_utility.set_message(801, 'ZaTx_01032004: '||TO_CHAR(SQLCODE));
5947 py_za_tx_utl_01032004.ClearGlobals;
5948 hr_utility.raise_error;
5949 END ZaTx_01032004;
5950
5951 END py_za_tx_01032004;
5952