Payroll: Form Versions: Difference between revisions

From KeystoneIntranet
Jump to navigation Jump to search
Intra>Chanson
No edit summary
 
m (1 revision imported)
 
(No difference)

Latest revision as of 13:00, 14 July 2023

Syntax Versions

In Keystone Payroll, there are two syntax versions for forms (paychecks, direct deposit stubs, W-2 and W-3 forms.) The differences occur in how fields are referenced on the form.

To indicate which syntax version to use, put the following line anywhere in the FORM section:

  • VERSION 1
  • VERSION 2

(Note that version 1 is implied if not specified.)


Version 2

Syntax: [Group] . [Def Type Suffix] . [Period Type Suffix] . [Group Seq]

Examples:

  • PAY.HRS.YTD.01
  • PAY.LBL.01
  • PAY.RATE.01
  • DED.DED.CUR.01
  • DED.FACT.AMOUNT.01
  • PAY.HRS.CUR.* The total of all hours not printed (as a .01, .02 etc)
  • PAY.PAY.CUR.*SUM The total of all PAY (as a .01, .02 etc)


Group

The Group represents the Check Group defined in Company Setup (PRTLINKS). Most commonly these groups will be "PAY" for pay and "DED" for deductions etc. Taxes may all be setup as Group "TAX" or may be separated by tax types such as "FIT" for Federal Income tax and "SIT" for state income tax.
Def Type Suffixes

There are three suffixes with special meanings:

  • FACT - the value of the category company/employee factor specified in Period Type Suffix
  • LBL - the category label
  • RATE - calculates the hourly rate for the pay category


Description Def Type Suffix
Hours H HRS
Pay P PAY
Tax Gross G GRS
Tax T TAX
Check C CHK
Direct Deposit A DD
Deduction D DED
Pre-tax Deduction X CALC
Working W WRK
Net Pay N NET
Gross Pay Z GPY
Reimbursement R REM



Period Type Suffixes

Period Suffix
Current CUR
Month MTD
Quarter QTD
Year YTD
Forever ATD
Balance BAL


Group Sequence

  • 00-99 represent the first though 99th matching items. Applies to values, labels, rates, factor amounts etc.
  • * represents the total of all remaining items. Applies to values only.
  • *SUM represents the total for all items. (New for 3.1.99.19) Applies to values only.


Version 1 (Deprecated - DO NOT USE)

Syntax: [Group] [Def Type Suffix] _ [Period Type Suffix] _ [Group Seq]

Examples: REGHRS_YTD_01, REGLBL_01, REGRATE_01, DED_01, DEDFACT_AMOUNT_01

Def Type Suffixes

There are three suffixes with special meanings:

  • FACT - the value of the category company/employee factor specified in Period Type Suffix
  • LBL - the category label
  • RATE - calculates the hourly rate for the pay category


Description Def Type Suffix
Hours H HRS
Pay P PAY
Tax Gross G GRS
Tax T TAX
Check C CHK
Direct Deposit A DD
Deduction* D
Pre-tax Deduction* X
Working* W
Net Pay* N
Gross Pay* Z
Reimbursement* R

(*These definitions are lumped together when no suffix is specified.)

Period Type Suffixes

Period Suffix
Current*
Month MTD
Quarter QTD
Year YTD
Forever ATD
Balance BAL

(*Current is implied when no period suffix is specified.)



Conversion

The first thing to know about paycheck form version 2 is … You do not need to convert existing systems unless there is a problem! It is here to solve problems. But in making this format we didn’t want to either mess with the original format (too easy to make a devastating mistake) or force our support team to change existing systems. Having said that you don’t need to convert an existing form, once a customer has any strange problem such as 2 defs adding together unexpectedly it’s time to convert.

The second thing to know is … Make sure all new systems and newly created forms are version 2. Yes this is a bit of a hassle, but it will result in higher quality installations with fewer surprises down the road.

Attached is a sample of an old form converted to version 2.

A sample section like this:

LINE +1 COLUMN 2     BOLD ON
     COLUMN 3   Left 10                    FIELD PAYLBL_01
                BOLD OFF
        COLUMN 14    FORMAT ###.00        FIELD PAYHRS_01
        COLUMN 23    FORMAT ###.00        FIELD PAYRATE_01
        COLUMN 30       FORMAT ######.00   FIELD PAYPAY_01
        COLUMN 38       FORMAT #######.00  FIELD PAYPAY_YTD_01
                BOLD ON
     COLUMN 51  LEFT 10              FIELD DEDLBL_01
               BOLD OFF
     column 58  FORMAT ######.00;;#  FIELD DED_01
     column 67  FORMAT #######.00;;# FIELD DED_YTD_01

Becomes:

LINE +1 COLUMN 2     BOLD ON
     COLUMN 3   Left 10                    FIELD PAY.LBL.01
                BOLD OFF
        COLUMN 14    FORMAT ###.00        FIELD PAY.HRS.CUR.01
        COLUMN 23    FORMAT ###.00        FIELD PAY.RATE.01
        COLUMN 30       FORMAT ######.00   FIELD PAY.PAY.CUR.01
        COLUMN 38       FORMAT #######.00  FIELD PAY.PAY.YTD.01
                BOLD ON
     COLUMN 51  LEFT 10              FIELD DED.LBL.01
               BOLD OFF
     column 58  FORMAT ######.00;;#  FIELD DED.DED.CUR.01
     column 67  FORMAT #######.00;;# FIELD DED.DED.YTD.01

When converting a form, a good place to start is looking at the existing check setup in the links and company defs table. This query shows all of the check groups the form def type, and how the items within the check group are sequenced:

select l.check_group,l.check_group_seq,cd.link_sequence,cd.def_type,
case def_type 
WHEN 'H' THEN CHECK_GROUP||'.'||'HRS'||'.'
WHEN 'P' THEN CHECK_GROUP||'.'||'PAY'||'.'
WHEN 'G' THEN CHECK_GROUP||'.'||'GRS'||'.'
WHEN 'T' THEN CHECK_GROUP||'.'||'TAX'||'.'
WHEN 'C' THEN CHECK_GROUP||'.'||'CHK'||'.'
WHEN 'A' THEN CHECK_GROUP||'.'||'DD'||'.'
WHEN 'D' THEN CHECK_GROUP||'.'||'DED'||'.'
WHEN 'X' THEN CHECK_GROUP||'.'||'CALC'||'.'
WHEN 'W' THEN CHECK_GROUP||'.'||'WRK'||'.'
WHEN 'N' THEN CHECK_GROUP||'.'||'NET'||'.'
WHEN 'Z' THEN CHECK_GROUP||'.'||'GPY'||'.'
WHEN 'R' THEN CHECK_GROUP||'.'||'REM'||'.'
END FORM_REF
,l.link_type,l.link_id,cd.def_id,cd.description,l.CHECK_LABEL
from prtcompdef cd
inner join prtlinks l on l.link_id=cd.link_id
order by check_group,check_group_seq,cd.link_sequence,cd.def_type

Which results in something like this:

Payroll V2 Form Conversion Query Output

I’ve started a search and replace list to help speed up this conversion. This of course would need to be adjusted for specifics of a form. This list covers the case where all Pay types are in the check group “PAY” and deductions are in the check group “DED”. You still need to apply common sense and take care of other check groups like REG and SAL.

Search	Replace
DEDS_	DEDS.WRK.CUR.
TAXES_	TAXES.WRK.CUR.
PAY_YTD_	.PAY.YTD.
HRS_YTD_	.HRS.YTD.
GRS_YTD_	.GRS.YTD.
TAX_YTD_	.TAX.YTD.
PAY_	.PAY.CUR.
HRS_	.HRS.CUR.
TAX_	.TAX.CUR.
GRS_	.GRS.CUR.
LBL_	.LBL.
BAL_	.BAL.
RATE_	.RATE.
GROSS_	GROSS.GPY.CUR.
DD_YTD_	.DD.YTD.
DD_	.DD.CUR.
NETPAY_	NETPAY.NET.CUR.
DED_YTD_	DED.DED.YTD.
DED_	DED.DED.YTD.
REIMBURSE_YTD_	REIMBURSE.REM.YTD.
REIMBURSE_	REIMBURSE.REM.CUR.
MATCH_YTD_	MATCH.DED.YTD.
MATCH_	MATCH.DED.CUR.

See Also

Keystone_Forms