ANS-1376 · PROJECT MANAGEMENT

How to Automate Time Sheet Billable Checkbox Based on Project and Service Item?

Configure NetSuite to automatically set the billable status on time entries by leveraging custom fields and client-side scripting.

Short answer

Automate the billable checkbox on NetSuite time sheets by creating custom entity and item fields, configuring them for projects and service items, and then adding transaction column fields to source these values. A client script with a postSourcing function will then dynamically update the billable status based on these sourced fields.

Scenario

Users need to ensure that the 'Billable' checkbox on time sheets is automatically checked or unchecked based on the associated project and service item. Manually adjusting this checkbox for every time entry can be inefficient and prone to errors, requiring a system-driven solution.

Solution

  1. Create a custom Entity field labeled "Billable".

    • Apply it to projects.
    • Make it checked by default.
  2. Create a custom Item field labeled "Billable".

    • Apply it to the service items.
    • Make it checked by default.
  3. Customize the Entry form "Time".

    • Make the existing "Billable" checkbox disabled.
  4. Add a new transaction column field to the form.

    • Applies to Time.
    • Display: Hidden.
    • Internal ID: custcol_customer_billable.
    • Source from the project billable field.
  5. Add another new transaction column field to the form.

    • Applies to Time.
    • Display: Hidden.
    • Internal ID: custcol_item_billable.
    • Source from the item billable field.
  6. Add the following script to the postSourcing client script function:

javascript
function postSourcing(scriptContext)
{

  if (name  'customer' || name  'it

Expert NetSuite Support

Need help with this NetSuite issue?

Project Management consulting and configuration support

Talk to a consultant