|
|
Applies to versions: 3.0, 3.1, 3.2
QuickBooks Pay Item Expressions
This article explains the ability to customize the payroll items sent to QuickBooks
Purpose of Expressions
When TimeIPS exports payroll data to QuickBooks each piece of time is associated with a payroll item. This is often something like "Regular" for standard time. With expressions you can apply custom logic when determining the payroll item.
Defining Payroll Items With Expressions
To use custom logic you must define the expression in the "Pay Type" field for that payroll item. Expressions must start with an equals sign '='. They provide a single line of code that is evaluated and returns the payroll item. When using expressions, leave the Separator, Appended Field and Default Value blank.
Supported Functions
QuickBooks payroll item expressions utilize the same expression parser as Custom Reports. As such the same functions are available. The list of functions is available at this article.
Available Variables
The following information is available
Variable | Description |
client_name_in |
The name of the clock where this employee clocked in, if it exists |
client_name_out |
The name of the clock where the employee clocked out if it exists |
clock_in_note |
The clock in note provided |
clock_out_note |
The clock out note |
code_name |
The code associated with the event, such as "standardtime" or "overtime" |
payrollEventType |
The type of event such as "Standardtime" or "Overtime" |
customer_name |
The name of any customer associated with a job |
duration |
The duration of the payroll event in seconds |
empNum |
The employee's alternate number |
eventLogID |
The unique database ID of the clock event pair |
isHourly |
1 if the employee is hourly, 0 if they are not |
job_altNum |
The alternate number on the job worked |
job_category |
The name of the category on the job worked |
job_code |
The code of the job worked |
job_ctrlNum |
The control number of the job worked |
job_glNum |
The G.L. number of the job worked |
job_longname |
The full name of the job worked |
job_rate |
The billing rate associated with the job worked |
job_shortname |
The shortened display name of the job worked |
job_subCode |
The subcode of the job worked |
job_overrideHourlyRate |
The overriding hourly rate of the job worked |
job_overrideDifferential |
The hourly differential of the job worked |
job_overrideMultiplier |
The rate multiplier of the job worked |
occurs |
A unix timestamp that marks the beginning of this payroll event |
orgUnit |
The name of the employee's Organizational Unit |
pay_per_hour |
The total pay per hour for the event including differentials and overtime |
payRate |
The hourly rate for the event including differentials but no overtime |
reg_hourly_rate |
The employee's normal hourly rate |
base_rate |
The FLSA weekly base hourly rate |
SSN |
The employee's social security number |
lastFirstMid |
The employee's name in Last First Middle format. |
firstMidLast |
The employee's name in First Middle Last format |
userName |
The employee's name in whatever format was selected in the QuickBooks preset |
payroll_type_name |
The name of the employee's pay history pay type, such as "Hourly" or "Salary, Exempty (Yearly)"
|
empType |
The name of the Empolyee's Payroll Type, set under Payroll -> Payroll Types. |
type_code |
The code of the Employee's Payroll Type, set under Payroll -> Payroll Types. |
usersID |
The unique database ID of the employee |
Examples
Example 1: A pay type "Payroll Item for Unpaid OOTO:" should never be exported:
Set the expression to: ="action_remove_this_row"
Example 2: A pay type "Payroll Item for Holiday:" should be exported as "Holiday" on Monday-Friday, but "Weekend Holiday" on Saturday or Sunday:
Set the expression to: =if((utcdate("D",[adjTimeIn])="Sat" || utcdate("D",[adjTimeIn])="Sun"),"Weekend Holiday","Holiday")
Additional Available Variables For Piecework
The following additional information is available for piecework entries
Variable | Description |
piecework_name |
The name of the piecework
|
piecework_poNum |
The PO number of the piecework |
piecework_glNum |
The GL number of the piecework |
piecework_altNum |
The alternate number of the piecework |
piecework_code |
The code of the piecework |
piecework_subCode |
The subcode of the piecework |
piecework_pieceworkCode |
The piecework code of the piecework |
piecework_quantity |
The quantity of the piecework. Note this is limited to 24 per Quickbooks. If the quantity is larger, it will be split into multiple rows, with no more than 24 per row.
|
piecework_field-<your name>
|
The custom piecework field value. <your name> is the name of the piecework field. If multiple fields are defined, all will be present.
|
Examples
Example 1: Piecework should be exported with the paycode "CustomerA" when the custom piecework field "Project" is set to "Project A". If not, just use paycode "GeneralPiecework"
=if([piecework_field-Project]="Project A","CustomerA","GeneralPiecework")
|