NetSuite timesheet filtering for Pay Sub types

Overview

ICS Payroll uses the "pay component sub type" on NetSuite timesheets in order to process payroll. This field contains all relevant pay sub types including leave and other time types.

Under certain circumstances customers may wish to restrict which sub types are available for selection. In order to do this we need to create another field on the timesheet that is filtered. We then have a script which sets the pay component sub type field we actually use in payroll. 

On this page

1. Pay Component Sub Type

First we need to create a field to identify which sub types we want to see in the new timesheet field. 

  • Navigate to Customisation>Lists/Records/Fields>Record Types : FInd the record type "Pay component sub type" and click the name. 


  • New Field : On the record definition create a new field.  



  • New Field : Give your field a name, field id and make the type "checkbox". Ensure "Store value" is ticked. Save. 


  • Update records : Navigate to your list of pay component sub types and update those records you wish to see in the new timsheet field. 


2. PCST Replica field

Now that we have our filtering in place we need to create new field on the timesheets. 

  • Navigate to Customisation>Lists/Records/Fields>Transaction Line Fields  : Click "new". Complete the fields as below on the body of the record and applies to tab.


  • Display Tab  : Ensure the display type is set to normal and enter any help as required. 

  • Validation & Defaulting Tab  : If you wish to default a time type you can do so here. Eg. "Normal time"
  • Sourcing & Filtering Tab  : Set the "filter using" as below according to your filter checkbox on the sub type record. 


  • Access Tab  : Set the required access level for the roles you wish to use the feature including the end user roles. Save the field. 

3. Script Deployment

Now we need to deploy the script that will use the new filtered field on the timesheet and set the pay component sub type field we actually use in the payroll. 

  • Navigate to Customisation>Scripting>Script Deployments : Tick "show undeployed" and filter by record type = "Time" and type = "user event" Find the script "ICS Time filtering" Edit the script deployment. 


  • ICS Time Filtering Script : Edit the record and tick "deployed". 
  • Audience tab : On the audience tab set the roles you wish to have this script triggered by. Include payroll admin and the end users. 


  • Parameters tab : Set the field id of the TIME TRACKING PCST REPLICA FIELD on the Employee record in the Time Tracking tab. Save the deployment. 

NB: If you are using Weekly Timesheet feature then you also need to deploy the above script to the timesheet record. View the script deployment. Under "Actions" click "make copy" Apply it to "Weekly Timesheet" and ensure the status is released. Save

4. Employees


  • The timesheet filtering will need to be applied to your employee records
  • Under the Time Tracking tab of an Employee record, the enter the ID of your PCST Replica field into the TIME TRACKING PCST REPLICA FIELD
  • You will need to do this for all employees who will enter timesheets using the filtered option

5. Custom Forms


  • Navigate to Customisation>Forms>Entry Forms : Find the timesheet entry form you wish to update or create a new one. Ensure that the "Pay Component Sub Type field" is still shown but make it "Inline text
     so it can't be changed. Ensure the new filtered time sheet field is shown and normal. 



6. Time Entry

Users with appropriate permissions should now be able to enter timesheets using the new filtered field. When the timesheet is save the script will take the filtered field value and set that into our pay component sub type field.  Timesheets can then be processed as normal according to other relevant settings. 


Issues can exist when time types are defaulted or if the pay component sub type is updated manually. Contact support or your ICS consultant to discuss. We also recommend against using NetSuite's "copy timesheet" button.