Symptom
The Australian Taxation office has released new Legal Requirements for taxation of Lump Sum Payments in Arrears via NAT 3348 and NAT 7905 valid from July 1, 2004. This note contains information about the changes made in the Payroll Australia, to cater to these requirements.
Reason and Prerequisites
The new requirements for taxing Lump Sum Payments are:-
1. NAT 3348 - Taxation of Back Payments
The taxation requirements are split into three separate areas and are taxed as follows:
- Method A - Retro relating to current financial year will have tax recalculated in the retro period and the net brought forward.
- Method B- Retro relating to prior financial (but within 12 months) have the gross brought forward, for each retro period, into the current period and have tax calculated in the current period.
- Method C- Retro relating to prior financial year (but greater than 12 months) will have the gross brought forward and the tax calculated over the number of periods in the year.
2. NAT 7905 - Taxation of Bonuses
This document relates to the taxation of bonuses in the current period only. The ATO has stated that when a payment (bonus or non-bonus) is made retrospectively it must follow the logic defined in NAT 3348. However, the ATO has approved that the use of average salary for bonus taxation calculations is an accepted method. Therefore, the taxation of bonuses is as follows:
- Bonuses paid in the current period (whether periods are specified or not) will follow the logic in NAT 7905, however, the average earnings will be used as a basis instead of current period earnings.
- Bonuses paid retrospectively and in the current financial year will follow the logic in NAT 3348, however, the average earnings will be used as a basis instead of the retro period earnings.
- Bonuses paid retrospectively but not in the current financial year and within 12 months will follow the logic in NAT3348, however the average earnings will be used as a basis instead of the retro period earnings.
- Bonuses paid retrospectively but not in the current financial year and greater than 12 months will follow the logic in NAT3348, however, the average earnings will be used as a basis instead of the retro period earnings.
3. Payment Summary Reporting:-
- When a Lump Sum Payment in Arrears is equal to, or greater than AUD $400, you must include the gross payment, in addition to any other similar lump sum payments, on the payee's Payment Summary at Lump Sum Payment section 'E'. The withheld amount from the payment is included in the 'Total Tax Withheld' section.
- When a Lump Sum Payment in Arrears is less than $400, you should include the gross amount of payment under the 'Gross Payments' section on the payee's payment summary. You do not have to complete Lump Sum Payment section 'E'. The withheld amount from the payment is included in the 'Total Tax Withheld' section.
Note
- For more details on NAT 3348 and NAT 7905, please refer to the Australian taxation office(ATO) website.
- Refer SAP Note No. 803826 for more information
Solution
The schema Q000 has been changed to cater to these requirements. The schema will now have the following behaviour:-
1. The Retrospective payments which are either 12 months older than the payment date of the current period, less than 12 months but in the previous Financial Year or in the current Financial Year will be taxed as per NAT 3348.
2. Bonuses paid in the current period (whether periods are specified or not) will follow the logic in NAT 7905, however, the average earnings will be used as a basis instead of current period earnings.
3. The Payment Summary report(RPCP01Q0) has been enhanced to cater to the above requirement.
4. For the cases where the payments are reduced retrospectively, the payroll will now have the following behaviour:
- The SAP's standard functionality does not permit tax refunds across the financial year (Default).
However, you will have an option to allow tax refund across financial year using a switch. This switch has been provided by - the constant 'QREFU' --> set to 1 in table view V_T511K Payroll Constant. By this setting the negative retrospective tax will be recalculated in the period it belongs to, therefore, the tax refund from the retro period will be brought forward into the current period.
Valid values of the Constant 'QREFU' are:
- '1' - Allowing Negative refund across financial year.
- else, Do not allow negative across financial years.
SAP has tested the functionality with this constant set to allow refunds and also tested with this constant set to not allow refunds across financial year, therefore whichever setting is adopted at time of implementation is supported
We do not support the changing of this constant once it has been implemented. This option is meant to provide flexibility for customers not agreeing to legislation. We cannot support the changing of this constant once it has been set in a functional environment.
5. Casual Employee The ATO allows NAT 3348 Method A to be utilized for casual employees only when there is a retro in Period 1 to the last period of the previous financial year. This will mean the tax will be calculated in Period 26 and the net is brought forward to period 1, As though the retro was in the current financial year.
It is left to the customer to decide if an employee is casual employee or not. For casual employees, a retrospective run to the last payroll period of previous financial year from the first period of current financial year will behave as 'bring fwd the difference in gross and tax from retro period to the current period".
This calculation is processed by the Feature 'QCASL'. The return value &QCASL from the feature should be set as:
- YY for Casual employee and special Processing
- YN For Casual Employee and no special processing
- NN Normal Employee and no special processing (default)
6. Offcycle Payments will be taxed as follows:
- "Bonus Type" Off Cycle Payments will use the Average Salary as a basis to calculate tax on the payment
- "Adjustment Type" Off Cycle Payments will use the salary in the retro period (in current financial year only) as a basis to calculate tax on the payment. If the Off Cycle relates to a prior financial year, the offcycle will be taxed as per NAT 3348 Method B or C (whether within or greater than 12 months)
7. Since there was much discussion about the wagetypes to be used as a Base for calculating retro tax amounts, it has been made flexible for the customer to decide the same. This has been implemented using the processing class 69.
- Set one wage type for the base gross for LSPA. (/116 default)
- Set one wage type for the base tax for LSPA. (/416 default)
- Set one wage type for the base gross for Bonus. (/109 default)
- Set one wage type for the base tax for Bonus. (/409 default)
In case multiple wagetypes have been specified for the same setting of processing class 69, the first wagetype in the table T512W will be used to determine the base salary and base tax.
Notes
- You must apply the appropriate Support Package (SP) for this solution. Do not apply these changes manually. However, the changes have been mentioned in this note for your reference. The changes are available under the section Changes to the Table, Schema and Programs for LSPA II. Before applying the source code of this note, we recommend that you apply all notes up to the SP level ofthis note.
- For all the Customers (On Release 45B, 46B, 46C, 470, ECC 5.00) the changes are available as attachments to this note.
- The SAR files for 45B: L4DK117566.SAR L4DK117568.SAR
- The SAR files for 46B: L9BK123012.SAR L9BK123015.SAR
- The SAR files for 46C: L9CK175860.SAR L9CK175862.SAR
- The SAR files for 470: L6BK080285.SAR L6BK080287.SAR
- The SAR files for ECC 5.00: L6DK013487.SAR L6DK013489.SAR
Refer notes 480180 and 13719 to get more information on downloading and using the attachment.
- Apply the Necessary Customizing
- Constant 'QREFU' in veiw V_T511K
- Processing class 69 setting for the relevant wage types.
- The following IMG nodes have been added:
- Wage Types for Retrospective Taxation
Maintain the wage types for Retrospective Taxation in the IMG under Payroll Australia -> Retrospective Taxation-> Configure Wage Types for Base Tax and Base Gross
- Tax Refund Across Financial Years
Permit calculation of tax refund for payments across financial years in the IMG under Payroll Australia -> Retrospective Taxation -> Enable Tax Refund Across Financial Years
- Retrospective Taxation for Casual Employees
Configure special processing of retrospective payments for casual employees in the IMG under Payroll Australia -> Retrospective Taxation -> Configure Special Processing for Casual Employees
- Refer FAQ Note # 805797 for the LSPA scenarios .
-------------------------------------------------------------------
Changes to the Table, Schema and Programs for LSPA II
(Release 45B, 46B, 46C, 470, ECC 5.0, ECC 6.0)
-------------------------------------------------------------------
1. Table T52D1 (use transaction SM31 -> view V_T52D1)
- Create New Processing class 69
- Description:- Wagetypes used for base gross amount and base tax amount (LSPA)
2. Table T52D2 (use transaction SM31 -> view V_T52D2)
- Create Specification for Processing class 69.
- Specification 0: not to be used for base.
- Specification 1: Use as Base gross for retro bonus payments.
- Specification 2: Use as Base gross for retro non- bonus payments.
- Specification 3: Use as Base gross for retro bonus & non-bonus payment.
- Specification 4: Use as Base tax for retro bonus payments.
- Specification 5: Use as Base tax for retro non - bonus payments.
- Specification 6: Use as Base tax for retro bonus and non-bonus payments.
3. Create New Wage types (Using Transaction --> OH11)
(All wage types are copy of /LG3 wage type)
- /LGF --> LSP Total gross in the current financial year
- /LGG --> LSP Total gross >12 month
- /LGL --> LSP Total gross <12 month
- /LGT --> LSP Total gross (Sum of /LGF,/LGG, /LGL)
- /LTF --> LSP Tot tax in the current financial year
- /LTG --> LSP Tot tax >12 month
- /LTL --> LSP Tot tax < 12 month
- /LTT --> LSP Total Tax (Sum of /LTF, /LTG, /LTL)
- /LB3 --> Influx bonus single pay period stored in DT.
- /LBG --> Bonus Gross > 12 months
Following Wage types are copy of /LTG wage type
- /LPE --> Lump Sum PS LSum E
- /LPG --> Lump Sum PS Gross
Note
For Release 45B, the following additional wage type are required:
- /ABT --> Outflow of Bonus
- /BBT --> Tax for bonus across FY
4. Set Processing class 30 of the following wage type to T (Use Transaction SM31 --> view V_512W_D)
- /LGF, /LGG, /LGL, /LGT, /LTF, /LTG, /LTL, /LTT, /LB3, /LBG, /BGT, /BTT, /LPE, /LPG
Note
For Release 45B only
Set Processing class 30 of the following wage type to T
5. Create the short text for the following wage types (Use Transaction SM31 --> view V_512W_T)
Note
Maintain the short text for Release 45B only
6. Create the New entry in the table for the following wage types (Using the transaction SM31 --> view V_T54C3)
- WageTy. Cum Type St.date EndDate Amt Cum
- /LGF Y 01.01.1990 31.12.9999 Selected
- /LGG Y 01.01.1990 31.12.9999 Selected
- /LGL Y 01.01.1990 31.12.9999 Selected
- /LGT Y 01.01.1990 31.12.9999 Selected
- /LTF Y 01.01.1990 31.12.9999 Selected
- /LTG Y 01.01.1990 31.12.9999 Selected
- /LTL Y 01.01.1990 31.12.9999 Selected
- /LTT Y 01.01.1990 31.12.9999 Selected
- /LB3 Y 01.01.1990 31.12.9999 Selected
- /LBG Y 01.01.1990 31.12.9999 Selected
- /BGT Y 01.01.1990 31.12.9999 Selected
- /LPE Y 01.01.1990 31.12.9999 Selected
- /LPG Y 01.01.1990 31.12.9999 Selected
Note
Additional changed for Release 45B only
- /ABT Y 01.01.1990 31.12.9999 Selected
- /ZBT Y 01.01.1990 31.12.9999 Selected
- /BTX Y 01.01.1990 31.12.9999 Selected
- /BBT Y 01.01.1990 31.12.9999 Selected
7. Change the Processing class 69 setting for the following wage type (Use Transaction SM31 --> view V_512W_D)
/109 --> Processing class 69 --> Specification 1
/116 --> Processing class 69 --> Specification 2
/409 --> Processing class 69 --> Specification 4
/416 --> Processing class 69 --> Specification 5
Note
Changes Applicable for Release 45B only
Change the Processing class 69 setting for the following wage type
(Use Transaction SM31 --> view V_512W_D)
/111 --> Processing class 69 --> Specification 3
/411 --> Processing class 69 --> Specification 6
8. Table T511K (Use transaction SM31 -> view V_T511K)
MANDT MOLGA KONST ENDDA BEGDA KWERT KOTXT
001 13 QREFU 31.12.9999 01.01.1800 0 Negative Payment
tax refund allowed
9. Create the Feature 'QCASL' (Use Transaction pe03)
- Select the Country Assignment 'Australia'
- Select the Component Assignment 'Common part of Payroll'
Decision Tree Entry for the Feature QCASL
Var Key F C Operations
D MOLGA
13 D PERSG
13 1 D PERSK
13 1 Q1 &QCASL=NN,
13 1 Q2 &QCASL=NN,
13 1 Q3 &QCASL=NN,
13 1 Q4 &QCASL=NN,
13 1 ** &QCASL=NN,
13 * &QCASL=NN,
** &QCASL=NN,
10. Create new Function QLBSP (using transaction PE04)
- Description: Lump Sum, Bonus for Single Pay period
- Country Assignment : Australia
- Created in Include RPCMASQ9
*----------------------------------------------------------------------*
* Function: QLBSP (Create Lump Sum, Bonus for Single Payperiod.
*----------------------------------------------------------------------*
*create entries for /LG3 and /LB3 for each payroll period in DT
*/LG3 will contain sum of differences in lumpsum payment for a payperiod
*/LB3 will contain sum of differences in bonus payments for a pay period
*----------------------------------------------------------------------*
FORM fuqlbsp.
CLEAR: clgart, cdatum.
*Remove any existing /LG3 and /LB3 entries in DT
LOOP AT dt.
IF dt-lgart = '/LG3' OR dt-lgart = '/LB3'.
DELETE dt.
ENDIF.
ENDLOOP.
LOOP AT dt.
* Create an entry for /LG3 in DT with differences in lumpsum
* payments (/A11) for each payroll period seperately in DT
IF dt-lgart = '/A11'.
dt-lgart = '/LG3'.
COLLECT dt.
ELSE.
MOVE dt-lgart TO clgart.
MOVE aper-begda TO cdatum.
PERFORM re512w.
* Create an entry for /LB3 in DT with differences in bonus
* payments for each payroll period seperately in DT
IF t512w-vklas+20(1) EQ '6'.
dt-lgart = '/LB3'.
COLLECT dt.
ENDIF.
ENDIF.
CLEAR dt.
ENDLOOP.
ENDFORM.
11. Create new Function QAVBS (using transaction PE04)
- Description: Determine the base gross amt and base tax amt for LSP and Bonus Payment
- Country Assignment : Australia
- Created in Include RPCMASQ9
*----------------------------------------------------------------------*
* Function QAVBS
*----------------------------------------------------------------------*
* The Function will check for the processing class 69 setting
* Based on the processing class setting the base Salary/ Base tax for
* the Lump Sum and Bonus will be determined
*----------------------------------------------------------------------*
FORM fuqavbs.
DATA: l_var LIKE rt-lgart.
DATA: l_lgart LIKE rt-lgart.
DATA: BEGIN OF l_s_t512w OCCURS 100.
INCLUDE STRUCTURE t512w.
DATA: END OF l_s_t512w.
CLEAR l_s_t512w.
SELECT * FROM t512w INTO TABLE l_s_t512w
WHERE molga = calcmolga.
IF sy-subrc = 0.
LOOP AT l_s_t512w WHERE vklas+68(1) = '1' .
l_lgart = l_s_t512w-lgart.
l_var = 'BBAS'.
PERFORM fill_base_sal_tax USING l_var l_lgart.
EXIT.
ENDLOOP.
LOOP AT l_s_t512w WHERE vklas+68(1) = '2' .
l_lgart = l_s_t512w-lgart.
l_var = 'LBAS'.
PERFORM fill_base_sal_tax USING l_var l_lgart.
EXIT.
ENDLOOP.
LOOP AT l_s_t512w WHERE vklas+68(1) = '3' .
l_lgart = l_s_t512w-lgart.
l_var = 'LBAS'.
PERFORM fill_base_sal_tax USING l_var l_lgart.
EXIT.
ENDLOOP.
LOOP AT l_s_t512w WHERE vklas+68(1) = '4' .
l_lgart = l_s_t512w-lgart.
l_var = 'BBTX'.
PERFORM fill_base_sal_tax USING l_var l_lgart.
EXIT.
ENDLOOP.
LOOP AT l_s_t512w WHERE vklas+68(1) = '5' .
l_lgart = l_s_t512w-lgart.
l_var = 'LBTX'.
PERFORM fill_base_sal_tax USING l_var l_lgart.
EXIT.
ENDLOOP.
LOOP AT l_s_t512w WHERE vklas+68(1) = '6' .
l_lgart = l_s_t512w-lgart.
l_var = 'BBTX'.
PERFORM fill_base_sal_tax USING l_var l_lgart.
l_var = 'LBTX'.
PERFORM fill_base_sal_tax USING l_var l_lgart.
EXIT.
ENDLOOP.
ENDIF.
ENDFORM.
*----------------------------------------------------------------------*
* Form: Fill_Base_SAL_TAX
*----------------------------------------------------------------------*
* It will be filling the Base salary For LSP and Bonus Payment.
* It will be filling the Base tax for LSP and Bonus Payment.
*----------------------------------------------------------------------*
FORM fill_base_sal_tax USING p_var p_lgart.
DATA: l_base_sal_exist VALUE 'N' .
* DATA: l_base_tax_exist VALUE 'N' .
LOOP AT var WHERE lgart = p_var .
l_base_sal_exist = 'Y'.
ENDLOOP.
LOOP AT it WHERE lgart = p_lgart.
IF l_base_sal_exist = 'N'.
var-lgart = p_var.
var-betpe = 0.
var-anzhl = 0.
var-betrg = it-betrg.
COLLECT var.
l_base_sal_exist = 'Y'.
ENDIF.
ENDLOOP.
LOOP AT rt WHERE lgart = p_lgart.
IF l_base_sal_exist = 'N'.
var-lgart = p_var.
var-betpe = 0.
var-anzhl = 0.
var-betrg = rt-betrg.
COLLECT var.
l_base_sal_exist = 'Y'.
ENDIF.
ENDLOOP.
ENDFORM.
12. Operation QCASU (using transaction PE04, Include RPCMSTQ1)
- Country Assignment: Australia
- Parameters : Model --> EA
- In the Parameter Box --> Create a entry for the Field 'Meaning' with value --> Casual Employee
*----------------------------------------------------------------------*
* FORM OPQCASU -
*----------------------------------------------------------------------*
* The Operation is for LSPA II for the special processing for Casual
* Employee.
* 1. The system will check if the pay-period is 1.
* 2. It reads the Feature 'QCASL' to find if the special processing
* is required or not
* 3. If yes, the system looks for WT /411,/LG3,/LB3,/BTX entry in DT
* 4. If the wage type are found the system put these into suitable
* varibale for further processing
*----------------------------------------------------------------------*
FORM opqcasu.
DATA: pme71 TYPE pme71.
DATA: feature LIKE t549b-namen.
DATA: BEGIN OF cas_tab OCCURS 1,
back(40) TYPE c,
END OF cas_tab.
DATA: tax_casual LIKE pa0015-betrg,
bon_tax_casual LIKE pa0015-betrg,
bon_casual LIKE pa0015-betrg,
grs_casual LIKE pa0015-betrg.
DATA: tax_casual_flag TYPE c VALUE 'N',
bon_tax_casual_flag TYPE c VALUE 'N',
bon_casual_flag TYPE c VALUE 'N',
grs_casual_flag TYPE c VALUE 'N'.
DATA: l__prev_period(2) TYPE c.
DATA: l_prev_year(4) TYPE c.
DATA: l_prev_last_period(6) TYPE c.
DATA: l_prev_first_period(6) TYPE c.
LOCAL: rgdir.
IF aper-iaper-pabrp EQ 01.
* feature = 'QCASL'.
MOVE-CORRESPONDING p0001 TO pme71.
MOVE CALCMOLGA TO pme71-molga.
CLEAR cas_tab.
REFRESH cas_tab.
CALL FUNCTION 'HR_FEATURE_BACKTABLE'
EXPORTING
feature = 'QCASL'
struc_content = pme71
kind_of_error = '3'
TABLES
back = cas_tab
* CHANGING
* STATUS =
EXCEPTIONS
OTHERS = 0 .
IF cas_tab = 'YY'.
*TO determine the last period of the previous financial year.
l_prev_year = aper-paper-pabrj - 1.
CONCATENATE aper-paper-pabrj '00' INTO l_prev_last_period.
CONCATENATE l_prev_year '00' INTO l_prev_first_period.
WHILE l_prev_last_period > l_prev_first_period.
LOOP AT rgdir WHERE fpper EQ l_prev_last_period.
ENDLOOP.
IF sy-subrc <> 0.
l_prev_last_period = l_prev_last_period - 1.
ELSE.
EXIT.
ENDIF.
ENDWHILE.
IF l_prev_last_period NE 0.
LOOP AT dt WHERE paper = l_prev_last_period AND lgart = '/411'.
tax_casual = dt-betrg.
dt-betrg = 0.
MODIFY dt.
ENDLOOP.
LOOP AT dt WHERE paper = l_prev_last_period AND lgart = '/BTX'.
bon_tax_casual = dt-betrg.
dt-betrg = 0.
MODIFY dt.
ENDLOOP.
LOOP AT dt WHERE paper = l_prev_last_period AND lgart = '/LG3'.
grs_casual = dt-betrg.
dt-betrg = 0.
MODIFY dt.
ENDLOOP.
LOOP AT dt WHERE paper = l_prev_last_period AND lgart = '/LB3'.
bon_casual = dt-betrg.
dt-betrg = 0.
MODIFY dt.
ENDLOOP.
IF grs_casual NE 0.
LOOP AT rt WHERE lgart = '/LGL' OR lgart = '/LGT'.
rt-betrg = rt-betrg + grs_casual.
rt-apznr = 0.
rt-cntr1 = 0.
rt-cntr2 = 0.
rt-cntr3 = 0.
rt-btznr = 0.
rt-c1znr = 0.
rt-alznr = 0.
rt-abznr = 0.
rt-v0typ = space.
rt-v0znr = 0.
rt-abart = '*'.
rt-zeinh = space.
rt-abznr = 0.
MODIFY rt.
grs_casual_flag = 'Y'.
ENDLOOP.
ENDIF.
IF grs_casual NE 0 AND grs_casual_flag EQ 'N'.
rt-lgart = '/LGL'.
rt-betrg = grs_casual.
rt-apznr = 0.
rt-cntr1 = 0.
rt-cntr2 = 0.
rt-cntr3 = 0.
rt-btznr = 0.
rt-c1znr = 0.
rt-alznr = 0.
rt-abznr = 0.
rt-v0typ = space.
rt-v0znr = 0.
rt-abart = '*'.
rt-zeinh = space.
rt-abznr = 0.
APPEND rt.
rt-lgart = '/LGT'.
rt-betrg = grs_casual.
rt-apznr = 0.
rt-cntr1 = 0.
rt-cntr2 = 0.
rt-cntr3 = 0.
rt-btznr = 0.
rt-c1znr = 0.
rt-alznr = 0.
rt-abznr = 0.
rt-v0typ = space.
rt-v0znr = 0.
rt-abart = '*'.
rt-zeinh = space.
rt-abznr = 0.
APPEND rt.
ENDIF.
IF tax_casual NE 0.
LOOP AT var WHERE lgart = 'LLTL'.
var-betpe = 0.
var-anzhl = 0.
var-betrg = tax_casual.
COLLECT var.
tax_casual_flag = 'Y'.
ENDLOOP.
ENDIF.
IF tax_casual_flag = 'N' AND tax_casual NE 0.
var-lgart = 'LLTL'.
var-betpe = 0.
var-anzhl = 0.
var-betrg = tax_casual.
COLLECT var.
ENDIF.
IF bon_tax_casual NE 0.
LOOP AT var WHERE lgart = 'LBTL'.
var-betpe = 0.
var-anzhl = 0.
var-betrg = bon_tax_casual.
COLLECT var.
bon_tax_casual_flag = 'Y'.
ENDLOOP.
ENDIF.
IF bon_tax_casual_flag = 'N' AND bon_tax_casual NE 0.
var-lgart = 'LBTL'.
var-betpe = 0.
var-anzhl = 0.
var-betrg = bon_tax_casual.
COLLECT var.
ENDIF.
IF bon_casual NE 0.
LOOP AT var WHERE lgart = 'LBGL'.
var-betpe = 0.
var-anzhl = 0.
var-betrg = bon_casual.
COLLECT var.
bon_casual_flag = 'Y'.
ENDLOOP.
ENDIF.
IF bon_casual_flag = 'N' AND bon_casual NE 0.
var-lgart = 'LBGL'.
var-betpe = 0.
var-anzhl = 0.
var-betrg = bon_casual.
COLLECT var.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
13. Create a Operation QNGRF (using transaction PE04, Include RPCMSTQ1)
- Country Assignment: Australia
- In the Parameter Box --> Create a entry for the Field 'Meaning' with value --> Negative Refund
*----------------------------------------------------------------------*
* FORM OPQNGRF -
*----------------------------------------------------------------------*
* This operation will check if the negative refund is allowed or not
* If Allowed, the value of /411 and /BTX will be passed to corresponding
* LSPA variable.
*
*----------------------------------------------------------------------*
FORM opqngrf.
DATA: l_dt TYPE hrpy_dt OCCURS 0 WITH HEADER LINE.
SELECT SINGLE * FROM t511k WHERE molga = t001p-molga
AND konst = 'QREFU'
AND begda LE aper-ibegd
AND endda GE aper-iendd.
IF t511k-kwert = 1.
l_dt[] = dt[].
IF ot-lgart = '/LG3' AND ot-betrg < 0.
ot-betrg = 0.
LOOP AT l_dt WHERE lgart = '/411' AND
paper-pabrj = dt-paper-pabrj AND
paper-pabrp = dt-paper-pabrp AND
permo = dt-permo AND
payty = dt-payty AND
payid = dt-payid AND
bondt = dt-bondt .
ot-betrg = l_dt-betrg.
EXIT.
ENDLOOP.
ELSEIF ot-lgart = '/LB3' AND ot-betrg < 0.
ot-betrg = 0.
LOOP AT l_dt WHERE lgart = '/BTX' AND
paper-pabrj = dt-paper-pabrj AND
paper-pabrp = dt-paper-pabrp AND
permo = dt-permo AND
payty = dt-payty AND
payid = dt-payid AND
bondt = dt-bondt .
ot-betrg = l_dt-betrg.
EXIT.
ENDLOOP.
ENDIF.
ELSE.
ot-betrg = 0.
ENDIF.
ENDFORM.
14. Create a Operation QPYSU(using transaction PE04, Include RPCMSTQ1
- Country Assignment: Australia
- In the Parameter Box --> Create a entry for the Field 'Meaning' with value --> Payment Summary
FORM opqpysu.
DATA: lspa_const LIKE t511p-betrg,
grs_flag TYPE c VALUE 'N'.
IF NOT ot-lgart CA '/'.
MOVE ot-lgart TO clgart.
MOVE aper-begda TO cdatum.
PERFORM re512w.
IF ( NOT t512w-vklas+20(1) CA '6789ABCDEFGHPTUVWXY' )
AND ( NOT t512w-vklas+21(1) CA '01' ).
SELECT SINGLE betrg INTO lspa_const FROM t511p
WHERE molga = t001p-molga
AND konst = 'LSUMA'
AND begda LE aper-ibegd
AND endda GE aper-iendd.
IF OT-BETRG < LSPA_CONST.
LOOP AT rt WHERE lgart = '/LPG' .
rt-lgart = '/LPG'.
rt-betrg = rt-betrg + OT-BETRG.
rt-apznr = 0.
rt-cntr1 = 0.
rt-cntr2 = 0.
rt-cntr3 = 0.
rt-btznr = 0.
rt-c1znr = 0.
rt-alznr = 0.
rt-abznr = 0.
rt-v0typ = space.
rt-v0znr = 0.
rt-abart = '*'.
rt-zeinh = space.
rt-abznr = 0.
MODIFY rt.
grs_flag = 'Y'.
ENDLOOP.
IF grs_flag = 'N'.
rt-lgart = '/LPG'.
rt-betrg = OT-BETRG.
rt-apznr = 0.
rt-cntr1 = 0.
rt-cntr2 = 0.
rt-cntr3 = 0.
rt-btznr = 0.
rt-c1znr = 0.
rt-alznr = 0.
rt-abznr = 0.
rt-v0typ = space.
rt-v0znr = 0.
rt-abart = '*'.
rt-zeinh = space.
rt-abznr = 0.
APPEND rt.
ENDIF.
ELSE.
LOOP AT rt WHERE lgart = '/LPE' .
rt-lgart = '/LPE'.
rt-betrg = rt-betrg + OT-BETRG.
rt-apznr = 0.
rt-cntr1 = 0.
rt-cntr2 = 0.
rt-cntr3 = 0.
rt-btznr = 0.
rt-c1znr = 0.
rt-alznr = 0.
rt-abznr = 0.
rt-v0typ = space.
rt-v0znr = 0.
rt-abart = '*'.
rt-zeinh = space.
rt-abznr = 0.
MODIFY rt.
grs_flag = 'Y'.
ENDLOOP.
IF grs_flag = 'N'.
rt-lgart = '/LPE'.
rt-betrg = OT-BETRG.
rt-apznr = 0.
rt-cntr1 = 0.
rt-cntr2 = 0.
rt-cntr3 = 0.
rt-btznr = 0.
rt-c1znr = 0.
rt-alznr = 0.
rt-abznr = 0.
rt-v0typ = space.
rt-v0znr = 0.
rt-abart = '*'.
rt-zeinh = space.
rt-abznr = 0.
APPEND rt.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
15. Create Rule QLS1
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+-------- ZERO=&LBASZERO=&LBTXZERO=<F1ZERO=<F2ZERO=<F3NEXTR
1 ZERO=<F4ZERO=<F5ZERO=<F6ZERO=<F7ZERO=<F8NEXTR
2 ZERO=&LLTLZERO=&LLTGZERO=&BBASZERO=&BBTXZERO=&LBGFNEXTR
3 ZERO=&LBGLZERO=&LBGGZERO=&LBTLZERO=&LBTGZERO=&LBTFNEXTR
4 ZERO=&LBGDZERO=&LGGD
16. Create Rule QCSL
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
QCASU
17. Create Rule QLS2
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D QRDT2
*
Y D WGTYP?
Y ****
Y /411 ADDWT<F2
Y /A11 ELIMI * ADDWTE/LGFADDWTE/LGT
Y /BTX ADDWT&LBTF
18. Create Rule QLS3/>
- ES grouping * Wage Type --> ****
Blank
- ES grouping * Wage Type --> /LG3
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D QRDT2
*
N D QCHYR
N *
N Y P PCY QLS4
19. Create Rule QLS4
- ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT?0
< ELIMI * ADDWTE/LGLADDWTE/LGTQNGRF ADDWT&LLTL
=
> ELIMI * ADDWTE/LGLADDWTE/LGTAMT+& LBASQTAXC NEXTR
> 1 AMT+& LBTXSUBWT&LLTL
- ES grouping * Wage Type --> /LG3
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT?0
< ELIMI * ADDWTE/LGLADDWTE/LGTQNGRF ADDWT&LLTL
=
> ELIMI * ADDWTE/LGLADDWTE/LGTAMT+& LBASQTAXC NEXTR
> 1 AMT+& LBTXSUBWT&LLTL
20. Create Rule QLS5
- ES grouping * Wage Type --> ****
Blank
- ES grouping * Wage Type --> /LG3
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D QRDT2
*
N D QCHYR
N *
N N P PCY QLS6
21. Create Rule QLS6
- ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT?0
< ELIMI * ADDWTE/LGGADDWTE/LGTQNGRF ADDWT&LLTG
=
> ELIMI * ADDWT&LGGDADDWTE/LGGADDWTE/LGT
- ES grouping * Wage Type --> /LG3
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT?0
< ELIMI * ADDWTE/LGGADDWTE/LGTQNGRF ADDWT&LLTG
=
> ELIMI * ADDWT&LGGDADDWTE/LGGADDWTE/LGT
22. Create Rule QLS7
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT=& LGGDAMT?0
*
> QPERIT DIVID ANA QCNTI AMT+& LBASNEXTR
> 1 QTAXC AMT+& LBTXMULTI ANA SUBWT&LLTG
23. Create Rule QLS8
- ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
AMT=& LTF2ELIMI * ADDWTE/LTFADDWTE/LTTNEXTR
1 AMT=& LLTLELIMI * ADDWTE/LTLADDWTE/LTTNEXTR
2 AMT=& LLTGELIMI * ADDWTE/LTGADDWTE/LTTNEXTR
3 AMT=E /LGTELIMI * ADDWTE/106ADDWTE/116NEXTR
4 AMT=E /LTTELIMI * ADDWTI/401ADDWTI/416
Note
Changes only for the Release 45B
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
AMT=& LTF2ELIMI * ADDWTE/LTFADDWTE/LTTNEXTR
1 AMT=& LLTLELIMI * ADDWTE/LTLADDWTE/LTTNEXTR
2 AMT=& LLTGELIMI * ADDWTE/LTGADDWTE/LTTNEXTR
3 AMT=E /LGTELIMI * ADDWTE/106NEXTR
4 AMT=E /LTTELIMI * ADDWTI/401
24. Create Rule QLB1
- ES grouping * Wage Type --> ****
Blank
- ES grouping * Wage Type --> /LB3
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D QRDT2
*
N D QCHYR
N *
N Y P PCY QLB2
Y ADDWT&LBGF
25. Create Rule QLB2
- ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT?0
< ADDWT&LBGLQNGRF ADDWT&LBTL
= > ADDWT&LBGLAMT+& BBASQTAXC AMT+& BBTXNEXTR
> 1 SUBWT&LBTL
- ES grouping * Wage Type --> /LB3
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT?0
< ADDWT&LBGLQNGRF ADDWT&LBTL
= > ADDWT&LBGLAMT+& BBASQTAXC AMT+& BBTXNEXTR
> 1 SUBWT&LBTL
26. Create Rule QLB3
- ES grouping * Wage Type --> ****
Blank
- ES grouping * Wage Type --> /LB3
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D QRDT2
*
N D QCHYR
N *
N N P PCY QLB4
27. Create Rule QLB4
- ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT?0
< ADDWT&LBGGQNGRF ADDWT&LBTG
= > ADDWT&LBGGADDWT&LBGD
- ES grouping * Wage Type --> /LB3
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT?0
< ADDWT&LBGGQNGRF ADDWT&LBTG
= > ADDWT&LBGGADDWT&LBGD
28. Create Rule QPAY
- ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D QRDT2
*
N D QCHYR
N *
N N QPYSU
29. Create Rule QLB5
- ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT=& LBGDAMT?0
*
> QPERIT DIVID ANA QCNTI AMT+& BBASNEXTR
> 1 QTAXC AMT+& BBTXMULTI ANA SUBWT&LBTG
30. Create Rule QLB6
- ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
AMT=& LBGFADDWTI/116ADDWTI/106ADDWTE/BGTNEXTR
1 AMT=& LBGLADDWTI/116ADDWTI/106ADDWTE/BGTNEXTR
2 AMT=& LBGGADDWTI/116ADDWTI/106ADDWTE/BGTNEXTR
3 AMT=& LBTLADDWTI/416ADDWTI/401ADDWTE/BTTNEXTR
4 AMT=& LBTGADDWTI/416ADDWTI/401ADDWTE/BTTNEXTR
5 AMT=& LBTFADDWTI/416ADDWTI/401ADDWTE/BTT
Note
Changes Applicable to Release 45B only
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
AMT=& LBGFADDWTI/106ADDWTE/BGTNEXTR
1 AMT=& LBGLADDWTI/106ADDWTE/BGTNEXTR
2 AMT=& LBGGADDWTI/106ADDWTE/BGTNEXTR
3 AMT=& LBTLADDWTI/401ADDWTE/BTTNEXTR
4 AMT=& LBTGADDWTI/401ADDWTE/BTTNEXTR
5 AMT=& LBTFADDWTI/401ADDWTE/BTT
31. Schema QTAX to be changed to the follwing
Func. Par1 Par2 Par3 Par4 D Text
COM *****************************
BLOCK BEG Calculation of Tax
COM *****************************
PIT QCTX P21 NOAB
PIT QSAC P21 NOAB Deductions before Tax
XDECI FILL IT *
XDECI FILL RT *
PIT QCOM GEN NOAB Cumulate taxable gross
IF SPRN If special offcycle run
ELSE
IF ADV If Advanced Payment
ELSE else
QADVI ALL T Import all Advanced Payments
ENDIF
ENDIF Endif special offcycle run
QCUGT Cumulate previous gross & tax
PIT QTAX GEN NOAB Standard Australian Taxation
PIT QATG GEN NOAB Adjust Taxable Gross
SORT IT Sort the IT table
IF O * Only do for Original Run
PIT QBON P21 NOAB Tax on Bonuses and Commission
IF O *
PIT QBNF GEN NOAB * Tax on Bonus Across Financial Yea
ENDIF *
PIT QVR1 GEN NOAB Copy the value of tax to a variab
PIT QTRM P21 NOAB Termination Taxation
PIT QTXP P21 NOAB Fixed Tax on earnings
PIT QRFT GEN NOAB Add retro fixed tax difference to
SORT IT Apply Note 330478 : Apply note
PIT QTXO P66 NOAB Taxation Override : Apply note
IF XFIY * Check for a cross of financial ye
IF R Only do for Retro
COPY QLSP Taxation of Bonuses/LumpSum Payme
LPBEG RC *
IMPRT O *
PORT QGTX GEN NOAB *
PORT QSTX GEN NOAB *
LPEND *
PIT QRND GEN NOAB Round /411 with old results
ENDIF Retro
IF O Only do for Original Run (L
ACTIO QL11 *
PIT QLP1 GEN NOAB * Copy wage types to variable
QRDT1 *
PDT QLP2 GEN NOAB * Filter WT's to be used for LSPA
PDT QETX GEN NOAB *
PRINT NP VAR * Print VAR table
ACTIO QLP3 * move LTX2 to wagetypes
ACTIO QLP4 * move LGR2 to wagetypes
ACTIO QLP5 * calc tax on var LGR3
ACTIO QLP6 * move LTX3 to wagetypes
PDT QL10 GEN NOAB *
ACTIO QLS1 Clear all variables used for LSP
QLBSP Cumulate difference in gross in
QAVBS Determine the Base gross and Bas
ACTIO QCSL Processing for Casual Employee
PDT QLS2 GEN NOAB Cumulate difference in Tax with
PRINT NP VAR Print VAR table
PDT QLS3 NOAB Calculate Tax for across fin y
PDT QLS5 NOAB Sum diff in Gross across fin y
ACTIO QLS7 Calculate Tax for across fin y
PRINT NP VAR Print VAR table
ACTIO QLS8 Add tax to /401, Add gross to
PDT QLB1 NOAB Calculate Bon Tax for acr fin
PDT QLB3 NOAB Bon >12 M sum positive, get ta
PDT QPAY GEN NOAB Payment summary reporting
ACTIO QLB5 Tax Bonus across finyr > 12 M
PRINT NP VAR Print VAR table
ACTIO QLB6 Add Bonus tax to /416, Gross t
ENDIF end of IF O for LSPA
ACTIO QZTX Generate a zero value /426
PIT QTXR GEN NOAB Store the taxable gross to /426
COPY QSRV Store Retro values for calc of
IF XFIY
ELSE
PIT QSRT GEN NOAB Store retro tax to RT
ENDIF
ACTIO QTXC Clear out variables used by rul
SORT IT * Apply Note 330478 : Apply note
PIT QTXO P66 NOAB * Taxation Override : Apply note
PIT QCUM GEN NOAB Cumulate to Full tax and full g
PIT QTTO P66 NOAB Override Total Tax in /401
BLOCK END
32. Changes to the Rule QVR1 (Schema QTAX --> Rule QVR1)
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
**** ADDWT *
/BTX ADDWT * ADDWT&BDF1
33. Schema QLSP to be changed to the follwing (Schema QTAX--> Schema QLSP)
Note
In case the Schema QLSP is not existing create the schema QLSP Using Transaction PE01.
Func. Par1 Par2 Par3 Par4 D Text
COM *********************************
BLOCK BEG Taxation of Bonuses/LumpSum Payme
COM *********************************
PIT QBDF GEN NOAB Add the bonus amount to a variabl
LPBEG RC
IMPRT O
PORT QBD1 GEN NOAB Create difference of bonus amount
PORT QBD2 GEN NOAB Create difference of bonus amount
ACTIO QBD3 Create difference of bonus amount
PORT QGTX GEN NOAB Get /411 and put in VAR
PORT QSTX GEN NOAB Store /426 amount in VAR
PORT QVR2 GEN NOAB Copy wage types to variables
PORT QB35 GEN NOAB Calculate the original /111 for t
PORT QPTX GEN NOAB Calculate tax in the original per
PORT QPTB GEN NOAB Calculate bonus tax in original p
PORT QBRF GEN NOAB Calculate refund
ACTIO QBR1 Calculate refund
PIT QELD GEN NOAB Eliminate the splits
PIT QBR2 GEN NOAB If refund remove the DT value
LPEND
BLOCK END
34. Schema QSRV to be changed to the follwing (Schema QTAX--> Schema QSRV)
Func. Par1 Par2 Par3 Par4 D Text
IF R Only create tax if original peri
IF XFIY * If retro across a financial year
PIT QTGF GEN NOAB Change taxable gross for fixed t
ELSE *
PIT QTG1 GEN NOAB * Change taxable gross for fixed t
ENDIF *
RFRSH ORT Refresh the ORT
LPBEG RC
IMPRT O Import this periods original res
PORT QRRF GEN NOAB For retro on retro add /o to tax
LPEND
IF XFIY * If retro across a financial year
PIT QFTR GEN NOAB Process retro tax for fixed tax
ENDIF *
PIT QSTG GEN NOAB Store /111 into /R11 for future
IF XFIY * Check if retro crossed financial
PIT QXID P76 NOAB Put new taxable gross into DT
PIT QDTI GEN NOAB Get rid of tax values from IT wh
LPBEG RC
IMPRT O Import this periods original res
PORT QRTX GEN NOAB Bring tax values from original p
LPEND
ENDIF * Cross financial year
SORT IT
IF XFIY * If crossing financial year
PIT QFRT GEN NOAB Retro on fixed tax
ACTIO QTXN Check if tax to be paid or ref
ENDIF * Crossing Financial year
SORT IT
ENDIF
35. Rule QPTB to be changed to the follwing (Schema QTAX-->Schema QLSP --> Rule QPTB)
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D VWTCL 21
*
6 D AMT=& B111AMT?0
6 * FILLF A QPERII DIVID ANA ELIMI * ADDWT&B116NEXTR
6 * 1 AMT+& B109AMT+& BGR1QTAXC AMT+& B409AMT+& BTX1NEXTR 6 * 2 MULTI ANA NUM=0 SUBWT&BBDFSUBWT&B416
6 > FILLF A QPERII DIVID ANA ADDWT&B116NEXTR
6 > 1 AMT+& B109AMT+& BGR1QTAXC AMT+& B409AMT+& BTX1NEXTR
6 > 2 WGTYP=* QPERII MULTI ANA NUM=0 SUBWT&BBDFNEXTR
6 > 3 SUBWT&B416
36. Rule QDTI (Schema QTAX --> QSRV -->QDTI)
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
**** ADDWT *
/106
/111
/112
/113
/114
/410
/411
/412 ADDWTD/412
/413 ADDWTD/413
/414 ADDWTD/414
/426 ADDWT * ADDWTD/411
/BTX ADDWTE/BTXADDWTD/BTXSUBWTD/411
37. Rule QRTX (Schema QTAX --> QSRV -->QRTX)
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
****
/111 ADDWTI*
/112 ADDWTI*
/113 ADDWTI*
/114 ADDWTI*
/411 ADDWTI*
/412 ADDWTI* SUBWTD*
/413 ADDWTI* SUBWTD*
/414 ADDWTI* SUBWTD*
/426 SUBWTD/411
/BTX SUBWTD/BTXADDWTD/411
38. Rule QBON (Schema QTAX --> Rule QBON)
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D VWTCL 21
* ADDWT *
6 ADDWT * ADDWT /BONELIMI * FILLF A QPERII NEXTR
6 1 DIVID ANA ELIMI * ADDWT /116AMT+E /109AMT+E /GR1NEXTR
6 2 QTAXC /411AMT+E /409AMT+E /TX1SUBWT /416MULTI ANA NEXTR
6 3 NUM=0 SUBWT * NUM=1 SUBWTI/BTX
6 4 * ADDWT * ADDWT /BONELIMI * FILLF A QPERII NEXTR
6 5 * DIVID ANA ELIMI * ADDWT /116AMT=Z /116AMT+E /GR1NEXTR
6 6 * QTAXC /411AMT+Z /416AMT+E /TX1SUBWT /416WGTYP=* NEXTR
6 7 * QPERII MULTI ANA NUM=0 SUBWT /411NUM=1
6 8 * END CHANGE SUBWTE/BTX
6 = * FILLF A QPERII DIVID ANA ELIMI * NEXTR
6 = 1 * ADDWT /116AMT+E /109AMT+E /GR1QTAXC /411AMT+E /409NEXTR
6 = 2 * AMT+E /TX1SUBWT /416MULTI ANA NUM=0 SUBWT *
6 > * FILLF A QPERII DIVID ANA ELIMI * ADDWT /116NEXTR
6 > 1 * AMT=Z /116AMT+E /GR1QTAXC /411AMT+Z /416AMT+E /TX1NEXTR
6 > 2 * SUBWT /416WGTYP=* QPERII MULTI ANA NUM=0 NEXTR
6 > 3 * SUBWT /411NUM=1
7 ADDWT * ADDWT /BONQPERII DIVID ANA ELIMI * NEXTR
7 1 ADDWT /117AMT=Z /117AMT+E /GR2QTAXC /412AMT+Z /417NEXTR
7 2 AMT+E /TX2SUBWT /417MULTI ANA NUM=0 SUBWT *
8 ADDWT * ADDWT /BONQPERII DIVID ANA ELIMI * NEXTR
8 1 ADDWT /118AMT=Z /118AMT+E /GR3QTAXC /413AMT+Z /418NEXTR
8 2 AMT+E /TX3SUBWT /418MULTI ANA NUM=0 SUBWT *
9 ADDWT * ADDWT /BONQPERII DIVID ANA ELIMI * NEXTR
9 1 ADDWT /119AMT=Z /119AMT+E /GR4QTAXC /414AMT+Z /419NEXTR
9 2 AMT+E /TX4SUBWT /419MULTI ANA NUM=0 SUBWT *
Changes applicable for Relase 45B only
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D VWTCL 21
* ADDWT *
6 D ADDWT * ELIMI * AMT=Z /111AMT?0
6 * FILLF A QPERII DIVID ANA ELIMI * AMT+& HTG1NEXTR
6 * 1 QTAXC /411AMT+& HTX1MULTI ANA NUM=0 SUBWT * NEXTR
6 * 2 NUM=1 SUBWTI/BTX
6 = FILLF A QPERII DIVID ANA ELIMI * AMT+E /109NEXTR
6 = 1 QTAXC /411AMT+E /409MULTI ANA NUM=0 SUBWT * NEXTR
6 = 2 NUM=1 SUBWTI/BTX
7 ADDWT * QPERII DIVID ANA ELIMI * AMT+Z /112NEXTR
7 1 QTAXC /412AMT+& HTX2MULTI ANA NUM=0 SUBWT *
8 ADDWT * QPERII DIVID ANA ELIMI * AMT+Z /113NEXTR
8 1 QTAXC /413AMT+& HTX3MULTI ANA NUM=0 SUBWT *
9 ADDWT * QPERII DIVID ANA ELIMI * AMT+Z /114NEXTR
9 1 QTAXC /414AMT+& HTX4MULTI ANA NUM=0 SUBWT *
39. Schema QRR0 to be changed to the following
Func. Par1 Par2 Par3 Par4 D Text
COM *********************************
BLOCK BEG Retroactive accounting Australia
COM *********************************
IF O Original payroll ?
PDT Q041 GEN NOAB Provide differences received
ELSE Retroactive accounting now
COM * *********************************
COM * * Leave recalc - compare original
COM * * to recalc lvacc - store adj rec
COM * *********************************
QLVRE leave recalc store adjust's for r
RFRSH ORT
RFRSH OLD Refresh all old tables
LPBEG RC Imports last payroll
IMPRT O Print ORT
PRINT NP ORT Form differences for and transf
COPY QARR Calc the diff in Tax Gross and
QOSUP overwrite SMTH and SQTR for sup
IF XFYR If retro across financial years
PORT QROR GEN NOAB Put orig. cum. wage types to R
ENDIF
QORET QRAD GEN NOAB Put orig. ORETP results in RETP,
ACTIO X048 wage types that cannot be revised
PORT X042 GEN NOAB Cumulation of new net pay
LPEND
COM Write new amount to data medium
PIT X047 Transfer BT from last payroll
PIT X043 End of retroactive accounting
BTFIL Read bank tansfers from last payrol
IF XFIY If retro across financial year
PIT QCRF GEN NOAB Create Retro Tax refund
ENDIF
IF LPRC
ELSE
PRT QLP9 GEN NOAB Add wagetypes to DT from RT- note 7
PIT X047 Determine final new Net
PIT X043 Storage of new Net pay in DT
QOSUP overwrite SMTH and SQTR for
ENDIF
QCTSC
PRT QRMT GEN NOAB * Remove /416 and /426 from RT
LPBEG RC *
IMPRT O *
PORT QADT GEN NOAB * Put /416 and /426 from ORT i
LPEND *
ENDIF
BLOCK END
40. Schema QARR to be changed to the following (Schema QRR0 --> Schema QARR)
Func. Par1 Par2 Par3 Par4 D Text
ACTIO QNWT Set variable if no /R11 -> /R13
IF XFIY * If retro across financial year
PORT QTID P76 NOAB Create differences for taxable g
PORT QTI1 P76 NOAB Use /111, if no /R11 in calc of
ENDIF * If xfiy
PORT QOID P76 NOAB Create differences for superannu
PORT QLP8 GEN NOAB copy wgtyp. frm ORT to RT for mu
PRT QRTO P66 NOAB override after lspa tax
PORT QLP0 GEN NOAB create entries in DT during retr
PRT QLP9 GEN NOAB create entries in DT during retr
41. Changes in the Rule QLP8 (Schema QARR --> Rule QLP8)
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
****
/BGT ADDWTE/BGT
/BTT ADDWTE/BTTADDWTI/560ADDWTI/562ADDWTE/401
/LBG ADDWTE/LBG
/LG2 ADDWTE/LG2
/LGA ADDWTE/LGA
/LGF ADDWTE/LGF
/LGG ADDWTE/LGG
/LGL ADDWTE/LGL
/LGT ADDWTE/LGT
/LTF ADDWTE/LTF
/LTG ADDWTE/LTG
/LTL ADDWTE/LTL
/LTT ADDWTE/LTTADDWTI/560ADDWTI/562ADDWTE/401
/LTX ADDWTE/LTXADDWTI/560ADDWTI/562SUBWTD/411
42. Include RPCCOMQ2 (for Payment summary changes related to LSPA). Please refer to the souce code corrections below for this.
43. Operation OPQRDT2 has been change. Please refer to the souce code corrections below for this.
Note
Changes applicable for Release 45B only.
1. Create Rule QBDF (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
**** ADDWT *
/BON ADDWTD/ABTADDWTI/ABTADDWT&DBON
Changes applicable for Release 45B only.
2. Create Rule QBD1 (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D VWTCL 21
*
6 ADDWT&DBN2
3. Create Rule QBD2 (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
****
/BON D ADDWT DBONAMT*-1 AMT?0
/BON * AMT=& DBONSUBWTD/ABTSUBWTI/ABT
/BON > AMT=& DBN1SUBWTD/ABTSUBWTI/ABT
4. Create Rule QBD3 (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D AMT=& DBN1AMT?0
*
= AMT=& DBN2SUBWTD/ABTSUBWTI/ABT
5. Create Rule QGTX (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
****
/106 ADDWTE*
/111 ADDWT&P111
/112 ADDWT&P112
/113 ADDWT&P113
/114 ADDWT&P114
/411 ADDWT&P426
/412 ADDWT&P427
/413 ADDWT&P428
/414 ADDWT&P429
6. Create Rule QSTX (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
****
/426 ZERO=P426
/427 ZERO=P427
/428 ZERO=P428
/429 ZERO=P429
/R11 ZERO=P111
/R12 ZERO=P112
/R13 ZERO=P113
/R14 ZERO=P114
7. Create Rule QVR2 (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operatio
-------------+---------+---------+---------+---------+---------+-------
D WGTYP?
****
/109 ADDWT&B109
/111 ADDWTBB11
/116 * ADDWT&BT16
/409 ADDWT&B409
/BTX ADDWT&B998
/GR1 ADDWT&BGR1
/R11 D AMT?0
/R11 *
/R11 > AMT-& BB11ADDWT&B111
/TX1 ADDWT&BTX1
8. Create Rule QB35 (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D VWTCL 21
* D WGTYP?
* ****
* /ZBT QPERIT DIVID ANA SUBWT&BT16
6 QPERII DIVID ANA SUBWT&BT16
9. Create Rule QPTX (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
****
/111 D NUM=& B111NUM?0
/111 < ERROR /111 = NUM=1 AMT=& BT16ADDWT&B116AMT+& BGR1QTAXC NEXTR
/111 = 1 AMT+& BTX1NUM=0 SUBWT&B411SUBWT&B416
/111 > DIVID ANA NUM=1 AMT=& BT16ADDWT&B116AMT+& BGR1NEXTR
/111 > 1 QTAXC AMT+& BTX1NUM=0 FILLF N SUBWT&B416NEXTR
/111 > 2 MULTI ANA NUM=0 SUBWT&B411
10. Create Rule QPTB (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D VWTCL 21
*
6 D AMT=& B111AMT?0
6 * FILLF A QPERII DIVID ANA ELIMI * ADDWT&B116NEXTR
6 * 1 AMT+& B109AMT+& BGR1QTAXC AMT+& B409AMT+& BTX1NEXTR 6 * 2 MULTI ANA NUM=0 SUBWT&BBDFSUBWT&B416
6 > FILLF A QPERII DIVID ANA ADDWT&B116NEXTR
6 > 1 AMT+& B109AMT+& BGR1QTAXC AMT+& B409AMT+& BTX1NEXTR
6 > 2 WGTYP=* QPERII MULTI ANA NUM=0 SUBWT&BBDFNEXTR
6 > 3 SUBWT&B416
11. Create Rule QBRF (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
****
/BTX D NUM?-1
/BTX * D AMT=& BBDFAMT-& BDF1AMT?0
/BTX * *
/BTX * < SUBWTE/ARFSUBWTD/ARF
/BTX = D AMT-& BDF1AMT?0
/BTX = *
/BTX = < SUBWTE/ARFSUBWTD/ARF
12. Create Rule QBR1 (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D NUM=& B998NUM?-1
*
=
> D AMT=& BBDFAMT-& BDF1AMT?0
> *
> < SUBWTE/ARFSUBWTD/ARF
13. Create Rule QELD (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
**** ADDWT *
/ABT ELIMI *
14. Create Rule QBR2 (for Release 45B only)
ES grouping * Wage Type --> ****
VarKey NL T Operation Operation Operation Operation Operation Operation
-------------+---------+---------+---------+---------+---------+--------
D WGTYP?
**** ADDWT *
/ABT D ADDWT&BARFAMT=E /ARFAMT?0
/ABT *
/ABT > AMT=& BARFSUBWTD/ABT