Help Toolbar (select a button to browse other online help sections) Home Index Tutorials Resources Search Tabs & Menus Button Bar Table & Data Display |
For this tutorial, we will show you how to create three common functions (Vacation Pay, RRSP Deductions, and a 30% Garnishment). During the lesson, you can substitute your own items, percentages and values to suit your specific payroll scenario. Once complete, you can assign these functions so that they will perform their respective calculations automatically.
Scenario: The ABC Company wishes to set up vacation pay for their employees based on 4% of their applicable earnings. In our example, the function must include all "vacationable" earning types for their province ("Hourly" types such as Regular, Overtime, Statutory, and "Salary" types such as Salary and Commissions, etc.) Our formula will sum the employee's earnings, and then multiply the result by .04 to determine the vacation amount. The resulting amount may be accrued or paid out each period.
We will begin by adding a pre-defined "Earnings Percent" function that is set to calculate a typical vacation pay amount of 4%.
a) The resulting expression, P * sum(E1, E2, E3, E4, E5, E6), instructs the program to multiply (by a factor of 4%) the sum of items E1 through E6.
b) The "P" symbol in the Expression column will use the value that is assigned in the Value column at the far right side of the row. This pre-defined function uses 4% as a starting value and corresponds to typical starting vacation percentage in Canada. Note: that the "P" symbol is arbitrary and can be substituted for a number, or even a word (refer to the Symbol cell's description found on the Functions screen's help page).
c) The corresponding amounts for each income type (shown in the Item column) will be used when the payroll is calculated. Note: This function supports both Hourly and Salary employees by including their respective earning types.
d) The numbers in the Value cells are arbitrary and represent test values only. As mentioned in the previous point, the program will use actual payroll values in place of these test values when the payroll is calculated.
Creating a Vacation Pay Function ManuallyThe previous section showed you how to add a vacation pay function using a pre-defined function. If you want to add it manually, you can do so as follows:
Note: The preceding manual example is provided to illustrate how you can achieve your required calculation as long as you can write its related expression. This function would not be optimal if you were assigning it to multiple employees with differing accrual percentages (e.g. 4% vs. 6%), because you would need to adjust the percentage manually for each employee. The pre-defined function we created at the beginning of this lesson is preferred, since the P-Value can be set on a per-employee basis (while the master function remains unchanged). |
Our second sample function will support our employees' RRSP Deduction plan. It will be tied to a Deduction record (the Deduction portion will be discussed later in this tutorial). Rather than use a pre-defined function, we will enter the expression manually and define the items as needed. The resulting function will take the sum of each employee's Regular earnings, and then multiply the amount by 5% to arrive at the contribution amount for each pay period.
Function | Expression | Type | Item | Symbol | Value |
---|---|---|---|---|---|
RRSP Deduction | (x1+x2+x3+x4)*.05 | Dollars | Earning Regular | x1 | 1600 |
Dollars | Earning Salary | x2 | 2000 | ||
Dollars | Earning Statutory Pay | x3 | 160 | ||
Dollars | Earning Commission | x4 | 40 |
a) The arguments in the Expression column, (A+B+C+D)*.05., instruct the program to sum the values of A through D and then multiply the result by 5%. This represents the amount that our sample company will provide for RRSP contributions on behalf of each employee.
b) The corresponding amounts for each income type (shown in the Item column) will be used when the payroll is calculated. Note: This function supports both Hourly and Salary employee types by including their respective earning types.
c) The numbers in the Value cells are arbitrary and represent test values only. As mentioned in the previous point, the program will use actual payroll values in place of these test values when the payroll is calculated.
Further Steps Needed: Now that the RRSP deduction function is added, you would complete the process by creating a payroll deduction and assigning this function so that it would calculate each employee's contribution amounts. After the deduction is created, you would apply it to each employee who is part of the RRSP deduction plan. This process is described in the Creating Payroll Deductions tutorial.
We will complete this tutorial by creating a third function for an employee Garnishment. The garnish will be setup at 30% per pay period with an annual cap of $4000. As with the first function in this lesson, we will use a pre-defined function where the expression will be created for you automatically.
Function | Expression | Type | Item | Symbol | Value |
---|---|---|---|---|---|
Wage Garnish | If(P * N <= T - D, P * N, MaxN(T - D, 0)) | Dollars | Value | P | 0.30 |
Y.T.D. | Value | D | 0 | ||
Dollars | Value | T | 4000 | ||
Dollars | Net Pay | N | 1500 |
a) The 0.30 value for the "P" symbol represents the 30% garnish amount. Since the P symbol is designated as a Dollars type, it will be calculated based on the specific percentage you enter in the Value cell (as opposed to the Vacation Pay function you created earlier, that would base its values on the "actual" calculated income amounts as defined in their respective Item cells).
b) The "D" symbol's value can be left at 0 (zero) since the row is designated as the Y.T.D. type. Thus, it will be calculated using the employee's year-to-date values. Note: Since we are setting this up as a new function, leaving the value at zero will instruct the program to use the employee's current year-to-date values in the calculation.
c) The value for the "T" symbol is changed to 4000 to represent the $4000 capped dollar amount for the garnish. Since the T symbol's Item is set to Value, it will be calculated based on the 4000 value you entered.
d) The "N" Symbol row is changed to $1500 to represent a typical wage amount for testing purposes only. This test value is used for validation purposes only and will have no effect since the N symbol will be calculated based on the employee's current Net Pay amount for each period.
Note: The expression, If(P * N <= T - D, P * N, MaxN(T - D, 0)), is based on an If (condition, A, B) function - meaning that if condition A is true, do A - if it is not true, do B. If percentage (P) (in this case 30% multiplied by Net Pay (N) ) is less than or equal to the Total Maximum Amount (T) (in this case $4000) subtracted by Y.T.D. already deducted (D) (in this case 0.00 because we are just starting to setup the function), then it will deduct the whole amount. If it is not true, it will perform option B and only deduct what is left to be paid. |
Follow Up Steps: Now that the Garnish function is added, you would complete the process by creating a payroll deduction that will calculate each employee's garnish amounts. After the deduction is created, you would apply it to each employee who is to have their wages garnished. This process is described in the Creating Payroll Deductions tutorial.
This completes the tutorial on creating payroll functions.
Note: If you are working through the payroll setup process in order, you will need to continue through the Payroll menu to finish entering the data that is required for your particular payroll.
See Also: