DBA Data[Home] [Help]

APPS.PY_ZA_TX_UTL_01032012 SQL Statements

The following lines contain the word 'select', 'insert', 'update' or 'delete':

Line: 80

         Calculates the arrear excess figure to 'effectively' update the
         Asg_Itd dimension of the arrear excess pension and retirement
         annuity balances.  Will only fire on siteperiod.
      TrvAll
         Calculates the taxable travel allowance over a period of
         time based on the effective global values at the time.
         For a complete description see the tax module design document.
      NpVal
         Validates the calculated category liabilities.
         For a complete description see the tax module design document.
      SitPaySplit
         Calculates the site paye split of tax liabilities.
         For a complete description see the tax module design document.
      Trace
         Traces the tax calculation.
         For a complete description see the tax module design document.
      ClearGlobals
         Clears any set package globals.
         For a complete description see the tax module design document.

   PRIVATE FUNCTIONS
      GetTableValue
         Returns the value from a user table date effectively

   PRIVATE PROCEDURES
      

   NOTES
      .

   MODIFICATION HISTORY
   Person    Date       Version      Bug     Comments
   --------- ---------- ----------- ------- --------------------------------
   R Babla  03/04/2008 115.0       8406456   For detail history see
                                             py_za_tx_utl_01032007
                                             Changes done in Abatements for
                                             TYS2010 -new SARS codes
                                             Function AllowableDeduction
                                             added
   R Babla  10/06/2009 115.1       8512751   Modified ClearGlobals to clear
                                             global for Net PAYE Taxable Income
                                             used in EMP201
   P.Arusia 17/7/2009  115.2       8691928   a) Updated global name from
                                             ZA_ALLOW_DONATION_PERC to
                                             ZA_ALLOWABLE_DONATION_PERC
                                             b) Updated the message text
                                             as well as the way of raising
                                             exception for 'late Payment
                                             Across Two Tax Years' in
                                             LatePayPeriod procedure
   R Babla  29/07/2009 115.3       8526698   Updated ClearGlobals to clear the
                                             globals for Net to Gross
   R Babla  20/08/2009 115.4       8824018   Updated ClearGlobals to clear the
                                             new globals for Net to Gross.
                                             Abatements modified to calculate
                                             the abatement of Net to Gross earnings
                                             separately.
   R Babla  02/09/2009 115.7       8824018   Updated Proc SitPaySplit to consider
                                             the Net to Gross tax.
   R Babla  02/09/2009 115.8       8844712   1.Removed the error is Late Payment Across two Tax Yrs
                                             2.Modified the TaxLiability for Late Payments
   R Babla  25/02/2010 115.9       9369895   Changes in abatement calculation for package structure emp
   R Babla  26/02/2010 115.10      9397464   Removed reference of dbi_ZA_ASG_TX_YR%
   R Babla  10/03/2009 115.11      9438325   Modified PreErnPeriod to consider _ASG_RUN value
                                             for Annual Payments
   NCHINNAM 03/11/2010 115.12      10245740  Non Cumilative tax method enhancement changes.

   NCHINNAM 24/02/2011 115.1       11806660  2011/12 Tax Year End Legislative Changes.

   ABDASH   24/04/2012 115.3       13986697  Changes made to enable generation of tax trace from application.
   ABDASH   21/05/2012 115.4       14062746 MEDICAL TAX CREDIT CALCULATION IN CASE OF TAX REFUND.
   ABDASH   25/05/2012 115.6       14062746 MEDICAL TAX CREDIT CALCULATION IN CASE OF TAX REFUND WITH NEGATIVE PAYE.
   ABDASH   25/05/2012 115.7       14062746 MEDICAL TAX CREDIT CALCULATION IN CASE OF TAX REFUND FOR PARTIAL REFUND.
   ABDASH   12/06/2012 115.8       14168167 MAC ALLOWED TO BE REFUNDED INCASE OF EMPLOYEE ABOVE AGE 65 OR WHEN BALANCES FOR CODE 3810, 4005 AND 4474 ARE ZERO.
   ABDASH   19/06/2012 115.9       14195352 Tax should be refunded only when net taxable income is below SITE limit and Med Abatement is not applicable for NI for employees above 65.
   ABDASH   19/06/2012 115.10     14195352 Modified Med Abatement Calculation for BasCalc
 */
-------------------------------------------------------------------------------
--                               PACKAGE BODY                                --
-------------------------------------------------------------------------------

-------------------------------------------------------------------------------
-- StartHrTrace                                                              --
-- Wrapper for hr_utility.trace_on                                           --
-------------------------------------------------------------------------------
PROCEDURE StartHrTrace AS
BEGIN
   IF g_HrTraceEnabled THEN
      hr_utility.trace_on(null,g_HrTracePipeName);
Line: 238

   SELECT TO_NUMBER(global_value)
     INTO l_GlbVal
     FROM ff_globals_f
    WHERE p_EffDte between effective_start_date and effective_end_date
      AND global_name = p_GlbNme;
Line: 2643

   select put.user_table_id
     INTO l_UserTableID
     from pay_user_tables put
    where upper(put.user_table_name) = upper(p_TableName)
      AND put.legislation_code       = 'ZA';
Line: 2652

   select puc.user_column_id
     INTO l_ColumnID
     from pay_user_columns            puc
    where puc.user_table_id           = l_UserTableID
      AND puc.legislation_code        = 'ZA'
      and puc.business_group_id       is null
      AND upper(puc.user_column_name) = upper(p_ColumnName);
Line: 2663

   select pur.user_row_id
     INTO l_RowID
     from pay_user_tables      put
        , pay_user_rows_f      pur
    where put.user_table_id    = l_UserTableID
      and pur.user_table_id    = put.user_table_id
      AND pur.row_high_range   IS NOT NULL
      AND p_EffectiveDate      BETWEEN pur.effective_start_date
                                   AND pur.effective_end_date
      AND pur.legislation_code = 'ZA'
      AND p_RowValue           BETWEEN decode ( put.user_key_units
                                              , 'N'
                                              , FFFUNC.CN(pur.row_low_range_or_name)
                                              , p_RowValue+1
                                              )
                                   AND decode ( put.user_key_units
                                              , 'N'
                                              , FFFUNC.CN(pur.row_high_range)
                                              , p_RowValue-1
                                              );
Line: 2687

   SELECT pucif.value
     INTO l_TableValue
     FROM pay_user_column_instances_f pucif
    where pucif.user_column_id        = l_ColumnID
      and pucif.user_row_id           = l_RowID
      AND pucif.legislation_code      = 'ZA'
      and p_EffectiveDate             BETWEEN pucif.effective_start_date
                                          AND pucif.effective_end_date;
Line: 2892

  SELECT effective_end_date
       , to_number(global_value) global_value
    FROM ff_globals_f
   WHERE effective_end_date < p_ty_ed
     AND effective_end_date > p_ty_sd
     AND global_name        = 'ZA_CAR_ALLOW_TAX_PERC';
Line: 2915

   SELECT balance_type_id
     INTO l_RfiBalID
     FROM pay_balance_types
    WHERE legislation_code = 'ZA'
      AND balance_name     = 'ZATax Total Taxable Travel Allowance';
Line: 3022

      SELECT TO_NUMBER(global_value)
        INTO l_GlbVal
        FROM ff_globals_f
       WHERE l_EndDate between effective_start_date
                           and effective_end_date
         AND global_name     = 'ZA_CAR_ALLOW_TAX_PERC';
Line: 3037

      SELECT TO_NUMBER(global_value)
        INTO l_GlbVal
        FROM ff_globals_f
       WHERE l_EndDate between effective_start_date
                           and effective_end_date
         AND global_name     = 'ZA_CAR_ALLOW_TAX_PERC';
Line: 3636

/*DELETE FROM pay_za_tax_traces pztt
   WHERE pztt.prl_act_id not in (
   SELECT payroll_action_id
     from pay_payroll_actions)
*/
   INSERT INTO pay_za_tax_traces(
    ASG_ACT_ID
   ,ASG_ID
   ,PRL_ACT_ID
   ,PRL_ID
   ,TX_STA
   ,PER_AGE
   ,CalTyp
   ,TX_DIR_VAL
   ,It3Ind
   ,TxPercVal
   ,ASG_STRT_DTE
   ,ZA_ACT_END_DTE
   ,ZA_CUR_PRD_STRT_DTE
   ,ZA_CUR_PRD_END_DTE
   ,ZA_TX_YR_STRT
   ,ZA_TX_YR_END
   ,SES_DTE
   ,PrdFactor
   ,PosFactor
   ,SitFactor
   ,ZA_PAY_PRDS_LFT
   ,ZA_PAY_PRDS_PER_YR
   ,ZA_DYS_IN_YR
   ,SEA_WRK_DYS_WRK
   ,BP_TX_RCV
   ,TxbIncPtd
   ,BseErn
   ,TxbBseInc
   ,TotLibBse
   ,TxbIncYtd
   ,PerTxbInc
   ,PerPenFnd
   ,PerRfiCon
   ,PerRfiTxb
   ,PerPenFndMax
   ,PerPenFndAbm
   ,AnnTxbInc
   ,AnnPenFnd
   ,AnnRfiCon
   ,AnnRfiTxb
   ,AnnPenFndMax
   ,AnnPenFndAbm
   ,ArrPenFnd
   ,ArrPenFndAbm
   ,AnnArrPenFnd
   ,AnnArrPenFndAbm
   ,RetAnu
   ,NrfiCon
   ,RetAnuMax
   ,RetAnuAbm
   ,AnnRetAnu
   ,AnnNrfiCon
   ,AnnRetAnuMax
   ,AnnRetAnuAbm
   ,ArrRetAnu
   ,ArrRetAnuAbm
   ,AnnArrRetAnu
   ,AnnArrRetAnuAbm
   ,Rebate
   ,Threshold
   ,MedAidAbm
   ,PerTotAbm
   ,AnnTotAbm
   ,NorIncYtd
   ,NorIncPtd
   ,NorErn
   ,TxbNorInc
   ,LibFyNI
   ,TX_ON_NI_YTD
   ,TX_ON_NI_PTD
   ,LibFpNI
   ,FrnBenYtd
   ,FrnBenPtd
   ,FrnBenErn
   ,TxbFrnInc
   ,LibFyFB
   ,TX_ON_FB_YTD
   ,TX_ON_FB_PTD
   ,LibFpFB
   ,TrvAllYtd
   ,TrvAllPtd
   ,TrvAllErn
   ,TxbTrvInc
   ,LibFyTA
   ,TX_ON_TA_YTD
   ,TX_ON_TA_PTD
   ,LibFpTA
   ,BonProYtd
   ,BonProPtd
   ,BonProErn
   ,TxbBonProInc
   ,LibFyBP
   ,TX_ON_BP_YTD
   ,TX_ON_BP_PTD
   ,LibFpBP
   ,AnnBonYtd
   ,AnnBonErn
   ,TxbAnnBonInc
   ,LibFyAB
   ,TX_ON_AB_YTD
   ,TX_ON_AB_PTD
   ,LibFpAB
   ,AnnPymYtd
   ,AnnPymPtd
   ,AnnPymErn
   ,TxbAnnPymInc
   ,LibFyAP
   ,TX_ON_AP_YTD
   ,TX_ON_AP_PTD
   ,LibFpAP
   ,PblOffYtd
   ,PblOffPtd
   ,PblOffErn
   ,LibFyPO
   ,TX_ON_PO_YTD
   ,TX_ON_PO_PTD
   ,LibFpPO
   ,LibWrn
   ,PayValue
   ,PayeVal
   ,SiteVal
   )
   VALUES(
    py_za_tx_01032012.con_ASG_ACT_ID
   ,py_za_tx_01032012.con_ASG_ID
   ,py_za_tx_01032012.con_PRL_ACT_ID
   ,py_za_tx_01032012.con_PRL_ID
   ,py_za_tx_01032012.dbi_TX_STA
   ,py_za_tx_01032012.dbi_PER_AGE
   ,py_za_tx_01032012.trc_CalTyp
   ,py_za_tx_01032012.dbi_TX_DIR_VAL
   ,py_za_tx_01032012.trc_It3Ind
   ,py_za_tx_01032012.trc_TxPercVal
   ,py_za_tx_01032012.dbi_ZA_ACT_STRT_DTE
   ,py_za_tx_01032012.dbi_ZA_ACT_END_DTE
   ,py_za_tx_01032012.dbi_ZA_CUR_PRD_STRT_DTE
   ,py_za_tx_01032012.dbi_ZA_CUR_PRD_END_DTE
   ,py_za_tx_01032012.dbi_ZA_TX_YR_STRT
   ,py_za_tx_01032012.dbi_ZA_TX_YR_END
   ,py_za_tx_01032012.dbi_SES_DTE
   ,py_za_tx_01032012.trc_PrdFactor
   ,py_za_tx_01032012.trc_PosFactor
   ,py_za_tx_01032012.trc_SitFactor
   ,py_za_tx_01032012.dbi_ZA_PAY_PRDS_LFT
   ,py_za_tx_01032012.dbi_ZA_PAY_PRDS_PER_YR
   ,py_za_tx_01032012.dbi_ZA_DYS_IN_YR
   ,py_za_tx_01032012.dbi_SEA_WRK_DYS_WRK
   ,py_za_tx_01032012.dbi_BP_TX_RCV
   ,py_za_tx_01032012.trc_TxbIncPtd
   ,py_za_tx_01032012.trc_BseErn
   ,py_za_tx_01032012.trc_TxbBseInc
   ,py_za_tx_01032012.trc_TotLibBse
   ,py_za_tx_01032012.trc_TxbIncYtd
   ,py_za_tx_01032012.trc_PerTxbInc
   ,py_za_tx_01032012.trc_PerPenFnd
   ,py_za_tx_01032012.trc_PerRfiCon
   ,py_za_tx_01032012.trc_PerRfiTxb
   ,py_za_tx_01032012.trc_PerPenFndMax
   ,py_za_tx_01032012.trc_PerPenFndAbm
   ,py_za_tx_01032012.trc_AnnTxbInc
   ,py_za_tx_01032012.trc_AnnPenFnd
   ,py_za_tx_01032012.trc_AnnRfiCon
   ,py_za_tx_01032012.trc_AnnRfiTxb
   ,py_za_tx_01032012.trc_AnnPenFndMax
   ,py_za_tx_01032012.trc_AnnPenFndAbm
   ,py_za_tx_01032012.trc_PerArrPenFnd
   ,py_za_tx_01032012.trc_PerArrPenFndAbm
   ,py_za_tx_01032012.trc_AnnArrPenFnd
   ,py_za_tx_01032012.trc_AnnArrPenFndAbm
   ,py_za_tx_01032012.trc_PerRetAnu
   ,py_za_tx_01032012.trc_PerNrfiCon
   ,py_za_tx_01032012.trc_PerRetAnuMax
   ,py_za_tx_01032012.trc_PerRetAnuAbm
   ,py_za_tx_01032012.trc_AnnRetAnu
   ,py_za_tx_01032012.trc_AnnNrfiCon
   ,py_za_tx_01032012.trc_AnnRetAnuMax
   ,py_za_tx_01032012.trc_AnnRetAnuAbm
   ,py_za_tx_01032012.trc_PerArrRetAnu
   ,py_za_tx_01032012.trc_PerArrRetAnuAbm
   ,py_za_tx_01032012.trc_AnnArrRetAnu
   ,py_za_tx_01032012.trc_AnnArrRetAnuAbm
   ,py_za_tx_01032012.trc_Rebate
   ,py_za_tx_01032012.trc_Threshold
   ,py_za_tx_01032012.trc_PerMedAidAbm
   ,py_za_tx_01032012.trc_PerTotAbm
   ,py_za_tx_01032012.trc_AnnTotAbm
   ,py_za_tx_01032012.trc_NorIncYtd
   ,py_za_tx_01032012.trc_NorIncPtd
   ,py_za_tx_01032012.trc_NorErn
   ,py_za_tx_01032012.trc_TxbNorInc
   ,py_za_tx_01032012.trc_LibFyNI
   ,py_za_tx_01032012.bal_TX_ON_NI_YTD
   ,py_za_tx_01032012.bal_TX_ON_NI_PTD
   ,py_za_tx_01032012.trc_LibFpNI
   ,py_za_tx_01032012.trc_FrnBenYtd
   ,py_za_tx_01032012.trc_FrnBenPtd
   ,py_za_tx_01032012.trc_FrnBenErn
   ,py_za_tx_01032012.trc_TxbFrnInc
   ,py_za_tx_01032012.trc_LibFyFB
   ,py_za_tx_01032012.bal_TX_ON_FB_YTD
   ,py_za_tx_01032012.bal_TX_ON_FB_PTD
   ,py_za_tx_01032012.trc_LibFpFB
   ,py_za_tx_01032012.trc_TrvAllYtd
   ,py_za_tx_01032012.trc_TrvAllPtd
   ,py_za_tx_01032012.trc_TrvAllErn
   ,py_za_tx_01032012.trc_TxbTrvInc
   ,py_za_tx_01032012.trc_LibFyTA
   ,py_za_tx_01032012.bal_TX_ON_TA_YTD
   ,py_za_tx_01032012.bal_TX_ON_TA_PTD
   ,py_za_tx_01032012.trc_LibFpTA
   ,py_za_tx_01032012.trc_BonProYtd
   ,py_za_tx_01032012.trc_BonProPtd
   ,py_za_tx_01032012.trc_BonProErn
   ,py_za_tx_01032012.trc_TxbBonProInc
   ,py_za_tx_01032012.trc_LibFyBP
   ,py_za_tx_01032012.bal_TX_ON_BP_YTD
   ,py_za_tx_01032012.bal_TX_ON_BP_PTD
   ,py_za_tx_01032012.trc_LibFpBP
   ,py_za_tx_01032012.trc_AnnBonYtd
   ,py_za_tx_01032012.trc_AnnBonErn
   ,py_za_tx_01032012.trc_TxbAnnBonInc
   ,py_za_tx_01032012.trc_LibFyAB
   ,py_za_tx_01032012.bal_TX_ON_AB_YTD
   ,py_za_tx_01032012.bal_TX_ON_AB_PTD
   ,py_za_tx_01032012.trc_LibFpAB
   ,py_za_tx_01032012.trc_AnnPymYtd
   ,py_za_tx_01032012.trc_AnnPymPtd
   ,py_za_tx_01032012.trc_AnnPymErn
   ,py_za_tx_01032012.trc_TxbAnnPymInc
   ,py_za_tx_01032012.trc_LibFyAP
   ,py_za_tx_01032012.bal_TX_ON_AP_YTD
   ,py_za_tx_01032012.bal_TX_ON_AP_PTD
   ,py_za_tx_01032012.trc_LibFpAP
   ,py_za_tx_01032012.trc_PblOffYtd
   ,py_za_tx_01032012.trc_PblOffPtd
   ,py_za_tx_01032012.trc_PblOffErn
   ,py_za_tx_01032012.trc_LibFyPO
   ,py_za_tx_01032012.bal_TX_ON_PO_YTD
   ,py_za_tx_01032012.bal_TX_ON_PO_PTD
   ,py_za_tx_01032012.trc_LibFpPO
   ,py_za_tx_01032012.trc_LibWrn
   ,py_za_tx_01032012.trc_PayValSD
   ,py_za_tx_01032012.trc_PayeVal
   ,py_za_tx_01032012.trc_SiteVal);