DBA Data[Home] [Help]

APPS.PY_ZA_TX_UTL_01032005 dependencies on HR_UTILITY

Line 58: will be written to file - hr_utility

54:
55: PUBLIC PROCEDURES
56: StartHrTrace
57: Sets package global that determines if extra trace information
58: will be written to file - hr_utility
59: StopHrTrace
60: Stops trace information from being written to file
61: WriteHrTrace
62: Writes extra trace information to file if global

Line 131: -- Wrapper for hr_utility.trace_on --

127: -------------------------------------------------------------------------------
128:
129: -------------------------------------------------------------------------------
130: -- StartHrTrace --
131: -- Wrapper for hr_utility.trace_on --
132: -------------------------------------------------------------------------------
133: PROCEDURE StartHrTrace AS
134: BEGIN
135: IF g_HrTraceEnabled THEN

Line 136: hr_utility.trace_on(null,g_HrTracePipeName);

132: -------------------------------------------------------------------------------
133: PROCEDURE StartHrTrace AS
134: BEGIN
135: IF g_HrTraceEnabled THEN
136: hr_utility.trace_on(null,g_HrTracePipeName);
137: END IF;
138: END StartHrTrace;
139: -------------------------------------------------------------------------------
140: -- StartHrTrace --

Line 141: -- Function wrapper for hr_utility.trace_on --

137: END IF;
138: END StartHrTrace;
139: -------------------------------------------------------------------------------
140: -- StartHrTrace --
141: -- Function wrapper for hr_utility.trace_on --
142: -------------------------------------------------------------------------------
143: FUNCTION StartHrTrace(
144: p_HrTracePipeName VARCHAR2
145: ) RETURN VARCHAR2

Line 148: hr_utility.trace_on(null,p_HrTracePipeName);

144: p_HrTracePipeName VARCHAR2
145: ) RETURN VARCHAR2
146: AS
147: BEGIN
148: hr_utility.trace_on(null,p_HrTracePipeName);
149: RETURN p_HrTracePipeName;
150: END StartHrTrace;
151: -------------------------------------------------------------------------------
152: -- StopHrTrace --

Line 153: -- Wrapper for hr_utility.trace_off --

149: RETURN p_HrTracePipeName;
150: END StartHrTrace;
151: -------------------------------------------------------------------------------
152: -- StopHrTrace --
153: -- Wrapper for hr_utility.trace_off --
154: -------------------------------------------------------------------------------
155: PROCEDURE StopHrTrace AS
156: BEGIN
157: IF g_HrTraceEnabled THEN

Line 158: hr_utility.trace_off;

154: -------------------------------------------------------------------------------
155: PROCEDURE StopHrTrace AS
156: BEGIN
157: IF g_HrTraceEnabled THEN
158: hr_utility.trace_off;
159: END IF;
160: END StopHrTrace;
161: -------------------------------------------------------------------------------
162: -- StopHrTrace --

Line 163: -- Function wrapper for hr_utility.trace_off --

159: END IF;
160: END StopHrTrace;
161: -------------------------------------------------------------------------------
162: -- StopHrTrace --
163: -- Function wrapper for hr_utility.trace_off --
164: -------------------------------------------------------------------------------
165: FUNCTION StopHrTrace RETURN VARCHAR2 AS
166: BEGIN
167: hr_utility.trace_off;

Line 167: hr_utility.trace_off;

163: -- Function wrapper for hr_utility.trace_off --
164: -------------------------------------------------------------------------------
165: FUNCTION StopHrTrace RETURN VARCHAR2 AS
166: BEGIN
167: hr_utility.trace_off;
168: RETURN 'TRACE_OFF';
169: END StopHrTrace;
170: -------------------------------------------------------------------------------
171: -- WriteHrTrace --

Line 172: -- Wrapper for hr_utility.trace --

168: RETURN 'TRACE_OFF';
169: END StopHrTrace;
170: -------------------------------------------------------------------------------
171: -- WriteHrTrace --
172: -- Wrapper for hr_utility.trace --
173: -------------------------------------------------------------------------------
174: PROCEDURE WriteHrTrace(
175: p_Buffer VARCHAR2
176: )

Line 181: hr_utility.trace(p_Buffer);

177: AS
178: BEGIN
179: IF g_HrTraceEnabled THEN
180: -- Write the Line
181: hr_utility.trace(p_Buffer);
182: END IF;
183: END WriteHrTrace;
184:
185:

Line 200: hr_utility.set_location('py_za_tx_utl_01032005.GlbVal',1);

196: AS
197: -- Variables
198: l_GlbVal t_balance;
199: BEGIN
200: hr_utility.set_location('py_za_tx_utl_01032005.GlbVal',1);
201: WriteHrTrace('p_GlbNme :'||p_GlbNme);
202: WriteHrTrace('p_EffDte :'||to_char(p_EffDte,'DD/MM/YYYY'));
203: --
204: SELECT TO_NUMBER(global_value)

Line 210: hr_utility.set_location('py_za_tx_utl_01032005.GlbVal',2);

206: FROM ff_globals_f
207: WHERE p_EffDte between effective_start_date and effective_end_date
208: AND global_name = p_GlbNme;
209:
210: hr_utility.set_location('py_za_tx_utl_01032005.GlbVal',2);
211: RETURN l_GlbVal;
212:
213: EXCEPTION
214: WHEN OTHERS THEN

Line 234: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncYtd',1);

230:
231: -------------------------------------------------------------------------------
232: BEGIN -- MAIN --
233: -------------------------------------------------------------------------------
234: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncYtd',1);
235:
236: l_tot_txb_prd_inc_ytd :=
237: ( py_za_tx_01032005.bal_TOT_TXB_NI_YTD
238: + py_za_tx_01032005.bal_TOT_TXB_FB_YTD

Line 241: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncYtd',2);

237: ( py_za_tx_01032005.bal_TOT_TXB_NI_YTD
238: + py_za_tx_01032005.bal_TOT_TXB_FB_YTD
239: + py_za_tx_01032005.bal_TOT_TXB_TA_YTD
240: );
241: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncYtd',2);
242: RETURN l_tot_txb_prd_inc_ytd;
243:
244: EXCEPTION
245: WHEN OTHERS THEN

Line 246: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncYtd',3);

242: RETURN l_tot_txb_prd_inc_ytd;
243:
244: EXCEPTION
245: WHEN OTHERS THEN
246: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncYtd',3);
247: IF py_za_tx_01032005.xpt_Msg = 'No Error' THEN
248: py_za_tx_01032005.xpt_Msg := 'TotPrdTxbIncYtd: '||TO_CHAR(SQLCODE);
249: END IF;
250: RAISE py_za_tx_01032005.xpt_E;

Line 267: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncPtd',1);

263:
264: -------------------------------------------------------------------------------
265: BEGIN -- MAIN --
266: -------------------------------------------------------------------------------
267: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncPtd',1);
268:
269: l_tot_txb_prd_inc_ptd :=
270: ( py_za_tx_01032005.bal_TOT_TXB_NI_PTD
271: + py_za_tx_01032005.bal_TOT_TXB_FB_PTD

Line 274: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncPtd',2);

270: ( py_za_tx_01032005.bal_TOT_TXB_NI_PTD
271: + py_za_tx_01032005.bal_TOT_TXB_FB_PTD
272: + py_za_tx_01032005.bal_TOT_TXB_TA_PTD
273: );
274: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncPtd',2);
275: RETURN l_tot_txb_prd_inc_ptd;
276:
277: EXCEPTION
278: WHEN OTHERS THEN

Line 279: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncPtd',3);

275: RETURN l_tot_txb_prd_inc_ptd;
276:
277: EXCEPTION
278: WHEN OTHERS THEN
279: hr_utility.set_location('py_za_tx_utl_01032005.TotPrdTxbIncPtd',3);
280: IF py_za_tx_01032005.xpt_Msg = 'No Error' THEN
281: py_za_tx_01032005.xpt_Msg := 'TotPrdTxbIncPtd: '||TO_CHAR(SQLCODE);
282: END IF;
283: RAISE py_za_tx_01032005.xpt_E;

Line 300: hr_utility.set_location('py_za_tx_utl_01032005.NegPtd',1);

296:
297: -------------------------------------------------------------------
298: BEGIN -- NegPtd - MAIN --
299: -------------------------------------------------------------------
300: hr_utility.set_location('py_za_tx_utl_01032005.NegPtd',1);
301: -- If any period ptd income value is negative
302: -- a site calc has to be done
303:
304: py_za_tx_01032005.trc_NorIncPtd := py_za_tx_01032005.bal_TOT_TXB_NI_PTD;

Line 316: hr_utility.set_location('py_za_tx_utl_01032005.NegPtd',2);

312: , py_za_tx_01032005.trc_TrvAllPtd
313: , py_za_tx_01032005.trc_BonProPtd
314: ) < 0
315: THEN
316: hr_utility.set_location('py_za_tx_utl_01032005.NegPtd',2);
317: py_za_tx_01032005.trc_NegPtd := TRUE;
318: END IF;
319:
320: hr_utility.set_location('py_za_tx_utl_01032005.NegPtd',3);

Line 320: hr_utility.set_location('py_za_tx_utl_01032005.NegPtd',3);

316: hr_utility.set_location('py_za_tx_utl_01032005.NegPtd',2);
317: py_za_tx_01032005.trc_NegPtd := TRUE;
318: END IF;
319:
320: hr_utility.set_location('py_za_tx_utl_01032005.NegPtd',3);
321: RETURN py_za_tx_01032005.trc_NegPtd;
322:
323: EXCEPTION
324: WHEN OTHERS THEN

Line 338: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',1);

334: FUNCTION LatePayPeriod RETURN BOOLEAN AS
335: -- Variables
336: l_CurTxYear NUMBER(15);
337: BEGIN
338: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',1);
339: -- IF the employee's assignment ended before the current tax year
340: -- it's a Late Pay Period
341: IF py_za_tx_01032005.dbi_ZA_ACT_END_DTE < py_za_tx_01032005.dbi_ZA_TX_YR_STRT THEN
342:

Line 343: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',2);

339: -- IF the employee's assignment ended before the current tax year
340: -- it's a Late Pay Period
341: IF py_za_tx_01032005.dbi_ZA_ACT_END_DTE < py_za_tx_01032005.dbi_ZA_TX_YR_STRT THEN
342:
343: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',2);
344:
345: -- Valid Late Pay Period?
346: --
347: -- Current Tax Year

Line 350: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',3);

346: --
347: -- Current Tax Year
348: l_CurTxYear := to_number(to_char(py_za_tx_01032005.dbi_ZA_TX_YR_END,'YYYY'));
349:
350: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',3);
351:
352: IF (l_CurTxYear - py_za_tx_01032005.dbi_ZA_ASG_TX_YR) > 1 THEN
353: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',4);
354: hr_utility.set_message(801, 'Late Payment Across Two Tax Years!');

Line 353: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',4);

349:
350: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',3);
351:
352: IF (l_CurTxYear - py_za_tx_01032005.dbi_ZA_ASG_TX_YR) > 1 THEN
353: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',4);
354: hr_utility.set_message(801, 'Late Payment Across Two Tax Years!');
355: hr_utility.raise_error;
356: ELSE
357: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',5);

Line 354: hr_utility.set_message(801, 'Late Payment Across Two Tax Years!');

350: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',3);
351:
352: IF (l_CurTxYear - py_za_tx_01032005.dbi_ZA_ASG_TX_YR) > 1 THEN
353: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',4);
354: hr_utility.set_message(801, 'Late Payment Across Two Tax Years!');
355: hr_utility.raise_error;
356: ELSE
357: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',5);
358: RETURN TRUE;

Line 355: hr_utility.raise_error;

351:
352: IF (l_CurTxYear - py_za_tx_01032005.dbi_ZA_ASG_TX_YR) > 1 THEN
353: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',4);
354: hr_utility.set_message(801, 'Late Payment Across Two Tax Years!');
355: hr_utility.raise_error;
356: ELSE
357: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',5);
358: RETURN TRUE;
359: END IF;

Line 357: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',5);

353: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',4);
354: hr_utility.set_message(801, 'Late Payment Across Two Tax Years!');
355: hr_utility.raise_error;
356: ELSE
357: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',5);
358: RETURN TRUE;
359: END IF;
360:
361: ELSE

Line 362: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',6);

358: RETURN TRUE;
359: END IF;
360:
361: ELSE
362: hr_utility.set_location('py_za_tx_utl_01032005.LatePayPeriod',6);
363: RETURN FALSE;
364: END IF;
365:
366: EXCEPTION

Line 381: hr_utility.set_location('py_za_tx_utl_01032005.LstPeriod',1);

377: BEGIN
378: -- Is this the last period for the tax year
379: --
380: IF py_za_tx_01032005.dbi_ZA_PAY_PRDS_LFT = 1 THEN
381: hr_utility.set_location('py_za_tx_utl_01032005.LstPeriod',1);
382: RETURN TRUE;
383: ELSE
384: hr_utility.set_location('py_za_tx_utl_01032005.LstPeriod',2);
385: RETURN FALSE;

Line 384: hr_utility.set_location('py_za_tx_utl_01032005.LstPeriod',2);

380: IF py_za_tx_01032005.dbi_ZA_PAY_PRDS_LFT = 1 THEN
381: hr_utility.set_location('py_za_tx_utl_01032005.LstPeriod',1);
382: RETURN TRUE;
383: ELSE
384: hr_utility.set_location('py_za_tx_utl_01032005.LstPeriod',2);
385: RETURN FALSE;
386: END IF;
387:
388: EXCEPTION

Line 406: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermInPeriod',1);

402: --
403: IF py_za_tx_01032005.dbi_ZA_ACT_END_DTE BETWEEN py_za_tx_01032005.dbi_ZA_CUR_PRD_STRT_DTE
404: AND py_za_tx_01032005.dbi_ZA_CUR_PRD_END_DTE
405: THEN
406: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermInPeriod',1);
407: RETURN TRUE;
408: ELSE
409: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermInPeriod',2);
410: RETURN FALSE;

Line 409: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermInPeriod',2);

405: THEN
406: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermInPeriod',1);
407: RETURN TRUE;
408: ELSE
409: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermInPeriod',2);
410: RETURN FALSE;
411: END IF;
412:
413: EXCEPTION

Line 429: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermPrePeriod',1);

425: BEGIN
426: -- Was the employee terminated before the current period
427: --
428: IF py_za_tx_01032005.dbi_ZA_ACT_END_DTE <= py_za_tx_01032005.dbi_ZA_CUR_PRD_STRT_DTE THEN
429: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermPrePeriod',1);
430: RETURN TRUE;
431: ELSE
432: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermPrePeriod',2);
433: RETURN FALSE;

Line 432: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermPrePeriod',2);

428: IF py_za_tx_01032005.dbi_ZA_ACT_END_DTE <= py_za_tx_01032005.dbi_ZA_CUR_PRD_STRT_DTE THEN
429: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermPrePeriod',1);
430: RETURN TRUE;
431: ELSE
432: hr_utility.set_location('py_za_tx_utl_01032005.EmpTermPrePeriod',2);
433: RETURN FALSE;
434: END IF;
435:
436: EXCEPTION

Line 469: hr_utility.set_location('py_za_tx_utl_01032005.PreErnPeriod',1);

465: WriteHrTrace('py_za_tx_01032005.trc_AnnPymPtd: '||to_char(py_za_tx_01032005.trc_AnnPymPtd));
466:
467: -- Annual Type PTD Income with no Period Type PTD Income
468: IF (py_za_tx_01032005.trc_AnnBonPtd + py_za_tx_01032005.trc_AnnPymPtd) <> 0 AND py_za_tx_01032005.trc_TxbIncPtd <= 0 THEN
469: hr_utility.set_location('py_za_tx_utl_01032005.PreErnPeriod',1);
470: RETURN TRUE;
471: ELSE
472: hr_utility.set_location('py_za_tx_utl_01032005.PreErnPeriod',2);
473: RETURN FALSE;

Line 472: hr_utility.set_location('py_za_tx_utl_01032005.PreErnPeriod',2);

468: IF (py_za_tx_01032005.trc_AnnBonPtd + py_za_tx_01032005.trc_AnnPymPtd) <> 0 AND py_za_tx_01032005.trc_TxbIncPtd <= 0 THEN
469: hr_utility.set_location('py_za_tx_utl_01032005.PreErnPeriod',1);
470: RETURN TRUE;
471: ELSE
472: hr_utility.set_location('py_za_tx_utl_01032005.PreErnPeriod',2);
473: RETURN FALSE;
474: END IF;
475:
476: EXCEPTION

Line 489: hr_utility.set_location('py_za_tx_utl_01032005.SitePeriod',1);

485: -------------------------------------------------------------------------------
486: FUNCTION SitePeriod RETURN BOOLEAN AS
487: BEGIN
488: IF LstPeriod OR EmpTermInPeriod OR EmpTermPrePeriod THEN
489: hr_utility.set_location('py_za_tx_utl_01032005.SitePeriod',1);
490: RETURN TRUE;
491: ELSE
492: hr_utility.set_location('py_za_tx_utl_01032005.SitePeriod',2);
493: RETURN FALSE;

Line 492: hr_utility.set_location('py_za_tx_utl_01032005.SitePeriod',2);

488: IF LstPeriod OR EmpTermInPeriod OR EmpTermPrePeriod THEN
489: hr_utility.set_location('py_za_tx_utl_01032005.SitePeriod',1);
490: RETURN TRUE;
491: ELSE
492: hr_utility.set_location('py_za_tx_utl_01032005.SitePeriod',2);
493: RETURN FALSE;
494: END IF;
495:
496: EXCEPTION

Line 513: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',1);

509: ------------
510: l_tot_inc_ytd t_balance;
511: l_tot_inc_ptd t_balance;
512: BEGIN
513: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',1);
514:
515: l_tot_inc_ytd := TotPrdTxbIncYtd;
516: l_tot_inc_ptd := TotPrdTxbIncPtd;
517:

Line 518: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',2);

514:
515: l_tot_inc_ytd := TotPrdTxbIncYtd;
516: l_tot_inc_ptd := TotPrdTxbIncPtd;
517:
518: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',2);
519:
520: IF py_za_tx_01032005.dbi_ZA_TX_YR_STRT < py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE THEN
521: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',3);
522:

Line 521: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',3);

517:
518: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',2);
519:
520: IF py_za_tx_01032005.dbi_ZA_TX_YR_STRT < py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE THEN
521: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',3);
522:
523: IF l_tot_inc_ytd = l_tot_inc_ptd THEN
524: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',3);
525: -- i.e. first pay period for the person

Line 524: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',3);

520: IF py_za_tx_01032005.dbi_ZA_TX_YR_STRT < py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE THEN
521: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',3);
522:
523: IF l_tot_inc_ytd = l_tot_inc_ptd THEN
524: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',3);
525: -- i.e. first pay period for the person
526: py_za_tx_01032005.trc_PrdFactor :=
527: ( py_za_tx_01032005.dbi_ZA_CUR_PRD_END_DTE
528: - py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE

Line 537: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',5);

533: - py_za_tx_01032005.dbi_ZA_CUR_PRD_STRT_DTE
534: + 1
535: );
536: ELSE
537: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',5);
538: py_za_tx_01032005.trc_PrdFactor := 1;
539: END IF;
540:
541: ELSE

Line 542: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',6);

538: py_za_tx_01032005.trc_PrdFactor := 1;
539: END IF;
540:
541: ELSE
542: hr_utility.set_location('py_za_tx_utl_01032005.PeriodFactor',6);
543: py_za_tx_01032005.trc_PrdFactor := 1;
544: END IF;
545:
546: WriteHrTrace('dbi_ZA_TX_YR_STRT: '

Line 572: hr_utility.set_location('py_za_tx_utl_01032005.PossiblePeriodsFactor',1);

568: -------------------------------------------------------------------------------
569: PROCEDURE PossiblePeriodsFactor AS
570: BEGIN
571: IF py_za_tx_01032005.dbi_ZA_TX_YR_STRT >= py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE THEN
572: hr_utility.set_location('py_za_tx_utl_01032005.PossiblePeriodsFactor',1);
573: py_za_tx_01032005.trc_PosFactor := 1;
574: ELSE
575: IF py_za_tx_01032005.trc_PrdFactor <> 1 THEN
576: hr_utility.set_location('py_za_tx_utl_01032005.PossiblePeriodsFactor',2);

Line 576: hr_utility.set_location('py_za_tx_utl_01032005.PossiblePeriodsFactor',2);

572: hr_utility.set_location('py_za_tx_utl_01032005.PossiblePeriodsFactor',1);
573: py_za_tx_01032005.trc_PosFactor := 1;
574: ELSE
575: IF py_za_tx_01032005.trc_PrdFactor <> 1 THEN
576: hr_utility.set_location('py_za_tx_utl_01032005.PossiblePeriodsFactor',2);
577: --
578: py_za_tx_01032005.trc_PosFactor :=
579: py_za_tx_01032005.dbi_ZA_DYS_IN_YR
580: / ( py_za_tx_01032005.dbi_ZA_TX_YR_END

Line 585: hr_utility.set_location('py_za_tx_utl_01032005.PossiblePeriodsFactor',3);

581: - py_za_tx_01032005.dbi_ZA_CUR_PRD_STRT_DTE
582: + 1
583: );
584: ELSE
585: hr_utility.set_location('py_za_tx_utl_01032005.PossiblePeriodsFactor',3);
586: --
587: py_za_tx_01032005.trc_PosFactor :=
588: py_za_tx_01032005.dbi_ZA_DYS_IN_YR
589: / ( py_za_tx_01032005.dbi_ZA_TX_YR_END

Line 616: hr_utility.set_location('py_za_tx_utl_01032005.Annualise',1);

612: l_AnnFig3 t_balance;
613: l_AnnFig4 t_balance;
614:
615: BEGIN
616: hr_utility.set_location('py_za_tx_utl_01032005.Annualise',1);
617: -- 1
618: l_AnnFig1 := p_PtdInc / py_za_tx_01032005.trc_PrdFactor;
619: -- 2
620: l_AnnFig2 := l_AnnFig1 * py_za_tx_01032005.dbi_ZA_PAY_PRDS_LFT;

Line 626: hr_utility.set_location('py_za_tx_utl_01032005.Annualise',2);

622: l_AnnFig3 := l_AnnFig2 + p_YtdInc - p_PtdInc;
623: -- 4
624: l_AnnFig4 := l_AnnFig3 * py_za_tx_01032005.trc_PosFactor;
625: --
626: hr_utility.set_location('py_za_tx_utl_01032005.Annualise',2);
627: --
628: WriteHrTrace('p_PtdInc: '||to_char(p_PtdInc));
629: WriteHrTrace('py_za_tx_01032005.trc_PrdFactor: '||to_char(py_za_tx_01032005.trc_PrdFactor));
630: WriteHrTrace('l_AnnFig1: '||to_char(l_AnnFig1));

Line 666: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',1);

662:
663: BEGIN
664: -- Setup the Globals
665: IF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN
666: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',1);
667: -- Employee Tax Year Start and End Dates
668: --
669: l_EndDate := py_za_tx_01032005.dbi_ZA_ASG_TX_YR_END;
670:

Line 671: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',2);

667: -- Employee Tax Year Start and End Dates
668: --
669: l_EndDate := py_za_tx_01032005.dbi_ZA_ASG_TX_YR_END;
670:
671: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',2);
672:
673: -- Global Values
674: l_ZA_TX_YR_END := l_EndDate;
675: l_ZA_ADL_TX_RBT := GlbVal('ZA_ADDITIONAL_TAX_REBATE',l_EndDate);

Line 680: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',3);

676: l_ZA_PRI_TX_RBT := GlbVal('ZA_PRIMARY_TAX_REBATE',l_EndDate);
677: l_ZA_PRI_TX_THRSHLD := GlbVal('ZA_PRIM_TAX_THRESHOLD',l_EndDate);
678: l_ZA_SC_TX_THRSHLD := GlbVal('ZA_SEC_TAX_THRESHOLD',l_EndDate);
679: ELSE
680: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',3);
681: -- Set locals to current values
682: l_ZA_TX_YR_END := py_za_tx_01032005.dbi_ZA_TX_YR_END;
683: l_ZA_ADL_TX_RBT := py_za_tx_01032005.glb_ZA_ADL_TX_RBT;
684: l_ZA_PRI_TX_RBT := py_za_tx_01032005.glb_ZA_PRI_TX_RBT;

Line 689: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',4);

685: l_ZA_PRI_TX_THRSHLD := py_za_tx_01032005.glb_ZA_PRI_TX_THRSHLD;
686: l_ZA_SC_TX_THRSHLD := py_za_tx_01032005.glb_ZA_SC_TX_THRSHLD;
687: END IF;
688:
689: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',4);
690:
691: -- Calculate the Rebate and Threshold Values
692: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',5);
693: -- Calculate the assignments 65 Year Date

Line 692: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',5);

688:
689: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',4);
690:
691: -- Calculate the Rebate and Threshold Values
692: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',5);
693: -- Calculate the assignments 65 Year Date
694: l_65Year := add_months(py_za_tx_01032005.dbi_PER_DTE_OF_BRTH,780);
695:
696: IF l_65Year <= l_ZA_TX_YR_END THEN

Line 697: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',6);

693: -- Calculate the assignments 65 Year Date
694: l_65Year := add_months(py_za_tx_01032005.dbi_PER_DTE_OF_BRTH,780);
695:
696: IF l_65Year <= l_ZA_TX_YR_END THEN
697: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',6);
698: -- give the extra abatement
699: py_za_tx_01032005.trc_Rebate := l_ZA_PRI_TX_RBT + l_ZA_ADL_TX_RBT;
700: py_za_tx_01032005.trc_Threshold := l_ZA_SC_TX_THRSHLD;
701: ELSE

Line 702: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',7);

698: -- give the extra abatement
699: py_za_tx_01032005.trc_Rebate := l_ZA_PRI_TX_RBT + l_ZA_ADL_TX_RBT;
700: py_za_tx_01032005.trc_Threshold := l_ZA_SC_TX_THRSHLD;
701: ELSE
702: hr_utility.set_location('py_za_tx_utl_01032005.SetRebates',7);
703: -- not eligable for extra abatement
704: py_za_tx_01032005.trc_Rebate := l_ZA_PRI_TX_RBT;
705: py_za_tx_01032005.trc_Threshold := l_ZA_PRI_TX_THRSHLD;
706: END IF;

Line 748: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',1);

744: --
745: -------------------------------------------------------------------------
746: IF py_za_tx_01032005.trc_CalTyp = 'NorCalc' THEN --
747: -------------------------------------------------------------------------
748: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',1);
749: -------------------------
750: -- Pension Fund Abatement
751: -------------------------
752: ---------------------

Line 766: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',17);

762: (p_ytdInc => py_za_tx_01032005.bal_TOT_RFI_INC_YTD
763: ,p_PtdInc => py_za_tx_01032005.bal_TOT_RFI_INC_PTD
764: );
765:
766: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',17);
767:
768: ---------------------
769: -- Annual Calculation
770: ---------------------

Line 783: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',18);

779:
780: --------------------------------
781: -- Arrear Pension Fund Abatement
782: --------------------------------
783: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',18);
784: -------------
785: -- Excess ITD
786: -------------
787: py_za_tx_01032005.trc_PerArrPenFnd :=

Line 809: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',19);

805:
806: -------------------------------
807: -- Retirement Annuity Abatement
808: -------------------------------
809: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',19);
810:
811: -------------
812: -- Current RA
813: -------------

Line 823: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',20);

819: ---------------------
820: -- Current NRFI Contr
821: ---------------------
822:
823: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',20);
824: py_za_tx_01032005.trc_PerNrfiCon :=
825: Annualise
826: ( p_YtdInc => py_za_tx_01032005.bal_TOT_NRFI_INC_YTD
827: , p_PtdInc => py_za_tx_01032005.bal_TOT_NRFI_INC_PTD

Line 839: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',21);

835: py_za_tx_01032005.trc_PerRetAnu
836: + py_za_tx_01032005.bal_ANN_RA_YTD;
837:
838:
839: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',21);
840: py_za_tx_01032005.trc_AnnNrfiCon :=
841: py_za_tx_01032005.trc_PerNrfiCon
842: + py_za_tx_01032005.bal_TOT_NRFI_AN_INC_YTD;
843:

Line 848: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',22);

844:
845: --------------------------------------
846: -- Arrear Retirement Annuity Abatement
847: --------------------------------------
848: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',22);
849: -------------
850: -- Excess ITD
851: -------------
852: py_za_tx_01032005.trc_PerArrRetAnu :=

Line 873: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',23);

869:
870: ------------------------
871: -- Medical Aid Abatement
872: ------------------------
873: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',23);
874: py_za_tx_01032005.trc_MedAidAbm :=
875: Annualise
876: ( p_YtdInc => py_za_tx_01032005.bal_MED_CONTR_YTD
877: , p_PtdInc => py_za_tx_01032005.bal_MED_CONTR_PTD

Line 892: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',24);

888: (p_YtdInc => py_za_tx_01032005.bal_EE_INC_PRO_POL_YTD
889: ,p_PtdInc => py_za_tx_01032005.bal_EE_INC_PRO_POL_PTD
890: );
891:
892: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',24);
893:
894: ---------------------
895: -- Annual Calculation
896: ---------------------

Line 905: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',25);

901:
902: -------------------------------------------------------------------------
903: ELSIF py_za_tx_01032005.trc_CalTyp IN ('YtdCalc','SitCalc') THEN --
904: -------------------------------------------------------------------------
905: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',25);
906: -------------------------
907: -- Pension Fund Abatement
908: -------------------------
909: ---------------------

Line 932: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',40);

928: py_za_tx_01032005.trc_AnnRfiCon :=
929: py_za_tx_01032005.trc_PerRfiCon
930: + py_za_tx_01032005.bal_TOT_RFI_AN_INC_YTD;
931:
932: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',40);
933:
934: --------------------------------
935: -- Arrear Pension Fund Abatement
936: --------------------------------

Line 937: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',41);

933:
934: --------------------------------
935: -- Arrear Pension Fund Abatement
936: --------------------------------
937: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',41);
938: -------------
939: -- Excess ITD
940: -------------
941: py_za_tx_01032005.trc_PerArrPenFnd :=

Line 963: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',42);

959:
960: -------------------------------
961: -- Retirement Annuity Abatement
962: -------------------------------
963: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',42);
964:
965: -------------
966: -- Current RA
967: -------------

Line 976: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',43);

972: ---------------------
973: -- Current NRFI Contr
974: ---------------------
975:
976: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',43);
977: py_za_tx_01032005.trc_PerNrfiCon :=
978: py_za_tx_01032005.bal_TOT_NRFI_INC_YTD
979: * py_za_tx_01032005.trc_SitFactor;
980:

Line 989: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',44);

985: py_za_tx_01032005.trc_PerRetAnu
986: + py_za_tx_01032005.bal_ANN_RA_YTD;
987:
988:
989: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',44);
990: py_za_tx_01032005.trc_AnnNrfiCon :=
991: py_za_tx_01032005.trc_PerNrfiCon
992: + py_za_tx_01032005.bal_TOT_NRFI_AN_INC_YTD;
993:

Line 998: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',45);

994:
995: --------------------------------------
996: -- Arrear Retirement Annuity Abatement
997: --------------------------------------
998: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',45);
999: -------------
1000: -- Excess ITD
1001: -------------
1002: py_za_tx_01032005.trc_PerArrRetAnu :=

Line 1026: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',46);

1022: py_za_tx_01032005.trc_MedAidAbm :=
1023: py_za_tx_01032005.bal_MED_CONTR_YTD
1024: * py_za_tx_01032005.trc_SitFactor;
1025:
1026: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',46);
1027:
1028: ---------------------------
1029: -- Income Protection Policy
1030: ---------------------------

Line 1039: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',47);

1035: py_za_tx_01032005.trc_PerIncProPolAbm :=
1036: py_za_tx_01032005.bal_EE_INC_PRO_POL_YTD
1037: * py_za_tx_01032005.trc_SitFactor;
1038:
1039: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',47);
1040:
1041: ---------------------
1042: -- Annual Calculation
1043: ---------------------

Line 1052: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',48);

1048:
1049: -------------------------------------------------------------------------
1050: ELSIF py_za_tx_01032005.trc_CalTyp = 'CalCalc' THEN --
1051: -------------------------------------------------------------------------
1052: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',48);
1053: -------------------------
1054: -- Pension Fund Abatement
1055: -------------------------
1056: ---------------------

Line 1082: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',61);

1078:
1079: --------------------------------
1080: -- Arrear Pension Fund Abatement
1081: --------------------------------
1082: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',61);
1083: -------------
1084: -- Excess ITD
1085: -------------
1086: py_za_tx_01032005.trc_PerArrPenFnd :=

Line 1106: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',62);

1102:
1103: -------------------------------
1104: -- Retirement Annuity Abatement
1105: -------------------------------
1106: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',62);
1107:
1108: -------------
1109: -- Current RA
1110: -------------

Line 1119: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',63);

1115: ---------------------
1116: -- Current NRFI Contr
1117: ---------------------
1118:
1119: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',63);
1120: py_za_tx_01032005.trc_PerNrfiCon :=
1121: py_za_tx_01032005.bal_TOT_NRFI_INC_CYTD
1122: * py_za_tx_01032005.trc_SitFactor;
1123:

Line 1132: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',64);

1128: py_za_tx_01032005.trc_PerRetAnu
1129: + py_za_tx_01032005.bal_ANN_RA_YTD;
1130:
1131:
1132: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',64);
1133: py_za_tx_01032005.trc_AnnNrfiCon :=
1134: py_za_tx_01032005.trc_PerNrfiCon
1135: + py_za_tx_01032005.bal_TOT_NRFI_AN_INC_YTD;
1136:

Line 1141: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',65);

1137:
1138: --------------------------------------
1139: -- Arrear Retirement Annuity Abatement
1140: --------------------------------------
1141: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',65);
1142: -------------
1143: -- Excess ITD
1144: -------------
1145: py_za_tx_01032005.trc_PerArrRetAnu := py_za_tx_01032005.bal_EXC_ARR_RA_ITD;

Line 1179: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',66);

1175: py_za_tx_01032005.trc_PerIncProPolAbm :=
1176: py_za_tx_01032005.bal_EE_INC_PRO_POL_CYTD
1177: * py_za_tx_01032005.trc_SitFactor;
1178:
1179: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',66);
1180:
1181: ---------------------
1182: -- Annual Calculation
1183: ---------------------

Line 1192: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',67);

1188:
1189: -------------------------------------------------------------------------
1190: ELSIF py_za_tx_01032005.trc_CalTyp IN ('BasCalc') THEN --
1191: -------------------------------------------------------------------------
1192: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',67);
1193: -------------------------
1194: -- Pension Fund Abatement
1195: -------------------------
1196: ---------------------

Line 1204: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',78);

1200: py_za_tx_01032005.trc_AnnPenFnd := py_za_tx_01032005.bal_ANN_PF_YTD;
1201: -- Annual Rfi Contribution
1202: py_za_tx_01032005.trc_AnnRfiCon := py_za_tx_01032005.bal_TOT_RFI_AN_INC_YTD;
1203:
1204: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',78);
1205:
1206: --------------------------------
1207: -- Arrear Pension Fund Abatement
1208: --------------------------------

Line 1209: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',79);

1205:
1206: --------------------------------
1207: -- Arrear Pension Fund Abatement
1208: --------------------------------
1209: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',79);
1210: -------------
1211: -- Excess ITD
1212: -------------
1213: py_za_tx_01032005.trc_PerArrPenFnd := py_za_tx_01032005.bal_EXC_ARR_PEN_ITD;

Line 1225: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',80);

1221:
1222: -------------------------------
1223: -- Retirement Annuity Abatement
1224: -------------------------------
1225: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',80);
1226:
1227: ------------
1228: -- Annual RA
1229: ------------

Line 1232: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',81);

1228: -- Annual RA
1229: ------------
1230: py_za_tx_01032005.trc_AnnRetAnu := py_za_tx_01032005.bal_ANN_RA_YTD;
1231:
1232: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',81);
1233: py_za_tx_01032005.trc_AnnNrfiCon := py_za_tx_01032005.bal_TOT_NRFI_AN_INC_YTD;
1234:
1235:
1236: --------------------------------------

Line 1239: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',82);

1235:
1236: --------------------------------------
1237: -- Arrear Retirement Annuity Abatement
1238: --------------------------------------
1239: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',82);
1240: -------------
1241: -- Excess ITD
1242: -------------
1243: py_za_tx_01032005.trc_PerArrRetAnu := py_za_tx_01032005.bal_EXC_ARR_RA_ITD;

Line 1256: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',83);

1252: -- Medical Aid Abatement
1253: ------------------------
1254: py_za_tx_01032005.trc_MedAidAbm := 0;
1255:
1256: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',83);
1257:
1258:
1259: ---------------------------
1260: -- Income Protection Policy

Line 1272: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',84);

1268:
1269: -------------------------------------------------------------------------
1270: ELSIF py_za_tx_01032005.trc_CalTyp = 'SeaCalc' THEN --
1271: -------------------------------------------------------------------------
1272: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',84);
1273: -------------------------
1274: -- Pension Fund Abatement
1275: -------------------------
1276: ---------------------

Line 1308: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',85);

1304:
1305: -------------------------------
1306: -- Retirement Annuity Abatement
1307: -------------------------------
1308: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',85);
1309:
1310: -------------
1311: -- Current RA
1312: -------------

Line 1321: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',86);

1317: ---------------------
1318: -- Current NRFI Contr
1319: ---------------------
1320:
1321: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',86);
1322: py_za_tx_01032005.trc_PerNrfiCon :=
1323: py_za_tx_01032005.bal_TOT_NRFI_INC_RUN
1324: * py_za_tx_01032005.trc_SitFactor;
1325:

Line 1335: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',87);

1331: py_za_tx_01032005.trc_PerRetAnu
1332: + py_za_tx_01032005.bal_ANN_RA_RUN;
1333:
1334:
1335: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',87);
1336: py_za_tx_01032005.trc_AnnNrfiCon :=
1337: py_za_tx_01032005.trc_PerNrfiCon
1338: + py_za_tx_01032005.bal_TOT_NRFI_AN_INC_RUN;
1339:

Line 1365: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',88);

1361: py_za_tx_01032005.trc_PerIncProPolAbm :=
1362: py_za_tx_01032005.bal_EE_INC_PRO_POL_RUN
1363: * py_za_tx_01032005.trc_SitFactor;
1364:
1365: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',88);
1366:
1367: ---------------------
1368: -- Annual Calculation
1369: ---------------------

Line 1378: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',89);

1374:
1375: -------------------------------------------------------------------------
1376: ELSIF py_za_tx_01032005.trc_CalTyp = 'LteCalc' THEN --
1377: -------------------------------------------------------------------------
1378: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',89);
1379: -------------------------
1380: -- Pension Fund Abatement
1381: -------------------------
1382: ---------------------

Line 1406: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',104);

1402:
1403: --------------------------------
1404: -- Arrear Pension Fund Abatement
1405: --------------------------------
1406: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',104);
1407: -------------
1408: -- Excess ITD
1409: -------------
1410: py_za_tx_01032005.trc_PerArrPenFnd :=

Line 1428: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',105);

1424:
1425: -------------------------------
1426: -- Retirement Annuity Abatement
1427: -------------------------------
1428: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',105);
1429: -------------
1430: -- Current RA
1431: -------------
1432: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',106);

Line 1432: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',106);

1428: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',105);
1429: -------------
1430: -- Current RA
1431: -------------
1432: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',106);
1433: -- Calculate RA Contribution
1434: py_za_tx_01032005.trc_PerRetAnu :=
1435: py_za_tx_01032005.bal_CUR_RA_YTD;
1436: ---------------------

Line 1440: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',107);

1436: ---------------------
1437: -- Current NRFI Contr
1438: ---------------------
1439:
1440: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',107);
1441: py_za_tx_01032005.trc_PerNrfiCon :=
1442: py_za_tx_01032005.bal_TOT_NRFI_INC_YTD;
1443:
1444:

Line 1453: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',108);

1449: py_za_tx_01032005.trc_PerRetAnu
1450: + py_za_tx_01032005.bal_ANN_RA_YTD;
1451:
1452:
1453: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',108);
1454: py_za_tx_01032005.trc_AnnNrfiCon :=
1455: py_za_tx_01032005.trc_PerNrfiCon
1456: + py_za_tx_01032005.bal_TOT_NRFI_AN_INC_YTD;
1457:

Line 1462: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',109);

1458:
1459: --------------------------------------
1460: -- Arrear Retirement Annuity Abatement
1461: --------------------------------------
1462: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',109);
1463: -------------
1464: -- Excess ITD
1465: -------------
1466: py_za_tx_01032005.trc_PerArrRetAnu :=

Line 1497: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',110);

1493: -- Annualise Income Protection Policy Contributions
1494: py_za_tx_01032005.trc_PerIncProPolAbm :=
1495: py_za_tx_01032005.bal_EE_INC_PRO_POL_YTD;
1496:
1497: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',110);
1498:
1499: ---------------------
1500: -- Annual Calculation
1501: ---------------------

Line 1510: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',111);

1506:
1507: -------------------------------------------------------------------------
1508: ELSIF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN --
1509: -------------------------------------------------------------------------
1510: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',111);
1511: -------------------------
1512: -- Pension Fund Abatement
1513: -------------------------
1514: ---------------------

Line 1540: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',118);

1536:
1537: --------------------------------
1538: -- Arrear Pension Fund Abatement
1539: --------------------------------
1540: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',118);
1541: -------------
1542: -- Excess ITD
1543: -------------
1544: py_za_tx_01032005.trc_PerArrPenFnd :=

Line 1564: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',119);

1560:
1561: -------------------------------
1562: -- Retirement Annuity Abatement
1563: -------------------------------
1564: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',119);
1565:
1566: -------------
1567: -- Current RA
1568: -------------

Line 1577: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',120);

1573: ---------------------
1574: -- Current NRFI Contr
1575: ---------------------
1576:
1577: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',120);
1578: py_za_tx_01032005.trc_PerNrfiCon :=
1579: py_za_tx_01032005.bal_TOT_NRFI_INC_PTD
1580: * py_za_tx_01032005.trc_SitFactor;
1581:

Line 1591: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',121);

1587: py_za_tx_01032005.trc_PerRetAnu
1588: + py_za_tx_01032005.bal_ANN_RA_PTD;
1589:
1590:
1591: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',121);
1592: py_za_tx_01032005.trc_AnnNrfiCon :=
1593: py_za_tx_01032005.trc_PerNrfiCon
1594: + py_za_tx_01032005.bal_TOT_NRFI_AN_INC_PTD;
1595:

Line 1600: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',122);

1596:
1597: --------------------------------------
1598: -- Arrear Retirement Annuity Abatement
1599: --------------------------------------
1600: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',122);
1601: -------------
1602: -- Excess ITD
1603: -------------
1604: py_za_tx_01032005.trc_PerArrRetAnu :=

Line 1639: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',123);

1635: py_za_tx_01032005.trc_PerIncProPolAbm :=
1636: py_za_tx_01032005.bal_EE_INC_PRO_POL_PTD
1637: * py_za_tx_01032005.trc_SitFactor;
1638:
1639: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',123);
1640:
1641: ---------------------
1642: -- Annual Calculation
1643: ---------------------

Line 1657: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',124);

1653:
1654: ----------------------------------------------------------------------------
1655: -- CALCULATE THE ABATEMENTS --
1656: ----------------------------------------------------------------------------
1657: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',124);
1658: -- Check the Calculation Type
1659: IF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN
1660: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',125);
1661: -- Employee Tax Year Start and End Dates

Line 1660: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',125);

1656: ----------------------------------------------------------------------------
1657: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',124);
1658: -- Check the Calculation Type
1659: IF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN
1660: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',125);
1661: -- Employee Tax Year Start and End Dates
1662: --
1663: l_EndDate := py_za_tx_01032005.dbi_ZA_ASG_TX_YR_END;
1664:

Line 1665: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',126);

1661: -- Employee Tax Year Start and End Dates
1662: --
1663: l_EndDate := py_za_tx_01032005.dbi_ZA_ASG_TX_YR_END;
1664:
1665: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',126);
1666:
1667: -- Global Values
1668: l_ZA_TX_YR_END := l_EndDate;
1669: l_ZA_ARR_PF_AN_MX_ABT := GlbVal('ZA_ARREAR_PEN_AN_MAX_ABATE',l_EndDate);

Line 1677: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',127);

1673: l_ZA_RA_AN_MX_ABT := GlbVal('ZA_RA_AN_MAX_ABATE' ,l_EndDate);
1674: l_ZA_RA_MX_PRC := GlbVal('ZA_RA_MAX_PERC' ,l_EndDate);
1675:
1676: ELSE
1677: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',127);
1678: -- Set locals to current values
1679: l_ZA_TX_YR_END := py_za_tx_01032005.dbi_ZA_TX_YR_END;
1680: l_ZA_ARR_PF_AN_MX_ABT := py_za_tx_01032005.glb_ZA_ARR_PF_AN_MX_ABT;
1681: l_ZA_ARR_RA_AN_MX_ABT := py_za_tx_01032005.glb_ZA_ARR_RA_AN_MX_ABT;

Line 1798: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',128);

1794: IF l_65Year > l_ZA_TX_YR_END THEN
1795: py_za_tx_01032005.trc_MedAidAbm := 0;
1796: END IF;
1797:
1798: hr_utility.set_location('py_za_tx_utl_01032005.Abatements',128);
1799:
1800: -------------------
1801: -- Total Abatements
1802: -------------------

Line 1856: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',1);

1852: l_PfExcessAmt NUMBER;
1853: l_RaExcessAmt NUMBER;
1854:
1855: BEGIN
1856: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',1);
1857: -- Pension Excess
1858: l_PfExcessAmt := ( py_za_tx_01032005.bal_ARR_PF_YTD
1859: + ( py_za_tx_01032005.bal_EXC_ARR_PEN_ITD
1860: - py_za_tx_01032005.bal_EXC_ARR_PEN_YTD

Line 1865: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',2);

1861: )
1862: ) - py_za_tx_01032005.glb_ZA_ARR_PF_AN_MX_ABT;
1863:
1864: IF l_PfExcessAmt > 0 THEN
1865: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',2);
1866: py_za_tx_01032005.trc_PfUpdFig := l_PfExcessAmt - py_za_tx_01032005.bal_EXC_ARR_PEN_ITD;
1867: ELSE
1868: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',3);
1869: py_za_tx_01032005.trc_PfUpdFig := -1*(py_za_tx_01032005.bal_EXC_ARR_PEN_ITD);

Line 1868: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',3);

1864: IF l_PfExcessAmt > 0 THEN
1865: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',2);
1866: py_za_tx_01032005.trc_PfUpdFig := l_PfExcessAmt - py_za_tx_01032005.bal_EXC_ARR_PEN_ITD;
1867: ELSE
1868: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',3);
1869: py_za_tx_01032005.trc_PfUpdFig := -1*(py_za_tx_01032005.bal_EXC_ARR_PEN_ITD);
1870: END IF;
1871:
1872: -- Retirement Annuity

Line 1880: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',4);

1876: )
1877: ) - py_za_tx_01032005.glb_ZA_ARR_RA_AN_MX_ABT;
1878:
1879: IF l_RaExcessAmt > 0 THEN
1880: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',4);
1881: py_za_tx_01032005.trc_RaUpdFig := l_RaExcessAmt - py_za_tx_01032005.bal_EXC_ARR_RA_ITD;
1882: ELSE
1883: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',5);
1884: py_za_tx_01032005.trc_RaUpdFig := -1*(py_za_tx_01032005.bal_EXC_ARR_RA_ITD);

Line 1883: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',5);

1879: IF l_RaExcessAmt > 0 THEN
1880: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',4);
1881: py_za_tx_01032005.trc_RaUpdFig := l_RaExcessAmt - py_za_tx_01032005.bal_EXC_ARR_RA_ITD;
1882: ELSE
1883: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',5);
1884: py_za_tx_01032005.trc_RaUpdFig := -1*(py_za_tx_01032005.bal_EXC_ARR_RA_ITD);
1885: END IF;
1886:
1887: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',6);

Line 1887: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',6);

1883: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',5);
1884: py_za_tx_01032005.trc_RaUpdFig := -1*(py_za_tx_01032005.bal_EXC_ARR_RA_ITD);
1885: END IF;
1886:
1887: hr_utility.set_location('py_za_tx_utl_01032005.ArrearExcess',6);
1888: WriteHrTrace('l_PfExcessAmt: '||to_char(l_PfExcessAmt));
1889: WriteHrTrace('l_RaExcessAmt: '||to_char(l_RaExcessAmt));
1890:
1891: EXCEPTION

Line 1915: hr_utility.set_location('py_za_tx_utl_01032005.GetTableValue',1);

1911: l_ColumnID pay_user_columns.user_column_id%TYPE;
1912: l_RowID pay_user_rows_f.user_row_id%TYPE;
1913: l_TableValue pay_user_column_instances_f.value%TYPE;
1914: BEGIN
1915: hr_utility.set_location('py_za_tx_utl_01032005.GetTableValue',1);
1916: -- Get the user_table_id
1917: --
1918: select put.user_table_id
1919: INTO l_UserTableID

Line 1924: hr_utility.set_location('py_za_tx_utl_01032005.GetTableValue',2);

1920: from pay_user_tables put
1921: where upper(put.user_table_name) = upper(p_TableName)
1922: AND put.legislation_code = 'ZA';
1923:
1924: hr_utility.set_location('py_za_tx_utl_01032005.GetTableValue',2);
1925: -- Get the user_column_id
1926: --
1927: select puc.user_column_id
1928: INTO l_ColumnID

Line 1935: hr_utility.set_location('py_za_tx_utl_01032005.GetTableValue',3);

1931: AND puc.legislation_code = 'ZA'
1932: and puc.business_group_id is null
1933: AND upper(puc.user_column_name) = upper(p_ColumnName);
1934:
1935: hr_utility.set_location('py_za_tx_utl_01032005.GetTableValue',3);
1936: -- Get the user_row_id
1937: --
1938: select pur.user_row_id
1939: INTO l_RowID

Line 1957: hr_utility.set_location('py_za_tx_utl_01032005.GetTableValue',4);

1953: , 'N', pur.row_high_range
1954: , p_RowValue-1
1955: );
1956:
1957: hr_utility.set_location('py_za_tx_utl_01032005.GetTableValue',4);
1958: -- Get the value
1959: --
1960: SELECT pucif.value
1961: INTO l_TableValue

Line 1969: hr_utility.set_location('py_za_tx_utl_01032005.GetTableValue',5);

1965: AND pucif.legislation_code = 'ZA'
1966: and p_EffectiveDate BETWEEN pucif.effective_start_date
1967: AND pucif.effective_end_date;
1968:
1969: hr_utility.set_location('py_za_tx_utl_01032005.GetTableValue',5);
1970: RETURN l_TableValue;
1971: EXCEPTION
1972: WHEN OTHERS THEN
1973: IF py_za_tx_01032005.xpt_Msg = 'No Error' THEN

Line 1996: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',1);

1992: tax_liability t_Balance;
1993: l_TxbAmt t_Balance;
1994:
1995: BEGIN
1996: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',1);
1997: -------------------------------------------------------------------------------
1998: -- First Check for a Tax Override
1999: -------------------------------------------------------------------------------
2000: IF py_za_tx_01032005.trc_OvrTxCalc AND py_za_tx_01032005.trc_OvrTyp = 'P' THEN

Line 2001: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',2);

1997: -------------------------------------------------------------------------------
1998: -- First Check for a Tax Override
1999: -------------------------------------------------------------------------------
2000: IF py_za_tx_01032005.trc_OvrTxCalc AND py_za_tx_01032005.trc_OvrTyp = 'P' THEN
2001: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',2);
2002: tax_liability := (p_Amt * py_za_tx_01032005.trc_OvrPrc) / 100;
2003: -------------------------------------------------------------------------------
2004: -- D = Directive Percentage
2005: -- P = Private Director wth Directive Percentage

Line 2008: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',3);

2004: -- D = Directive Percentage
2005: -- P = Private Director wth Directive Percentage
2006: -------------------------------------------------------------------------------
2007: ELSIF py_za_tx_01032005.dbi_TX_STA IN ('D','P') THEN
2008: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',3);
2009: tax_liability := (p_Amt * py_za_tx_01032005.dbi_TX_DIR_VAL) / 100;
2010: -------------------------------------------------------------------------------
2011: -- E = Close Corporation
2012: -------------------------------------------------------------------------------

Line 2014: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',4);

2010: -------------------------------------------------------------------------------
2011: -- E = Close Corporation
2012: -------------------------------------------------------------------------------
2013: ELSIF py_za_tx_01032005.dbi_TX_STA = 'E' THEN
2014: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',4);
2015: tax_liability := (p_Amt * py_za_tx_01032005.glb_ZA_CC_TX_PRC) / 100;
2016: -------------------------------------------------------------------------------
2017: -- F = Temporary Worker/Student
2018: -------------------------------------------------------------------------------

Line 2020: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',5);

2016: -------------------------------------------------------------------------------
2017: -- F = Temporary Worker/Student
2018: -------------------------------------------------------------------------------
2019: ELSIF py_za_tx_01032005.dbi_TX_STA = 'F' THEN
2020: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',5);
2021: tax_liability := (p_Amt * py_za_tx_01032005.glb_ZA_TMP_TX_RTE) / 100;
2022: -------------------------------------------------------------------------------
2023: -- J = Personal Service Company
2024: -------------------------------------------------------------------------------

Line 2026: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',6);

2022: -------------------------------------------------------------------------------
2023: -- J = Personal Service Company
2024: -------------------------------------------------------------------------------
2025: ELSIF py_za_tx_01032005.dbi_TX_STA = 'J' THEN
2026: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',6);
2027: tax_liability := (p_Amt * py_za_tx_01032005.glb_ZA_PER_SERV_COMP_PERC) / 100;
2028: -------------------------------------------------------------------------------
2029: -- K = Personal Service Trust
2030: -------------------------------------------------------------------------------

Line 2032: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',7);

2028: -------------------------------------------------------------------------------
2029: -- K = Personal Service Trust
2030: -------------------------------------------------------------------------------
2031: ELSIF py_za_tx_01032005.dbi_TX_STA = 'K' THEN
2032: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',7);
2033: tax_liability := (p_Amt * py_za_tx_01032005.glb_ZA_PER_SERV_TRST_PERC) / 100;
2034: -------------------------------------------------------------------------------
2035: -- L = Labour Broker
2036: -------------------------------------------------------------------------------

Line 2038: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',8);

2034: -------------------------------------------------------------------------------
2035: -- L = Labour Broker
2036: -------------------------------------------------------------------------------
2037: ELSIF py_za_tx_01032005.dbi_TX_STA = 'L' THEN
2038: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',8);
2039: tax_liability := (p_Amt * py_za_tx_01032005.glb_ZA_PER_SERV_COMP_PERC) / 100;
2040: -------------------------------------------------------------------------------
2041: -- A = Normal
2042: -- B = Provisional

Line 2047: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',9);

2043: -- G = Seasonal Worker
2044: -- M = Private Director
2045: -------------------------------------------------------------------------------
2046: ELSIF py_za_tx_01032005.dbi_TX_STA IN ('A','B','G','M') THEN
2047: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',9);
2048: -- Taxable Amount must be rounded off to two decimal places
2049: l_TxbAmt := round(p_Amt,2);
2050:
2051: -- effective date for the payroll_run

Line 2054: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',10);

2050:
2051: -- effective date for the payroll_run
2052: l_effective_date := py_za_tx_01032005.dbi_PAY_PROC_PRD_DTE_PD;
2053:
2054: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',10);
2055: l_fixed := GetTableValue('ZA_TAX_TABLE','Fixed',l_TxbAmt,l_effective_date);
2056: l_limit := GetTableValue('ZA_TAX_TABLE','Limit',l_TxbAmt,l_effective_date);
2057: l_percentage := GetTableValue('ZA_TAX_TABLE','Percentage',l_TxbAmt,l_effective_date);
2058: tax_liability := (l_fixed + ((l_TxbAmt - l_limit) * (l_percentage / 100))) - py_za_tx_01032005.trc_Rebate;

Line 2059: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',11);

2055: l_fixed := GetTableValue('ZA_TAX_TABLE','Fixed',l_TxbAmt,l_effective_date);
2056: l_limit := GetTableValue('ZA_TAX_TABLE','Limit',l_TxbAmt,l_effective_date);
2057: l_percentage := GetTableValue('ZA_TAX_TABLE','Percentage',l_TxbAmt,l_effective_date);
2058: tax_liability := (l_fixed + ((l_TxbAmt - l_limit) * (l_percentage / 100))) - py_za_tx_01032005.trc_Rebate;
2059: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',11);
2060: -------------------------------------------------------------------------------
2061: -- Tax Status invalid for the call to TaxLiability
2062: -------------------------------------------------------------------------------
2063: ELSE

Line 2064: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',12);

2060: -------------------------------------------------------------------------------
2061: -- Tax Status invalid for the call to TaxLiability
2062: -------------------------------------------------------------------------------
2063: ELSE
2064: hr_utility.set_location('py_za_tx_utl_01032005.TaxLiability',12);
2065: IF py_za_tx_01032005.xpt_Msg = 'No Error' THEN
2066: py_za_tx_01032005.xpt_Msg := 'TaxLiability: Invalid Tax Status';
2067: END IF;
2068: RAISE py_za_tx_01032005.xpt_E;

Line 2102: hr_utility.set_location('py_za_tx_utl_01032005.DeAnnualise',1);

2098: l_LiabRoy3 t_balance;
2099: l_LiabRoy4 t_balance;
2100: l_LiabFp t_balance;
2101: BEGIN
2102: hr_utility.set_location('py_za_tx_utl_01032005.DeAnnualise',1);
2103: -- 1
2104: l_LiabRoy1 := p_liab / py_za_tx_01032005.trc_PosFactor;
2105: -- 2
2106: l_LiabRoy2 := l_LiabRoy1 - p_TxOnYtd + p_TxOnPtd;

Line 2114: hr_utility.set_location('py_za_tx_utl_01032005.DeAnnualise',2);

2110: l_LiabRoy4 := l_LiabRoy3 * py_za_tx_01032005.trc_PrdFactor;
2111: -- 5
2112: l_LiabFp := l_LiabRoy4 - p_TxOnPtd;
2113: --
2114: hr_utility.set_location('py_za_tx_utl_01032005.DeAnnualise',2);
2115: --
2116: WriteHrTrace('p_liab: '||to_char(p_liab));
2117: WriteHrTrace('py_za_tx_01032005.trc_PosFactor: '||to_char(py_za_tx_01032005.trc_PosFactor));
2118: WriteHrTrace('l_LiabRoy1: '||to_char(l_LiabRoy1));

Line 2169: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',1);

2165: l_TotTxbRfi t_balance DEFAULT 0;
2166: l_GlbVal ff_globals_f.global_value%TYPE DEFAULT '0';
2167:
2168: BEGIN
2169: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',1);
2170: -- Retrieve Balance Type ID's
2171:
2172: SELECT balance_type_id
2173: INTO l_RfiBalID

Line 2181: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',3);

2177:
2178: -- Check Calc and setup correct values
2179: --
2180: IF py_za_tx_01032005.trc_CalTyp in ('DirCalc','NorCalc','SitCalc','YtdCalc') THEN
2181: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',3);
2182: -- Employee Tax Year Start and End Dates
2183: --
2184: l_StrtDate := GREATEST( py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE
2185: , py_za_tx_01032005.dbi_ZA_TX_YR_STRT

Line 2193: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',4);

2189: , py_za_tx_01032005.dbi_ZA_CUR_PRD_END_DTE
2190: );
2191:
2192: ELSIF py_za_tx_01032005.trc_CalTyp = 'CalCalc' THEN
2193: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',4);
2194: -- Employee Tax Year Start and End Dates
2195: --
2196: l_StrtDate := to_date('01-01-'||to_char(py_za_tx_01032005.dbi_ZA_TX_YR_STRT,'YYYY')||''||'','DD-MM-YYYY');
2197: l_EndDate := py_za_tx_01032005.dbi_ZA_TX_YR_STRT -1;

Line 2200: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',5);

2196: l_StrtDate := to_date('01-01-'||to_char(py_za_tx_01032005.dbi_ZA_TX_YR_STRT,'YYYY')||''||'','DD-MM-YYYY');
2197: l_EndDate := py_za_tx_01032005.dbi_ZA_TX_YR_STRT -1;
2198:
2199: ELSIF py_za_tx_01032005.trc_CalTyp = 'LteCalc' THEN
2200: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',5);
2201: -- Employee Tax Year Start and End Dates
2202: --
2203: l_StrtDate := py_za_tx_01032005.dbi_ZA_TX_YR_STRT;
2204: l_EndDate := py_za_tx_01032005.dbi_ZA_CUR_PRD_END_DTE;

Line 2207: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',6);

2203: l_StrtDate := py_za_tx_01032005.dbi_ZA_TX_YR_STRT;
2204: l_EndDate := py_za_tx_01032005.dbi_ZA_CUR_PRD_END_DTE;
2205:
2206: ELSIF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN
2207: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',6);
2208: -- Employee Tax Year Start and End Dates
2209: --
2210: l_StrtDate := py_za_tx_01032005.dbi_ZA_ASG_TX_YR_STRT;
2211: l_EndDate := py_za_tx_01032005.dbi_ZA_ASG_TX_YR_END;

Line 2214: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',7);

2210: l_StrtDate := py_za_tx_01032005.dbi_ZA_ASG_TX_YR_STRT;
2211: l_EndDate := py_za_tx_01032005.dbi_ZA_ASG_TX_YR_END;
2212: END IF;
2213:
2214: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',7);
2215:
2216: -- Loop through cursor and for every end date calculate the balance
2217: FOR v_Date IN c_GlbEffDte
2218: (l_StrtDate

Line 2224: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',11);

2220: )
2221: LOOP
2222: -- Rfi Travel Allowance
2223: --
2224: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',11);
2225: -- Check Calc Type
2226: IF py_za_tx_01032005.trc_CalTyp in ('DirCalc','NorCalc','SitCalc','YtdCalc','LteCalc','PstCalc') THEN
2227: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',12);
2228: -- Rfi Balance At That Date

Line 2227: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',12);

2223: --
2224: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',11);
2225: -- Check Calc Type
2226: IF py_za_tx_01032005.trc_CalTyp in ('DirCalc','NorCalc','SitCalc','YtdCalc','LteCalc','PstCalc') THEN
2227: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',12);
2228: -- Rfi Balance At That Date
2229: l_RfiYtd := py_za_bal.get_balance_value
2230: ( py_za_tx_01032005.con_ASG_ID
2231: , l_RfiBalID

Line 2236: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',13);

2232: , '_ASG_TAX_YTD'
2233: , v_Date.effective_end_date
2234: );
2235: ELSIF py_za_tx_01032005.trc_CalTyp = 'CalCalc' THEN
2236: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',13);
2237: -- Rfi Balance At That Date
2238: l_RfiYtd := py_za_bal.get_balance_value
2239: ( py_za_tx_01032005.con_ASG_ID
2240: , l_RfiBalID

Line 2265: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',14);

2261:
2262: -- Calculate the current Taxable Travel Allowance Value
2263: -- add this to any calculated in the loop
2264: --
2265: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',14);
2266: -- Check Calc TYPE
2267: IF py_za_tx_01032005.trc_CalTyp IN ('DirCalc','NorCalc','SitCalc','YtdCalc', 'LteCalc') THEN
2268: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',15);
2269: -- Balance Values

Line 2268: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',15);

2264: --
2265: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',14);
2266: -- Check Calc TYPE
2267: IF py_za_tx_01032005.trc_CalTyp IN ('DirCalc','NorCalc','SitCalc','YtdCalc', 'LteCalc') THEN
2268: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',15);
2269: -- Balance Values
2270: l_RfiYtd := py_za_tx_01032005.bal_TOT_TXB_TA_YTD;
2271: -- Global Value
2272: l_GlbVal := py_za_tx_01032005.glb_ZA_TRV_ALL_TX_PRC;

Line 2275: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',16);

2271: -- Global Value
2272: l_GlbVal := py_za_tx_01032005.glb_ZA_TRV_ALL_TX_PRC;
2273:
2274: ELSIF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN
2275: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',16);
2276: -- Balance Values
2277: l_RfiYtd := py_za_tx_01032005.bal_TOT_TXB_TA_PTD;
2278: -- Global Value
2279: SELECT TO_NUMBER(global_value)

Line 2286: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',17);

2282: WHERE l_EndDate between effective_start_date
2283: and effective_end_date
2284: AND global_name = 'ZA_CAR_ALLOW_TAX_PERC';
2285:
2286: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',17);
2287:
2288: ELSIF py_za_tx_01032005.trc_CalTyp = 'CalCalc' THEN
2289: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',18);
2290: -- Balance Values

Line 2289: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',18);

2285:
2286: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',17);
2287:
2288: ELSIF py_za_tx_01032005.trc_CalTyp = 'CalCalc' THEN
2289: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',18);
2290: -- Balance Values
2291: l_RfiYtd := py_za_tx_01032005.bal_TOT_TXB_TA_CYTD;
2292:
2293: -- Global Value

Line 2301: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',19);

2297: WHERE l_EndDate between effective_start_date
2298: and effective_end_date
2299: AND global_name = 'ZA_CAR_ALLOW_TAX_PERC';
2300:
2301: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',19);
2302:
2303: END IF;
2304:
2305: WriteHrTrace('l_RfiYtd: '||to_char(l_RfiYtd));

Line 2323: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',20);

2319: -- Update Globals
2320: --
2321: -- Check Calc Type
2322: IF py_za_tx_01032005.trc_CalTyp IN ('DirCalc','NorCalc','SitCalc','YtdCalc', 'LteCalc') THEN
2323: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',20);
2324: py_za_tx_01032005.bal_TOT_TXB_TA_YTD := l_TotTxbRfi;
2325: ELSIF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN
2326: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',21);
2327: py_za_tx_01032005.bal_TOT_TXB_TA_PTD := l_TotTxbRfi;

Line 2326: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',21);

2322: IF py_za_tx_01032005.trc_CalTyp IN ('DirCalc','NorCalc','SitCalc','YtdCalc', 'LteCalc') THEN
2323: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',20);
2324: py_za_tx_01032005.bal_TOT_TXB_TA_YTD := l_TotTxbRfi;
2325: ELSIF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN
2326: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',21);
2327: py_za_tx_01032005.bal_TOT_TXB_TA_PTD := l_TotTxbRfi;
2328: ELSIF py_za_tx_01032005.trc_CalTyp = 'CalCalc' THEN
2329: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',22);
2330: py_za_tx_01032005.bal_TOT_TXB_TA_CYTD := l_TotTxbRfi;

Line 2329: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',22);

2325: ELSIF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN
2326: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',21);
2327: py_za_tx_01032005.bal_TOT_TXB_TA_PTD := l_TotTxbRfi;
2328: ELSIF py_za_tx_01032005.trc_CalTyp = 'CalCalc' THEN
2329: hr_utility.set_location('py_za_tx_utl_01032005.TrvAll',22);
2330: py_za_tx_01032005.bal_TOT_TXB_TA_CYTD := l_TotTxbRfi;
2331: END IF;
2332:
2333: WriteHrTrace('l_TotTxbRfi: '||to_char(l_TotTxbRfi));

Line 2370: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',1);

2366: l_NewLib t_Balance; -- New Liability
2367: i NUMBER; -- Counter
2368:
2369: BEGIN
2370: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',1);
2371: -- Set up the Table
2372: t_Liabilities(1).Ovrrde := py_za_tx_01032005.trc_LibFpNIOvr;
2373: t_Liabilities(1).Lib := py_za_tx_01032005.trc_LibFpNI;
2374:

Line 2453: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',2);

2449: WriteHrTrace('l_TotNp: '||to_char(l_TotNp));
2450: -- Start Validation
2451: --
2452: IF l_TotLib = 0 THEN
2453: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',2);
2454: NULL;
2455: ELSIF l_TotLib > 0 THEN
2456: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',3);
2457: IF l_TotNp > 0 THEN

Line 2456: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',3);

2452: IF l_TotLib = 0 THEN
2453: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',2);
2454: NULL;
2455: ELSIF l_TotLib > 0 THEN
2456: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',3);
2457: IF l_TotNp > 0 THEN
2458: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',4);
2459: IF l_TotLib = l_TotNp THEN
2460: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',5);

Line 2458: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',4);

2454: NULL;
2455: ELSIF l_TotLib > 0 THEN
2456: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',3);
2457: IF l_TotNp > 0 THEN
2458: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',4);
2459: IF l_TotLib = l_TotNp THEN
2460: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',5);
2461: NULL;
2462: ELSIF l_TotLib > l_TotNp THEN

Line 2460: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',5);

2456: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',3);
2457: IF l_TotNp > 0 THEN
2458: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',4);
2459: IF l_TotLib = l_TotNp THEN
2460: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',5);
2461: NULL;
2462: ELSIF l_TotLib > l_TotNp THEN
2463: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',6);
2464: l_RecVal := l_TotLib - l_TotNp;

Line 2463: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',6);

2459: IF l_TotLib = l_TotNp THEN
2460: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',5);
2461: NULL;
2462: ELSIF l_TotLib > l_TotNp THEN
2463: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',6);
2464: l_RecVal := l_TotLib - l_TotNp;
2465: i:= 1;
2466:
2467: FOR i IN 1..7 LOOP

Line 2469: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',7);

2465: i:= 1;
2466:
2467: FOR i IN 1..7 LOOP
2468: IF t_Liabilities(i).Lib = 0 THEN
2469: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',7);
2470: NULL;
2471: ELSIF t_Liabilities(i).Lib > 0 THEN
2472: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',8);
2473: l_NewLib := t_Liabilities(i).Lib - LEAST(t_Liabilities(i).Lib,l_RecVal);

Line 2472: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',8);

2468: IF t_Liabilities(i).Lib = 0 THEN
2469: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',7);
2470: NULL;
2471: ELSIF t_Liabilities(i).Lib > 0 THEN
2472: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',8);
2473: l_NewLib := t_Liabilities(i).Lib - LEAST(t_Liabilities(i).Lib,l_RecVal);
2474: l_RecVal := l_RecVal - (t_Liabilities(i).Lib - l_NewLib);
2475: t_Liabilities(i).Lib := l_NewLib;
2476: py_za_tx_01032005.trc_LibWrn := 'Warning: Net Pay Balance not enough for Tax Recovery';

Line 2478: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',9);

2474: l_RecVal := l_RecVal - (t_Liabilities(i).Lib - l_NewLib);
2475: t_Liabilities(i).Lib := l_NewLib;
2476: py_za_tx_01032005.trc_LibWrn := 'Warning: Net Pay Balance not enough for Tax Recovery';
2477: ELSE -- lib < 0
2478: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',9);
2479: NULL;
2480: END IF;
2481: END LOOP;
2482:

Line 2484: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',10);

2480: END IF;
2481: END LOOP;
2482:
2483: ELSE -- l_TotLib > 0,l_TotNp > 0,l_TotLib < l_TotNp
2484: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',10);
2485: NULL;
2486: END IF;
2487:
2488: ELSE -- l_TotLib > 0,l_TotNp <= 0

Line 2489: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',11);

2485: NULL;
2486: END IF;
2487:
2488: ELSE -- l_TotLib > 0,l_TotNp <= 0
2489: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',11);
2490: l_RecVal := l_TotLib;
2491: i := 1;
2492:
2493: FOR i IN 1..7 LOOP

Line 2495: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',12);

2491: i := 1;
2492:
2493: FOR i IN 1..7 LOOP
2494: IF t_Liabilities(i).Lib > 0 THEN
2495: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',12);
2496: l_NewLib := t_Liabilities(i).Lib - LEAST(t_Liabilities(i).Lib,l_RecVal);
2497: l_RecVal := l_RecVal - (t_Liabilities(i).Lib - l_NewLib);
2498: t_Liabilities(i).Lib := l_NewLib;
2499: py_za_tx_01032005.trc_LibWrn := 'Warning: Net Pay Balance not enough for Tax Recovery';

Line 2505: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',13);

2501: END LOOP;
2502: END IF;
2503:
2504: ELSE -- l_TotLib < 0
2505: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',13);
2506: IF p_Rf THEN
2507: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',14);
2508: NULL;
2509: ELSE

Line 2507: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',14);

2503:
2504: ELSE -- l_TotLib < 0
2505: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',13);
2506: IF p_Rf THEN
2507: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',14);
2508: NULL;
2509: ELSE
2510: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',15);
2511: l_RecVal := l_TotLib;

Line 2510: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',15);

2506: IF p_Rf THEN
2507: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',14);
2508: NULL;
2509: ELSE
2510: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',15);
2511: l_RecVal := l_TotLib;
2512: i := 1;
2513: FOR i IN 1..7 LOOP
2514: IF t_Liabilities(i).Lib >= 0 THEN

Line 2515: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',16);

2511: l_RecVal := l_TotLib;
2512: i := 1;
2513: FOR i IN 1..7 LOOP
2514: IF t_Liabilities(i).Lib >= 0 THEN
2515: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',16);
2516: NULL;
2517: ELSE -- l_lib < 0
2518: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',17);
2519: -- Has the liability been Overridden?

Line 2518: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',17);

2514: IF t_Liabilities(i).Lib >= 0 THEN
2515: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',16);
2516: NULL;
2517: ELSE -- l_lib < 0
2518: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',17);
2519: -- Has the liability been Overridden?
2520: IF t_Liabilities(i).Ovrrde THEN
2521: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',18);
2522: NULL;

Line 2521: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',18);

2517: ELSE -- l_lib < 0
2518: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',17);
2519: -- Has the liability been Overridden?
2520: IF t_Liabilities(i).Ovrrde THEN
2521: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',18);
2522: NULL;
2523: ELSE
2524: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',19);
2525: l_NewLib := t_Liabilities(i).Lib - GREATEST(t_Liabilities(i).Lib,l_RecVal);

Line 2524: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',19);

2520: IF t_Liabilities(i).Ovrrde THEN
2521: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',18);
2522: NULL;
2523: ELSE
2524: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',19);
2525: l_NewLib := t_Liabilities(i).Lib - GREATEST(t_Liabilities(i).Lib,l_RecVal);
2526: l_RecVal := l_RecVal - (t_Liabilities(i).Lib - l_NewLib);
2527: t_Liabilities(i).Lib := l_NewLib;
2528: END IF;

Line 2534: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',20);

2530: END LOOP;
2531: END IF;
2532: END IF;
2533:
2534: hr_utility.set_location('py_za_tx_utl_01032005.ValidateTaxOns',20);
2535:
2536: py_za_tx_01032005.trc_LibFpNI := t_Liabilities(1).Lib;
2537: py_za_tx_01032005.trc_LibFpFB := t_Liabilities(2).Lib;
2538: py_za_tx_01032005.trc_LibFpTA := t_Liabilities(3).Lib;

Line 2573: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',1);

2569: l_StrtDte DATE;
2570:
2571: BEGIN
2572: IF py_za_tx_01032005.trc_OvrTxCalc AND py_za_tx_01032005.trc_OvrTyp = 'V' THEN
2573: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',1);
2574: IF LatePayPeriod THEN
2575: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',2);
2576: -- This will set the sitfactor = 1
2577: l_EndDte := py_za_tx_01032005.dbi_ZA_TX_YR_END;

Line 2575: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',2);

2571: BEGIN
2572: IF py_za_tx_01032005.trc_OvrTxCalc AND py_za_tx_01032005.trc_OvrTyp = 'V' THEN
2573: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',1);
2574: IF LatePayPeriod THEN
2575: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',2);
2576: -- This will set the sitfactor = 1
2577: l_EndDte := py_za_tx_01032005.dbi_ZA_TX_YR_END;
2578: l_StrtDte := py_za_tx_01032005.dbi_ZA_TX_YR_STRT;
2579: ELSE

Line 2580: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',3);

2576: -- This will set the sitfactor = 1
2577: l_EndDte := py_za_tx_01032005.dbi_ZA_TX_YR_END;
2578: l_StrtDte := py_za_tx_01032005.dbi_ZA_TX_YR_STRT;
2579: ELSE
2580: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',3);
2581: l_EndDte := LEAST(py_za_tx_01032005.dbi_ZA_ACT_END_DTE, py_za_tx_01032005.dbi_ZA_CUR_PRD_END_DTE);
2582: l_StrtDte := GREATEST(py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE, py_za_tx_01032005.dbi_ZA_TX_YR_STRT);
2583: END IF;
2584:

Line 2586: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',4);

2582: l_StrtDte := GREATEST(py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE, py_za_tx_01032005.dbi_ZA_TX_YR_STRT);
2583: END IF;
2584:
2585: ELSIF py_za_tx_01032005.trc_CalTyp = 'YtdCalc' THEN
2586: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',4);
2587: l_EndDte := py_za_tx_01032005.dbi_ZA_CUR_PRD_STRT_DTE - 1;
2588: l_StrtDte := GREATEST(py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE, py_za_tx_01032005.dbi_ZA_TX_YR_STRT);
2589:
2590: ELSIF py_za_tx_01032005.trc_CalTyp = 'CalCalc' THEN

Line 2591: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',5);

2587: l_EndDte := py_za_tx_01032005.dbi_ZA_CUR_PRD_STRT_DTE - 1;
2588: l_StrtDte := GREATEST(py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE, py_za_tx_01032005.dbi_ZA_TX_YR_STRT);
2589:
2590: ELSIF py_za_tx_01032005.trc_CalTyp = 'CalCalc' THEN
2591: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',5);
2592: l_EndDte := py_za_tx_01032005.dbi_ZA_TX_YR_STRT - 1;
2593: l_StrtDte := GREATEST(py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE,
2594: to_date('01/01/'||to_char(to_number(to_char(py_za_tx_01032005.dbi_ZA_TX_YR_END,'YYYY'))-1),'DD/MM/YYYY'));
2595:

Line 2601: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',6);

2597: ( py_za_tx_01032005.dbi_ZA_ASG_TX_RTR_PRD = 'Y'
2598: OR py_za_tx_01032005.trc_OvrTxCalc
2599: OR py_za_tx_01032005.trc_NegPtd
2600: )THEN
2601: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',6);
2602: l_EndDte := LEAST(py_za_tx_01032005.dbi_ZA_ACT_END_DTE, py_za_tx_01032005.dbi_ZA_CUR_PRD_END_DTE);
2603: l_StrtDte := GREATEST(py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE, py_za_tx_01032005.dbi_ZA_TX_YR_STRT);
2604:
2605: ELSIF py_za_tx_01032005.trc_CalTyp = 'SitCalc' THEN

Line 2606: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',7);

2602: l_EndDte := LEAST(py_za_tx_01032005.dbi_ZA_ACT_END_DTE, py_za_tx_01032005.dbi_ZA_CUR_PRD_END_DTE);
2603: l_StrtDte := GREATEST(py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE, py_za_tx_01032005.dbi_ZA_TX_YR_STRT);
2604:
2605: ELSIF py_za_tx_01032005.trc_CalTyp = 'SitCalc' THEN
2606: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',7);
2607: l_EndDte := LEAST(py_za_tx_01032005.dbi_ZA_ACT_END_DTE, py_za_tx_01032005.dbi_ZA_TX_YR_END);
2608: l_StrtDte := GREATEST(py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE, py_za_tx_01032005.dbi_ZA_TX_YR_STRT);
2609:
2610: ELSIF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN

Line 2611: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',8);

2607: l_EndDte := LEAST(py_za_tx_01032005.dbi_ZA_ACT_END_DTE, py_za_tx_01032005.dbi_ZA_TX_YR_END);
2608: l_StrtDte := GREATEST(py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE, py_za_tx_01032005.dbi_ZA_TX_YR_STRT);
2609:
2610: ELSIF py_za_tx_01032005.trc_CalTyp = 'PstCalc' THEN
2611: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',8);
2612: l_EndDte := py_za_tx_01032005.dbi_ZA_ACT_END_DTE;
2613: l_StrtDte := py_za_tx_01032005.dbi_ZA_ASG_TX_YR_STRT;
2614:
2615: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',9);

Line 2615: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',9);

2611: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',8);
2612: l_EndDte := py_za_tx_01032005.dbi_ZA_ACT_END_DTE;
2613: l_StrtDte := py_za_tx_01032005.dbi_ZA_ASG_TX_YR_STRT;
2614:
2615: hr_utility.set_location('py_za_tx_utl_01032005.DaysWorked',9);
2616:
2617: l_StrtDte := GREATEST(py_za_tx_01032005.dbi_ZA_ACT_STRT_DTE, l_StrtDte);
2618: END IF;
2619:

Line 2643: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',1);

2639: AS
2640: l_TxOnSitLim t_Balance;
2641: l_SitAblTx t_Balance;
2642: BEGIN
2643: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',1);
2644: -- Directive Type Statuses
2645: --
2646: IF py_za_tx_01032005.dbi_TX_STA IN ('C','D','E','F','J','K','L','N','P') THEN
2647: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',2);

Line 2647: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',2);

2643: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',1);
2644: -- Directive Type Statuses
2645: --
2646: IF py_za_tx_01032005.dbi_TX_STA IN ('C','D','E','F','J','K','L','N','P') THEN
2647: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',2);
2648: -- Check for SitePeriod
2649: IF SitePeriod THEN
2650: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',3);
2651: py_za_tx_01032005.trc_PayeVal :=

Line 2650: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',3);

2646: IF py_za_tx_01032005.dbi_TX_STA IN ('C','D','E','F','J','K','L','N','P') THEN
2647: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',2);
2648: -- Check for SitePeriod
2649: IF SitePeriod THEN
2650: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',3);
2651: py_za_tx_01032005.trc_PayeVal :=
2652: ( py_za_tx_01032005.bal_TAX_YTD
2653: + py_za_tx_01032005.trc_LibFpNI
2654: + py_za_tx_01032005.trc_LibFpFB

Line 2663: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',4);

2659: + py_za_tx_01032005.trc_LibFpPO
2660: ) - py_za_tx_01032005.bal_PAYE_YTD;
2661: py_za_tx_01032005.trc_SiteVal := -1*py_za_tx_01032005.bal_SITE_YTD;
2662: ELSE
2663: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',4);
2664: py_za_tx_01032005.trc_PayeVal := -1*py_za_tx_01032005.bal_PAYE_YTD;
2665: py_za_tx_01032005.trc_SiteVal := -1*py_za_tx_01032005.bal_SITE_YTD;
2666: END IF;
2667: -- Normal Type Statuses

Line 2671: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',5);

2667: -- Normal Type Statuses
2668: --
2669: ELSIF py_za_tx_01032005.dbi_TX_STA IN ('A','B') THEN
2670: IF (SitePeriod AND NOT PreErnPeriod) OR EmpTermPrePeriod THEN
2671: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',5);
2672: -- Get the Tax Liability on the Site Limit
2673: l_TxOnSitLim := TaxLiability(p_Amt => py_za_tx_01032005.glb_ZA_SIT_LIM)/py_za_tx_01032005.trc_SitFactor;
2674: -- Get the Tax Amount Liable for SITE
2675: l_SitAblTx :=

Line 2689: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',6);

2685: + py_za_tx_01032005.trc_LibFpAP
2686: );
2687: -- Check the Limit
2688: IF l_SitAblTx > l_TxOnSitLim THEN
2689: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',6);
2690: py_za_tx_01032005.trc_SiteVal := l_TxOnSitLim - py_za_tx_01032005.bal_SITE_YTD;
2691: py_za_tx_01032005.trc_PayeVal := (
2692: ( py_za_tx_01032005.bal_TAX_YTD
2693: + py_za_tx_01032005.trc_LibFpNI

Line 2703: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',7);

2699: + py_za_tx_01032005.trc_LibFpPO
2700: ) - l_TxOnSitLim) - py_za_tx_01032005.bal_PAYE_YTD;
2701:
2702: ELSE
2703: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',7);
2704: IF ( py_za_tx_01032005.bal_TX_ON_TA_YTD
2705: + py_za_tx_01032005.trc_LibFpTA
2706: + py_za_tx_01032005.bal_TX_ON_PO_YTD
2707: + py_za_tx_01032005.trc_LibFpPO

Line 2709: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',8);

2705: + py_za_tx_01032005.trc_LibFpTA
2706: + py_za_tx_01032005.bal_TX_ON_PO_YTD
2707: + py_za_tx_01032005.trc_LibFpPO
2708: ) <= 0 THEN
2709: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',8);
2710: py_za_tx_01032005.trc_SiteVal := ( py_za_tx_01032005.bal_TAX_YTD
2711: + py_za_tx_01032005.trc_LibFpNI
2712: + py_za_tx_01032005.trc_LibFpFB
2713: + py_za_tx_01032005.trc_LibFpBP

Line 2721: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',9);

2717: + py_za_tx_01032005.trc_LibFpPO) - py_za_tx_01032005.bal_SITE_YTD;
2718:
2719: py_za_tx_01032005.trc_PayeVal := -1*py_za_tx_01032005.bal_PAYE_YTD;
2720: ELSE
2721: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',9);
2722: py_za_tx_01032005.trc_SiteVal := l_SitAblTx - py_za_tx_01032005.bal_SITE_YTD;
2723:
2724: py_za_tx_01032005.trc_PayeVal := (
2725: ( py_za_tx_01032005.bal_TAX_YTD

Line 2737: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',10);

2733: ) - l_SitAblTx) - py_za_tx_01032005.bal_PAYE_YTD;
2734: END IF;
2735: END IF;
2736: ELSE
2737: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',10);
2738: py_za_tx_01032005.trc_PayeVal := -1*py_za_tx_01032005.bal_PAYE_YTD;
2739: py_za_tx_01032005.trc_SiteVal := -1*py_za_tx_01032005.bal_SITE_YTD;
2740: END IF;
2741: -- Seasonal Worker Status

Line 2744: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',11);

2740: END IF;
2741: -- Seasonal Worker Status
2742: --
2743: ELSIF py_za_tx_01032005.dbi_TX_STA = 'G' THEN
2744: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',11);
2745: -- Get the SitFactor YTD
2746: py_za_tx_01032005.trc_SitFactor := py_za_tx_01032005.glb_ZA_WRK_DYS_PR_YR / py_za_tx_01032005.bal_TOT_SEA_WRK_DYS_WRK_YTD;
2747: -- Get the Tax Liability on the Site Limit
2748: l_TxOnSitLim := TaxLiability(p_Amt => py_za_tx_01032005.glb_ZA_SIT_LIM)/py_za_tx_01032005.trc_SitFactor;

Line 2759: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',12);

2755: + py_za_tx_01032005.trc_LibFpAP
2756: );
2757: -- Check the Limit
2758: IF l_SitAblTx > l_TxOnSitLim THEN
2759: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',12);
2760: py_za_tx_01032005.trc_SiteVal := l_TxOnSitLim - py_za_tx_01032005.bal_SITE_YTD;
2761: py_za_tx_01032005.trc_PayeVal := ( (py_za_tx_01032005.bal_TX_ON_PO_YTD + py_za_tx_01032005.trc_LibFpPO)
2762: + (l_SitAblTx - l_TxOnSitLim)
2763: ) - py_za_tx_01032005.bal_PAYE_YTD;

Line 2765: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',13);

2761: py_za_tx_01032005.trc_PayeVal := ( (py_za_tx_01032005.bal_TX_ON_PO_YTD + py_za_tx_01032005.trc_LibFpPO)
2762: + (l_SitAblTx - l_TxOnSitLim)
2763: ) - py_za_tx_01032005.bal_PAYE_YTD;
2764: ELSE
2765: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',13);
2766: py_za_tx_01032005.trc_SiteVal := l_SitAblTx - py_za_tx_01032005.bal_SITE_YTD;
2767: py_za_tx_01032005.trc_PayeVal := py_za_tx_01032005.bal_TX_ON_PO_YTD
2768: + py_za_tx_01032005.trc_LibFpPO
2769: - py_za_tx_01032005.bal_PAYE_YTD;

Line 2775: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',14);

2771: -- Private Director
2772: --
2773: ELSIF py_za_tx_01032005.dbi_TX_STA = 'M' THEN
2774: IF (SitePeriod AND NOT PreErnPeriod) OR EmpTermPrePeriod THEN
2775: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',14);
2776: py_za_tx_01032005.trc_PayeVal :=
2777: ( py_za_tx_01032005.bal_TAX_YTD
2778: + py_za_tx_01032005.trc_LibFpDR
2779: + py_za_tx_01032005.trc_LibFpNI

Line 2789: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',15);

2785: + py_za_tx_01032005.trc_LibFpPO
2786: ) - py_za_tx_01032005.bal_PAYE_YTD;
2787: py_za_tx_01032005.trc_SiteVal := -1*py_za_tx_01032005.bal_SITE_YTD;
2788: ELSE
2789: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',15);
2790: py_za_tx_01032005.trc_PayeVal := -1*py_za_tx_01032005.bal_PAYE_YTD;
2791: py_za_tx_01032005.trc_SiteVal := -1*py_za_tx_01032005.bal_SITE_YTD;
2792: END IF;
2793: -- All Other Statuses

Line 2796: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',16);

2792: END IF;
2793: -- All Other Statuses
2794: --
2795: ELSE -- set the globals to zero
2796: hr_utility.set_location('py_za_tx_utl_01032005.SitPaySplit',16);
2797: py_za_tx_01032005.trc_PayeVal := 0 - py_za_tx_01032005.bal_PAYE_YTD;
2798: py_za_tx_01032005.trc_SiteVal := 0 - py_za_tx_01032005.bal_SITE_YTD;
2799: END IF;
2800:

Line 3078: hr_utility.set_location('py_za_tx_utl_01032005.ClearGlobals',1);

3074: -------------------------------------------------------------------------------
3075: PROCEDURE ClearGlobals AS
3076:
3077: BEGIN
3078: hr_utility.set_location('py_za_tx_utl_01032005.ClearGlobals',1);
3079: -- Calculation Type
3080: py_za_tx_01032005.trc_CalTyp := 'Unknown';
3081: -- Factors
3082: py_za_tx_01032005.trc_TxbIncPtd := 0;