Clock In Clock Out

The Clock In Clock Out module provides comprehensive employee time tracking with a modern React-based interface. It integrates with manufacturing Job Cards and Tasks, enabling accurate tracking of productive time, breaks, downtime activities, and rework.


Key Features

Modern React Interface

The module features a responsive, touch-friendly web application designed for workshop environments:

  • Large, easy-to-tap buttons for quick actions

  • Real-time status updates

  • Employee greeting with current activity display

  • Colour-coded activity buttons (green for productive, red for downtime)

  • Grid or list layout for the job and task picker, with the choice remembered between sessions

Employee Identification

  • Enter employee number to identify yourself

  • Automatic employee lookup and greeting

  • Current activity status display

  • Break status indicator

Core Actions

Action

Description

Clock In

Record your arrival time and start your workday

Clock Out

Record your departure time and end all active tracking

Start Job

Select a manufacturing Job Card to begin work

Rework

Log time against a job as rework with an optional reason (see Recording Rework)

Break

Take a short break (smoko)

Lunch

Take a lunch break

End Break

Return from break and automatically resume previous activity

Activity Types

Activities are categorised and colour-coded for easy identification:

  • Productive Activities (Green) - Non-downtime activities that count as productive time

  • Downtime Activities (Red) - Activities that count as downtime (e.g., machine maintenance, waiting for materials)

Activities can also be configured to prompt the worker for a short description before the timer starts, making it easy to capture context (job number, batch reference, reason) inline with the time log.

Configure these in Clock In Clock Out Settings.

Prerequisites and Initial Setup

Before using the Clock In Clock Out module, ensure the following are configured in your NexWave system.

Required Activity Types

The module requires specific Activity Types to exist in NexWave. These are used to categorise time log entries in Timesheets.

Navigate to HR > Settings > Activity Type and ensure the following Activity Types exist:

Activity Type

Purpose

Job

Time spent working on manufacturing Job Cards

Task

Time spent working on Tasks

Break

Short break time (smoko)

Lunch

Lunch break time

Unaccounted

Gap time between activities (auto-generated)


To create an Activity Type:

  1. Go to HR > Settings > Activity Type

  2. Click Add Activity Type

  3. Enter the Activity Type name (e.g., "Job")

  4. Save

Module Installation

The Clock In Clock Out module must be installed on your site. Contact your system administrator if the module is not available.

Clock In Clock Out Settings

The Clock In Clock Out Settings page allows you to configure activity types, break allowances, productivity budgets, and rework behaviour.

Accessing the Settings

Search for Clock In Clock Out Settings in the NexWave search bar, or navigate to Setup > Clock In Clock Out Settings.


Downtime Activities Section

Configure activities that count as downtime (non-productive time). These activities appear as red buttons in the time tracker interface.

Examples of downtime activities:

  • Machine Maintenance

  • Waiting for Materials

  • Cleaning

  • Equipment Breakdown

  • Training

To add a downtime activity:

  1. In the Downtime Activities table, click Add Row

  2. Enter the activity name in the Name field

  3. Optionally tick Prompt for Description if workers should enter a short note before the activity starts (see Activity Description Prompts)

  4. Save the settings

Non-Downtime Activities Section

Configure productive activities that are not job-specific. These activities appear as green buttons in the time tracker interface.

Examples of non-downtime activities:

  • General Workshop Tasks

  • Quality Inspection

  • Stock Management

  • Documentation

Include Non-Downtime Activities in Manufacturing: When this checkbox is enabled, hours logged against non-downtime activity types are counted as manufacturing hours in productivity reports. This is useful when general productive work should contribute to manufacturing productivity metrics.


Activity Description Prompts

Both downtime and non-downtime activities can be configured to prompt the worker for a short description before the timer starts. This is useful when an activity needs context that varies per occurrence (a batch number for Quality Inspection, a part code for Rework, a reason for a downtime stop).

Field

Description

Prompt for Description

When ticked, a popup is shown to the worker on the tablet UI when they tap this activity. They must enter at least 3 characters before the timer starts.

Description Prompt Text

Optional. Text shown in the popup header (e.g. "Enter the inspection batch number"). Defaults to "Enter details for this activity" when blank.

The description entered by the worker is saved as the Description of the corresponding Timesheet Detail row, making it visible in reports and on the Timesheet itself.

Smoko Settings

These break allowance fields are available in the settings:

Setting

Description

Example

Breaks Per Day

Expected number of breaks for a full workday

2

Min Working Hours Per Day

Minimum hours to qualify as a full day

8

Breaks Per Short Day

Expected breaks for shorter shifts

1

Productivity Summary and Productivity Summary by Employee do not use these fields to calculate expected or paid breaks. Use the related hours and break reports to review recorded breaks.

Budget Settings

Setting

Description

Default

Downtime Budget Percentage

Percentage of the full job budgets used as the downtime allowance in Productivity Summary

12%

In Productivity Summary, the Downtime row shows this allowance under Comparison Budget (h). For example, total Full Job Budget (h) of 10 hours and a setting of 12% gives a downtime allowance of 1.2 hours. This setting does not change actual hours. Productivity Summary by Employee does not show a separate downtime budget.

Rework Settings

The Rework Settings section controls whether workers can log time against a job as rework directly from the tablet UI.


Setting

Description

Allow Rework

When ticked, workers see a Rework button on each job card in the tablet UI. Selecting it logs the time entry as rework on the underlying Job Card Time Log row.

Require Rework Reason

When ticked, workers must enter a reason (3 to 500 characters) before the rework time log starts. When unticked, tapping Rework starts the time log immediately with no reason. Only available when Allow Rework is on.

Rework time is recorded against the same Job Card as regular time, but flagged separately on the Job Card Time Log row (see Recording Rework). This lets reports compare productive build time against rework time at the job, operation, and employee level.

Using the Clock In Clock Out Interface

For Employees

Clocking In

  1. Navigate to the Clock In Clock Out page

  2. Enter your employee number

  3. The system greets you by name

  4. Click Clock In to record your arrival


Starting a Job

  1. After clocking in, click Start Job

  2. Use the layout toggle in the top right to switch between grid view (cards) and list view (rows). Your choice is remembered for next time.

  3. Use the search bar to find jobs by operation, item code, item name, customer, sales order, or job card ID

  4. View job details including:

    • Sales Order number

    • Job Card ID

    • Item code

    • Item name

    • Customer name

    • Quantity

    • Time allocated vs time used (with progress bar)

    • Status (e.g. Open, Work In Progress)

  5. Click on a job card to start tracking time


The same data is available in the more compact list layout, which is handy on smaller tablets or when the queue of available jobs is long:


Working on Tasks

  1. Click Start Job then toggle to Tasks view

  2. Search for tasks by subject or Sales Order

  3. Select a task to begin tracking time

Task Requirements

For Tasks to appear in the Clock In Clock Out interface, they must meet the following criteria:

  • Status: Must be Open or Working

  • Sales Order Link: Tasks can optionally be linked to a Sales Order through the Sales Order field

Tasks are searchable by:

  • Task subject

  • Sales Order number

  • Customer name

  • Priority

  • Status

When you select a Task, the system records time against it in your Timesheet with the Activity Type set to "Task".

Recording Rework

When Allow Rework is enabled in the settings, every job card in the job picker shows a Rework button alongside the normal selection target.

To start a rework time log:

  1. Click Start Job to open the job picker

  2. Locate the job that needs reworking and click its Rework button (visible in both grid and list views)

  3. If Require Rework Reason is on, a popup asks you for a reason. Enter at least 3 characters describing what needs reworking and why, then click Start Rework. Press Escape or Cancel to back out

  4. The system starts a new time log on the job. The Job Card Time Log row is flagged as rework and stores your reason


Switching between regular work and rework on the same job

If you are already logged onto a job and tap the regular job tile, the system continues your current time log. If you instead tap Rework on the same job (or vice versa), the system closes the current time log and immediately opens a new one with the rework flag flipped. This keeps your build time and rework time on the job cleanly separated, even when the same worker swaps modes mid-session.

Where rework data lives

  • On the Timesheet, a rework time log looks the same as a regular Job time log. The rework flag and reason are not duplicated to the Timesheet Detail row

  • On the Job Card, the Time Logs child table shows two new columns: Is Rework (a checkbox) and Rework Reason (a free-text note). Reports and dashboards can use these to separate productive build time from rework time

Activity Description Prompts

When an activity has Prompt for Description enabled in the settings, tapping the activity opens a popup that asks for a short description before the timer starts. This is the standard way to capture per-occurrence context inline with the time entry.


The description must be between 3 and 140 characters and is saved as the Description of the resulting Timesheet Detail row. The popup header text is configurable on the activity row in the settings.

Taking Breaks

  1. Click Break or Lunch button

  2. Your current job/task is automatically saved

  3. The interface shows you are on break

  4. Click End Break to resume your previous activity automatically

Marking a Job Complete

When working on a job, you can mark it as complete:

  1. Active jobs show a Mark Complete button

  2. Click to record that you've finished your part of the job

  3. Your name is added to the job's completion record

Viewing Your Hours

  • Click My Hours to see your worked hours breakdown

  • Click My Smoko Times to see your break time details

How Time Logs Are Recorded

The Clock In Clock Out module records time simultaneously to both Timesheets and Job Cards (for manufacturing work). Understanding how this works helps with troubleshooting and reporting.

Timesheet Time Logs

Each day, the system creates or updates a Timesheet for the employee. Time logs are recorded in the Timesheet Detail child table with the following information:

Field

Description

Activity Type

The type of activity (Job, Task, Break, Lunch, Unaccounted)

Description

Job Card ID, Task subject, or activity name. For activities with description prompts, this is the worker-entered text

From Time

When the activity started

To Time

When the activity ended

Task

Link to the Task document (for Task activities)

Entry Type

Marks special entries as "Clock In" or "Clock Out"

The Entry Type field helps identify the first and last entries of the day for attendance tracking.

Job Card Time Logs

When working on manufacturing Job Cards, time is also recorded in the Job Card Time Log child table:

Field

Description

Employee

The employee working on the job

From Time

When work started

To Time

When work ended

Completed Qty

Quantity completed during this time log

Is Rework

Ticked when the row was started via the Rework button

Rework Reason

Worker-entered reason captured when Require Rework Reason is on

When an employee starts a Job Card:

  • The Job Card status changes from Open to Work In Progress

  • A new time log entry is created with the employee and start time

When an employee stops working on a Job Card (by switching to another activity or clocking out):

  • The time log entry is closed with an end time

  • The completed quantity is calculated

Simultaneous Recording

When you start a Job in the Clock In Clock Out interface:

  1. Timesheet: A new time log entry is created with Activity Type "Job" and the Job Card ID as the description

  2. Job Card: A new time log entry is created with your employee ID and start time. If you started via the Rework button, the row is flagged accordingly

When you switch to a different activity:

  1. Timesheet: The current time log is closed, and a new one starts for the new activity

  2. Job Card: If you were working on a job, that time log is closed

Unaccounted Time

The system automatically tracks Unaccounted time to ensure there are no gaps in the daily timesheet:

  • When you complete an activity but don't immediately start a new one, an "Unaccounted" entry begins

  • When you mark a job as complete, Unaccounted time starts automatically

  • These entries help identify periods where employees weren't actively tracking work

Break Resumption

When you take a break, the system remembers what you were working on:

  1. Your current activity (Job or Task) is saved in the Timesheet's Last Activity and Last Job fields

  2. When you click End Break, the system automatically resumes your previous activity

  3. For Jobs, a new time log entry is also created in the Job Card

Completed By Employees

The Job Card includes a Completed By Employees field that tracks which employees have marked the job as complete. This allows multiple employees to work on the same Job Card and each indicate when they've finished their part.

Work Tracker Dashboard

The Work Tracker provides real-time monitoring of all employee activities across the workshop.

Access via: Navigate to /worktracker from the main interface


Dashboard Features

Active Manufacturing Jobs

Real-time view of employees working on Job Cards:

  • Employee name

  • Sales Order

  • Job Card ID

  • Operation

  • Item name

  • Allocated time

  • Time status (remaining or exceeded)

  • Last start time

Active Task Activities

Employees currently working on Tasks:

  • Employee name

  • Task subject

  • Time consumed

  • Last start time

Active Productive Activities

Non-downtime activities in progress:

  • Employee name

  • Activity type

  • Time consumed

  • Last start time

Active Downtime Activities

Downtime tracking in progress:

  • Employee name

  • Downtime activity type

  • Time consumed

  • Last start time

Auto-Refresh

  • Dashboard refreshes automatically every 60 seconds

  • Manual refresh button available

  • Last updated timestamp displayed

Configuration

Employee Allowed Operations

Filter which jobs employees see based on their skills:

  1. Open the Employee record

  2. Add operations to "Allowed Operations" field

  3. Employee will only see jobs matching their allowed operations (plus any jobs they're currently working on)

This is useful in workshops where employees specialise in certain operations. When configured:

  • Employees only see Job Cards that match their allowed operations

  • They can still see jobs they're currently working on (even if not in their allowed list)

  • They can see the last job they worked on for easy continuation

Review Productivity Reports

Use Productivity Summary to review recorded work for a period. Use Productivity Summary by Employee to compare the same results for each employee. Both reports separate hours recorded in the selected period from the complete job comparison. This helps you review recent activity without comparing part of a job with its full budget.

Productivity Summary report with example data

Productivity Summary report with example data


The report above uses example data for illustration only.

Before You Start

Check these items before you review the reports:

  • You have access to the report and the Timesheets for the employees you need to review. You also need access to their Job Cards to see job budgets, job details, and rework information.

  • Employees have closed time entries with both a start time and an end time. Closed entries on both draft and submitted Timesheets are included.

  • Downtime activities are set in Clock In Clock Out Settings.

  • The Include Non-Downtime Activities in Manufacturing setting has the correct value for your process.

  • Job Cards have Expected Time Required (In Mins) set if you want to compare a budget with actual hours. The report converts this saved value to hours.

  • Rework entries use Is Rework on the Job Card time log.

Run Productivity Summary

  1. Search for and open Productivity Summary.

  2. Select the Company.

  3. Optional: select an Employee to limit the result.

  4. Optional: select an Activity Type to see one activity.

  5. Set the From Date and To Date.

  6. Review the chart, the period totals, and any job comparison values.

  7. Expand Manufacturing, Downtime, Unaccounted, or Excluded Activities to see the source rows.

The chart shows Manufacturing, Downtime, and Unaccounted hours. The table also shows excluded activities and the total included hours.

Open How this report works above the chart for the calculation notes. Rows below a total explain that total. Do not add the detail rows to it again.

Run Productivity Summary by Employee

  1. Search for and open Productivity Summary by Employee.

  2. Select the Company.

  3. Optional: select an Employee.

  4. Optional: select an Activity Type to see one activity.

  5. Set the From Date and To Date.

  6. Expand an employee to see the category totals.

  7. Expand a category to see the jobs, activities, and time-entry details.

Use this report when you need an employee-level review. Do not add the employee job comparisons together. A shared job can show the same whole-job comparison for each employee who worked on it.

Use the same Company, Employee, Activity Type, From Date, and To Date in both reports when comparing results. Their default date ranges differ.

Leave Activity Type blank to review all activities. When you select one, the rows and totals show only that activity. The chart shows its included hours. A single-activity view does not show the downtime allowance. Whole-job comparison columns remain available when Activity Type is Job; they are blank for other selected activities.

When Activity Type is blank or set to Job, the date filters select jobs that had recorded work during the period. Whole Job Actual (h) then includes all recorded job hours for those selected jobs, including hours before or after the selected dates and hours from other employees. This comparison is still limited by the selected Company and by the Timesheets that you can read.

Understand the Results

Result

Meaning

Full Job Budget (h)

The full saved Expected Time Required (In Mins) for the selected Job Cards, converted to hours. It is an operation budget, not an employee target.

Comparison Budget (h)

For a completed job, the full job budget. For an unfinished job, the whole-job hours used so far, capped at the full job budget. This comparison does not change the saved Job Card budget.

Whole Job Actual (h)

All recorded Job hours for the selected Job Cards, across dates and employees, subject to your Timesheet access. This value can exceed the full job budget when several employees work at the same time or the job overruns.

Comparison Budget (h) on the Downtime row

The full job budgets multiplied by Downtime Budget Percentage, shown only in Productivity Summary.

Actual in Period (h) or Manufacturing in Period (h)

The hours for the row within the selected dates.

Manufacturing (h)

Timesheet hours recorded with Activity Type set to Job, plus configured non-downtime activities when the related setting is on.

Downtime (h)

Time from activities configured as downtime.

Unaccounted (h)

Gaps that the time tracker recorded as unaccounted time.

Included Hours (h)

Manufacturing, downtime, and unaccounted hours combined.

Excluded Activities (h)

Time that is outside the three included groups. This time is not shown in the chart.

Current Job Status

The current status of the Job Card. It is not the status that applied when the time was recorded.

Rework in Period (already counted) (h)

Rework time within the selected dates that is already part of manufacturing hours. Do not add it to manufacturing again.

Budget Note

Explains how the report selected the comparison budget and whether a whole-job comparison is repeated for a shared job.

Reason / Notes

The recorded description or rework reason, when available.

Entry From and Entry To

The original start and end of a non-job activity entry or a rework time log. These columns are blank on normal job summary rows.

Timesheet

A link to the source Timesheet for a non-job activity entry. Normal job summary rows and rework rows do not contain this link.

The report does not calculate a performance percentage. Compare the budget and actual hours with the job context before you make a performance decision.

Normal job rows combine the matching Timesheet entries from the selected period into one period total. Open Job Card to review job details. Product Name and Sales Order give additional context where NexWave can read those details. Expand a job where a rework breakdown is available. Non-job activity rows show individual Timesheet entries, including their employee, note, and entry times. Blank detail cells on summary rows are expected.

Tasks, breaks, and lunch appear under Excluded Activities unless the activity settings place them in an included category. Included Hours (h) is therefore not a paid-hours or attendance total.

Review Shared Jobs and Rework

The overall total counts each job comparison once. An employee row can show the full comparison for every job that the employee worked on. For this reason, employee comparison rows can overlap.

For a completed job, Comparison Budget (h) equals Full Job Budget (h). For an unfinished job, it equals Whole Job Actual (h) capped at Full Job Budget (h). This prevents a small amount of work in the selected period from appearing to use a complete job budget. A job can be marked as shared because another employee worked on it outside the selected dates.

Rework is a subset of manufacturing time. Expand Manufacturing, then a job, to see Job Rework (already counted in manufacturing) rows. The rework amount comes from the overlap between the employee's included Timesheet entries and the Job Card time logs marked Is Rework. Review the employee, reason, and entry times on the rework row, with the operation and item on the parent job row. Do not add Rework in Period (already counted) (h) to the manufacturing total.

Check the Date Range and Times

The reports include the part of an entry that falls inside the selected date range. If an entry crosses a date boundary, the report allocates only the hours inside the range.

The date filters use the site time zone. Entry From and Entry To use the current user's time zone. This can cause an entry time to appear on a different calendar date from the report boundary.

Print or Export the Result

Expand the rows that you need before you print or export. Use Expand All if you need every breakdown. Collapsed detail rows are left out of the output.

For a printed report or PDF:

  1. Open the three-dot menu and select Print or PDF.

  2. Review Print Settings, then select Submit.

For an Excel file:

  1. Open the three-dot menu and select Export.

  2. Select Excel as the File Format.

  3. Optional: select Include indentation to keep the report hierarchy, and select Include filters to record the report filters.

  4. Select Download.

Print and PDF use a compact layout. Use Excel when you need all report detail columns. The chart represents the included report totals, even when some table rows are collapsed.

Confirmation Checks

Before you use the result, confirm that:

  • Included Hours (h) contains manufacturing, downtime, and unaccounted time.

  • Excluded Activities (h) is separate from included hours and the chart.

  • Full Job Budget (h) matches the saved expected time on the Job Card.

  • Comparison Budget (h) uses the full budget for completed jobs and the capped whole-job actual for unfinished jobs.

  • Whole Job Actual (h) can include hours outside the selected dates and from other employees.

  • The overall total counts each job comparison once.

  • Employee comparison rows are not added together for shared jobs.

  • Rework in Period (already counted) (h) is not added again.

  • Detail rows are not added to their parent totals again.

  • The selected dates and time zones match the period that you want to review.

Troubleshooting

An expected entry is missing

Check Company, Employee, From Date, and To Date, and confirm that you can read the source Timesheet. The entry must have both From Time and To Time. Open entries and entries in cancelled Timesheets are excluded. A Job Card time log alone does not add actual hours without a matching Timesheet entry.

Actual hours appear, but the job budget or details are missing

Check that you can read the Job Card and that it still exists. If the report cannot load it, Current Job Status shows Job details unavailable. Recorded Timesheet hours can still count. A cancelled Job Card also keeps the recorded Timesheet hours in the report, but contributes no budget or rework detail.

Manufacturing hours are higher or lower than expected

Check Include Non-Downtime Activities in Manufacturing in Clock In Clock Out Settings. Expand Manufacturing to identify the source rows.

The job comparison looks duplicated in the employee report

This is expected for a shared job. The same whole-job comparison can appear for each employee, but Total (jobs counted once) counts the job once.

The comparison budget is lower than the full job budget

Check Current Job Status. An unfinished job uses Whole Job Actual (h) capped at Full Job Budget (h). A completed job uses the full job budget.

Whole Job Actual (h) is higher than the hours in the selected period

This is expected when the selected job also has hours outside the date range or from other employees. Use Actual in Period (h) or Manufacturing in Period (h) for the selected-period value.

The current job status does not match the selected period

The report shows the current Job Card status. It does not keep the historical status for each time entry.

Related Reports

These reports give more detail about hours and breaks:

Report

Description

Employee Worked Hours Details

Detailed breakdown of hours worked by employee

Hours Worked Details with Strict Smokos

Hours report with strict break time calculations

Smoko Times Sorted by Employee

Break time analysis by employee

The Is Rework flag on Job Card time logs can also be used in custom reports and Insights dashboards to review productive build time and rework time by job, operation, item, or employee.

Technical Notes

URL Access

  • Main interface: /timetracker

  • Work Tracker dashboard: /timetracker/worktracker

Browser Support

The React application works best in modern browsers (Chrome, Firefox, Safari, Edge).

Workshop Setup

For workshop kiosk setups:

  • Use a dedicated tablet or touchscreen

  • Bookmark the timetracker URL for quick access

  • The interface is optimised for touch input with large buttons

Custom Fields Added by This Module

The module adds custom fields to standard NexWave doctypes:

Employee:

  • Allowed Operations - Table MultiSelect for filtering visible Job Cards

Timesheet:

  • Last Activity - Stores activity type when going on break

  • Last Job - Stores Job Card ID or Task ID when going on break

Timesheet Detail:

  • Entry Type - Select field marking "Clock In" or "Clock Out" entries

Job Card:

  • Completed By Employees - Text field tracking employees who marked the job complete

Job Card Time Log:

  • Is Rework - Check field set when the row was started via the Rework button (visible in the list view)

  • Rework Reason - Small Text field storing the worker-entered reason when Require Rework Reason is on

Clock In Clock Out Activities (settings child table):

  • Prompt for Description - Check field that turns on the description popup for the activity

  • Description Prompt Text - Header text shown in the popup