← All work
Data & reporting

OSTEKS: figures that did not exist before

Industry
Industrial contract coating, mid-sized company
about 6 weeks
From analysis to stable operation
9
KPIs
0.000 %
Deviation from the ERP at acceptance
47
Automated tests
own server, no cloud
Hosting

Starting point

OSTEKS is a contract coater in Saxony: cathodic dip coating, powder coating and foam gaskets for automotive and industrial customers. All data sits in an older industry ERP. It cannot produce the reports management needs. So the figures were pieced together by hand from several Excel lists and ERP screens. Throughput in square metres and kilograms per process did not exist as a figure at all. And some data was nowhere in the ERP: carriers per shift in a shift spreadsheet, sick days and vacation in lists.

Solution

I moved the ERP data into a separate, clean data warehouse. The ERP is only ever read, secured three ways: a database account with read rights only, a connection that can only read, and a check that raises the alarm as soon as write rights appear. Development ran on a copy of a backup, never on the live system. The rules behind the figures are explicit and adjustable: which order belongs to which process, that the production day starts at 6 am, how square metres and kilograms are calculated. Where conversion factors are missing, they are listed openly instead of disappearing into the result. During the working day the data updates every 15 minutes; every night a full run reconciles everything. On top sit a morning report in Excel, exactly in the client's own template, and a live dashboard on a screen in the management office. The office enters absences on a protected page. Everything runs on the client's own server, the dashboard only inside the company network. No cloud.

Result

  • Figures that did not exist before: revenue, order intake, order backlog, throughput per process, carriers per shift and absences, as daily and monthly values.
  • The report is on the shared drive every morning, instead of someone piecing figures together from several Excel lists and ERP screens.
  • Acceptance without deviation: revenue, throughput and order intake for June 2026 match the ERP with 0.000 % deviation.
  • In daily use. After seeing the dashboard, the client asked for previous-day figures and vacation days. Both are in.
  • Built independently of the ERP: if the ERP changes, only the data source has to be reconnected.

There is no language model in the system today; it was built with AI-assisted development. The clean warehouse is the foundation for the next step: asking questions of your own figures in plain language.

Stack

  • TypeScript
  • Node.js
  • MariaDB
  • Drizzle
  • Next.js
  • Recharts
  • Excel-Export
  • Windows Server