Skip to content

Built for the Mill Floor

By William Rodriguez
Case StudiesPower AppsPower BIDataverse

When quality control runs on paper, you find out about problems after they've already moved downstream. Grading errors get tallied at the end of a shift instead of caught in real time. Kiln readings get reviewed post-cycle instead of validated at the moment of entry. Yard observations go unrecorded. And by the time leadership asks "where are we on quality?" — nobody has a clean answer.

TL;DR


6
Model-driven apps
9
Power BI reports
4
QC workflows digitized
2
Delivery phases
30+
Custom Dataverse entities

Table of Contents

Overview

That was the reality for a private forest products and forestry company operating at approximately $250M in revenue. Every major QC workflow — grading accuracy, kiln drying, planer setup, yard inspections — lived in spreadsheets, paper logs, and the heads of individual operators. There was no system of record, no real-time process enforcement, and no structured way to spot drift before it became a defect.

Over two phases of engagement spanning 2025 and 2026, we designed and delivered a complete Microsoft Power Platform quality intelligence system — six Model-Driven Power Apps codifying every major QC workflow, nine Power BI reports surfacing operational intelligence at every level of the organization, and a governance framework built to enterprise standards. What had been disconnected, manual, and invisible became structured, auditable, and immediately visible to operators and leadership alike.

The Challenge

The problems weren't obscure. They were the kind that accumulate in any operation where growth outpaces process formalization — visible to anyone who looked, but with no clear path to fix them without stopping production to do it.

No structured data capture. Grading accuracy — how frequently a grader correctly classified a board — was tracked informally if at all. Kiln drying checks happened on paper. Planer setup tests lived in individual operator notes. Yard quality observations had no standard format. Every workflow produced data that was either never captured or captured in a form that couldn't be analyzed.

No real-time process control. Kiln operations are sensitive. Moisture content, temperature readings, and statistical variance from control bounds all need to be monitored against established limits — not discovered after the fact. Without a system enforcing those limits at the point of data entry, out-of-specification batches could move forward undetected.

No cross-process visibility. Even where data existed, it lived in disconnected places. Leadership had no unified view of quality performance across grading, drying, machining, and yard staging. Identifying a quality trend — let alone its root cause — required manual effort across multiple sources.

Spreadsheet-driven administration. Configuration and operational management ran on shared Excel files and SharePoint documents, creating version control risks and no audit trail for changes.

The goal was straightforward: replace every one of these workflows with a governed, structured system — and surface the resulting data in dashboards that made quality performance visible at every level of the organization.

The App Suite

Six Model-Driven Power Apps — delivered across two phases — each codifying a distinct operational workflow with structured data entry, automated business logic, and role-based access control.

Grading Accuracy

The grading accuracy workflow required the most granular data model of the engagement: individual board-level recording across every grading session, with full error classification down to face and location on each board.

Grading Accuracy App (Operator View). The primary data capture tool for QC technicians on the floor. Each session captures a header record — production date, shift, QC technician, grader identity, species, dimension, length, grade type — and then a detail subgrid where individual boards are recorded one at a time: board number, error face, error location, grade status, and misgrade classification. Business logic runs on save via a JavaScript form library, enforcing record creation sequences and populating related fields automatically. Dropdown selectors for all categorical data are drawn from governed Dataverse configuration tables, ensuring consistency regardless of who is entering data.

Grading Accuracy Admin App (Management View). A separate app surface for managers that exposes the underlying configuration tables — shifts, species definitions, grade categories, error classifications, static config — without giving operators access to modify them. Keeps the data entry experience clean while preserving full admin control in a governed layer.

Why it matters. Before this app existed, grading accuracy was either undocumented or tracked inconsistently. Now every session produces a structured, timestamped record tied to a named grader, shift, and species — making performance trends and misgrade patterns measurable for the first time.

Kiln Drying Tool

Kiln operations are governed by statistical process control principles. Moisture content, temperature variance, and mean readings need to stay within upper and lower control limits — and detecting violations has to happen in real time, not during a post-shift review.

Hot Check App. Captures readings during active drying cycles. Each hot check record links to a batch header — kiln ID, track, batch zone, personnel loading and unloading, run schedule, fuel type — and records temperature and quality readings for that cycle. The header-to-detail structure mirrors how operations actually run: one batch, many checkpoint readings.

Inline Test App. Captures statistical process control data linked to hot check test packets. Inline test records track measurement readings for trend analysis — feeding directly into the SPC dashboards that give QA supervisors visibility into whether a process is in control.

Automated Control Bound Validation. Three Power Automate workflows fire on record creation for both hot check and inline test records:

If a reading falls outside its configured bounds, the workflow surfaces a validation message to the operator immediately: "Input field must be between upper and lower Control Limits." The record cannot proceed until the reading is corrected or the deviation is acknowledged.

Planer Setup App

Planer machines require precise setup specifications before each production run. This app captures single test and batch test records against configured measurement groups and retest specifications — creating a structured record of every setup event, including retests and tolerance parameters. Rough lumber specifications and finished lumber targets are tracked as linked references, giving quality engineers a traceable setup history for every run.

Yard Quality Checks

The yard staging area — where lumber is categorized and held before shipping — had no structured quality observation system. This app captures yard quality check records by yard category, timestamped and linked to configurable classification tables. Supervisors now have an auditable record of quality observations across the yard with consistent categorization rather than informal notes.

The Reporting Suite

Nine Power BI reports — each connected to the Dataverse semantic models via parameterized Power Apps connectors — delivering operational intelligence at every level from the mill floor to the executive suite.

Grading Accuracy Analytics. The primary analytics report surfaces 30+ interactive visuals across the grading accuracy data: boards checked by grader and grade location, error rates by face and error location, misgrade breakdowns by species and dimension, incorrect rate trends by personnel over 13 weeks, and Pareto analysis identifying the highest-volume misgrade categories. Custom date range slicers and shift filters give QA managers the ability to isolate exactly the time window and population they care about. A companion paginated report delivers the grading error detail in a formatted, printable layout — ready for shift handoff or management review.

Kiln Operations Suite (Five Reports).

Planer Setup. Two-page report spanning individual test results and an aggregate summary across machine setup sessions. Setup tolerances, test specifications, and retest rates give engineers and operators a unified view of machine configuration history.

Yard Quality Checks. Quality control report for yard supervisors: defect detection trends, grade compliance by yard category, and time-based quality observation tracking.

Governance

A platform you can't operate without the people who built it isn't a platform — it's a dependency. Every deliverable was built to be owned, maintained, and extended by the client's own team — without external support required to keep it running.

Azure DevOps source control — all Power Apps solutions, Power BI reports, and semantic model files version-controlled in Git with a structured branching and release workflow across both phases of the engagement.

Multi-environment architecture — parameterized connector configurations allow reports and apps to point to Dev, Test, or Production Dataverse environments without code changes. Environment promotion follows a governed release process.

SharePoint-based configuration — a central configuration file on SharePoint drives operational settings — time zone adjustments, configuration references — across the semantic models. Changes to configuration propagate to all reports without report modifications.

Scoped security roles — operator and admin roles are distinct at the app level. Operators access data entry surfaces; administrators access configuration tables. Power BI audience segmentation ensures each user tier sees the reports relevant to their role.

Automated refresh schedules — all semantic models on governed refresh cadences tied to operational data freshness requirements.

Outcomes

For a $250M operation, quality drift is a margin problem — not a reporting problem. A kiln batch that moves through out-of-spec, a grading pattern that goes unnoticed for a season: these aren't data gaps, they're production costs. The measure of this platform isn't the number of apps delivered — it's when problems get caught. Before this engagement, the answer was "after the fact." Now the answer is "at the point of entry."

MetricResult
Model-Driven Power Apps delivered6 (across 2 phases)
Power BI reports delivered9
QC workflows digitized4 (grading, kiln, planer, yard)
Custom Dataverse entities30+
Automated bound validation workflows3 (moisture, std deviation, mean)
Reporting hierarchyOperator → Supervisor → Executive
Data environments supportedDev / Test / Production
Governance standardAzure DevOps, parameterized environments, scoped RBAC

Before: Quality control lived on paper and in individual operators' heads. Out-of-spec kiln readings were discovered after the batch moved. Grading error patterns were invisible to anyone outside the floor. Leadership had no unified view — and no reliable way to get one.

After: Every grading session, kiln cycle, planer setup, and yard inspection produces a structured, timestamped, auditable record. Control bound violations are caught at the moment of entry. Operators see their own performance metrics. QA supervisors track 13-week trends and Pareto-ranked misgrade categories. Executive dashboards roll up quality intelligence across every process in the plant — from a single screen.

The platform doesn't just report on the operation. It governs it.

Frequently Asked Questions

How do you digitize quality control that runs on paper?

You codify each workflow as a structured, governed app rather than a form. We built six Model-Driven Power Apps for grading, kiln drying, planer setup, and yard inspection — each with header-to-detail data capture, dropdowns drawn from governed Dataverse tables, and role-based access, so every observation becomes a timestamped, auditable record.

Can quality checks catch out-of-spec readings in real time?

Yes. Three Power Automate workflows validate moisture content, standard deviation, and mean readings against configured control limits at the point of entry. If a reading falls outside its bounds, the operator is stopped with a validation message before the record can proceed — process enforcement, not after-the-fact reporting.

Who owns and maintains a Power Platform quality system after delivery?

The client's own team. Everything was version-controlled in Azure DevOps, parameterized across Dev/Test/Production environments, and driven by SharePoint-based configuration — so the platform can be operated, extended, and trusted internally without the people who built it.

When your QC data lives on paper

If your quality control data lives on paper or in spreadsheets, your production decisions are always running behind your process. That's an architecture problem, and it's fixable. Reach out to talk about what a structured quality intelligence platform looks like for your operation.


About the author — William Rodriguez is the founder of Analytical Ants, the delivery arm of Analytical Solutions. He holds an MBA from Emory University's Goizueta Business School and dual undergraduate degrees in Finance and Managerial Science, and spent roughly a decade architecting enterprise BI and data platforms for operations running $10M–$60B in revenue across 6+ industries. More about Analytical Ants.