Salesforce ServiceMax Utilisation Dashboard | Twopir
Zero
Manual meter readings
after go-live
100%
Native Salesforce — no
middleware required
Real-Time
Dashboard updates on
every Work Order close
Auto
Time Usage records
created without manual entry
3
Date filter modes —
Month, Year, Custom
Field-Wise
Usage broken down
by machine and date
Industry
Manufacturing / Industrial
Region
United States
Client Type
Enterprise
Tracking Scope
Multi-Machine, Continuous Runtime
Platform
Salesforce (ServiceMax)
Delivery Timeline
Multi-Phase — Audit → Upgrade → Fix → Optimize

Machine runtime now tracks and reports itself.

Zero
Manual meter readings after go-live — Time Usage records are created automatically the moment a Work Order closes
100%
Native Salesforce — no middleware required, nothing extra to license, host, or maintain
Real-Time
Dashboard updates on every Work Order close — utilisation trends are visible the same moment they happen
Auto
Time Usage records created without manual entry — an Apex trigger and handler class do the calculation
3
Date filter modes — Month, Year, and Custom ranges let usage be sliced however operations needs it
Field-Wise
Usage broken down by machine and date — day-wise stacked charts with field-wise summary totals

Challenge vs. Solution

Six Gaps in Manual Tracking — and Six Pieces of Native Automation

✕ Before 6 Problems
There was no automated tracking of machine runtime between service visits — technicians logged usage by hand after every Work Order.
Manual errors crept into every meter reading, since capture depended entirely on a human getting the numbers right.
No centralised dashboard existed to see utilisation trends across machines or Installed Products.
Runtime comparisons meant digging through past Work Orders by hand — there was no automatic link between current and previous readings.
Field mapping was hard-coded, so any change to how usage data was tracked required a developer.
Usage data had no structure for reporting — nothing was standardised enough to slice by day, month, or machine.
✓ After — What We Built 6 Fixes
An Apex trigger fires the moment a Work Order closes, auto-calculating runtime with zero manual entry.
The handler stores only valid, positive time deltas — invalid and null readings are filtered out automatically.
A Lightning Web Component dashboard, embedded directly on each Installed Product, visualises usage with Highcharts.
The Apex handler automatically identifies the previous Work Order and calculates the delta against it.
Custom Settings drive dynamic field mapping, so tracking configuration can change without touching code.
The dashboard renders day-wise stacked charts with Month, Year, and Custom filters, plus field-wise summary totals.

What We Did

Four Phases, One Native Salesforce Build

Audit

Mapped Manual Tracking Gaps Across Work Orders and Installed Products

We audited how machine runtime was captured across Work Order closures and identified where manual meter readings introduced errors. This audit became the blueprint for a trigger-based automation layer.

Process AuditData MappingArchitecture Review
Upgrade

Built Trigger-Based Runtime Calculation on Work Order Closure

We built an Apex trigger that fires only when a Work Order's End Date is populated for the first time, paired with a handler class that identifies the previous Work Order and calculates the time delta. A trigger bypass setting keeps the automation configurable.

Apex TriggerApex Handler ClassesTrigger Bypass Configuration
Fix

Hardened the Logic Against Null and Invalid Readings

We added validation so the system stores only positive, valid time deltas, filtering out null and invalid values before they reach reporting. Dynamic SOQL pulls only the fields required per configuration, keeping processing efficient.

Data ValidationDynamic SOQLCustom Settings
Optimization

Made Field Mapping Configurable Without Code Changes

We moved field mapping into Custom Settings with schema validation, so time-tracking fields can be reconfigured safely without a developer touching Apex. This keeps the automation adaptable as machine types change.

Custom SettingsSchema ValidationDynamic Field Mapping
Reporting

Shipped a Native Dashboard on the Installed Product Record

We built a Lightning Web Component dashboard, embedded directly on the Installed Product, that renders day-wise stacked usage charts via Highcharts. Field-wise summary totals and Month/Year/Custom filters give operations managers usage trends without leaving Salesforce.

Lightning Web ComponentHighchartsDashboard Controller

Technicians used to log machine hours by hand after every visit. Now the system calculates it the moment a Work Order closes — nobody touches a meter reading, and operations managers see the trend without asking for a report.

— Twopir Delivery Lead · Manufacturing (Salesforce + ServiceMax) · 2025

Key Outcomes

What MTM Ended Up With

Zero

Manual meter-reading entry

Time Usage records are now created automatically on Work Order closure — no technician data entry required.

Native

Fully native Salesforce build

No middleware or third-party integration layer to license, maintain, or troubleshoot.

Real-Time

Utilisation visibility

Operations managers see machine runtime trends the moment a Work Order closes, not at the next reporting cycle.

3 Filters

Month, Year, and Custom date ranges

Usage data can be sliced any way the operations or service admin team needs, directly on the dashboard.

Config, Not Code

Field mapping lives in Custom Settings

Tracking logic adapts to new machine types or fields without a developer editing Apex.

One Dashboard

A single Lightning Web Component, everywhere it's needed

Embedded on every Installed Product, replacing scattered manual logs and disconnected spreadsheets with one live view.


Technologies Used

The Tools and Techniques Behind This Engagement

Salesforce ServiceMax Lightning Web Components Apex Triggers Apex Handler Classes Highcharts Custom Settings Dashboard Controller Dynamic SOQL Time_Usage__c (Custom Object)

Running a similar field service or manufacturing operation?

We'll audit how your team tracks equipment usage or field data today and show you exactly where native Salesforce automation removes manual work. Findings back in 5 business days — no commitment.


More From Twopir

Ready to Stop Tracking Machine Usage By Hand?

Twopir has delivered Salesforce and HubSpot implementations for 12+ years and 500+ clients across manufacturing, legal, healthcare, and SaaS. We work US EST, UK GMT, and AEST hours, so your team is never waiting on a time zone.

12+ Years · 500+ Clients · Salesforce Partner · HubSpot Partner ·
US · Canada · UK · UAE · Australia · New Zealand