Client: Commercial Mechanical Contractor

Construction Timesheet App

Platform: Power Apps, Power Automate, Dataverse | Result: No manual payroll entry 

The Challenge

The client operates with field crews across multiple active job sites, with employees frequently working across several job codes and cost codes within a single week. Field crew time tracking was done on paper: timecards were collected by foremen and manually keyed into the construction ERP by the payroll team.


This caused recurring problems

These manual processes created recurring delays and inefficiencies across the payroll workflow, reduced visibility between field and office teams, increased the risk of data entry and coding errors, and made it more difficult to track approvals, verify submitted hours, and ensure accurate and timely payroll processing.


The Solution

A Power Apps timesheet app providing weekly time entry by job code and cost code, a structured timesheet approval workflow, and automated import into the construction ERP — eliminating manual payroll entry entirely. It follows every timesheet from entry and validation through approval to payroll.


Job and cost code time tracking

Weekly grid layout with a row per job code, cost code and hours type combination.

Dropdown selection for job codes, cost codes and hours types, drawn live from the ERP so only valid combinations can be chosen.

Overtime and double time tracking alongside regular hours, holiday and paid time off, all within a single sheet.

Incentive pay flagging at line level.

Foreman and employee digital signature capture on every timesheet.


Validation

px 238

Required fields enforced before submission, with clear guidance on what is missing.

px 239

Decimal hour entry supported to quarter-hour precision.

px 240

Duplicate submission prevention — one timesheet per employee per week.

px 241

Rules preventing incomplete or zero-hour rows from being submitted.


Timesheet approval workflow

The timesheet approval process was manual, inconsistent, and lacked real-time visibility, making it difficult for managers and employees to stay aligned and for the office team to track status and ensure timely, accurate payroll processing.

Construction payroll ERP integration 

Outcomes

Area
Before
After

Data entry

Manual re-keying of every line

Automated transfer to ERP

Approval record

Informal, undocumented

Auditable, with signatures

Error correction

Discovered after payroll run

Prevented at entry

Visibility

None until paperwork arrived

Real time for staff and managers

Cost allocation

Manual, error prone

Rule driven and consistent

With construction timecard automation in place, the payroll team no longer re-keys hours. Job cost allocation is applied consistently by rule rather than by interpretation, and every approval carries a documented signature and timestamp.


Construction Timesheet App — Technical Detail

Data model

px 162

Dataverse timesheet data model with header and line-level separation: a header record carrying week, employee, status, totals and signatures, with related entry rows for each job code, cost code and hours type combination.

px 209

Approved records written to a separate archive table on approval, keeping the active working set small and preserving an immutable approved history.

px 78

Reference data — employees, job codes, cost codes, hours types — synchronized from the ERP rather than maintained separately.

px 146

Role and reporting-line configuration held in a dedicated table, driving both approval routing and data visibility.

Integration

px 76

Power Apps ERP API integration using the OAuth2 client credentials flow against the ERP’s data exchange endpoint, with token caching and automatic refresh on expiry.

px 77

Approved timesheets posted as batched JSON payloads to the payroll import endpoint.

px 78

Conditional logic deriving department and cost center from job code and hours type, ensuring administrative and non-productive time posts to the correct cost center.

px 79

Response validation with failed records surfaced for correction rather than discarded.

Engineering considerations

px 143

Power Apps delegation designed for large datasets — server-side filtering restricted to delegable operators, with role and permission logic evaluated against cached collections to avoid record-limit truncation as data volume grows.

px 117

Signature capture stored as image data against the timesheet record, with capture area handling to ensure complete signatures on all form factors.

px 165

Decimal precision configured at column level to support quarter-hour entry.

px 112

Client-side validation preventing incomplete submissions, with specific messaging per failure rather than a generic error.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top