← Exception queue

JOB-0055Teräs Kone Oy

Customer CUS-015 · Completed · opened 23.08.2025 at 18:38 · completed 30.08.2025 at 18:38

Work centres: CNC-1, CNC-2, WELD-1

6 326,78 €
22,30 %
In order

No blocking findings: the margin is reportable.

Quote basis and actual

ItemQuote basisActual
Revenue (allocated)28 829,18 €28 376,56 €
Material11 624,93 €11 067,27 €
Labour169,30 h × 47,38 €/h10 347,79 €
Subcontract0,00 €0,00 €
Other variable costs634,72 €634,72 €
Margin6 326,78 €

The estimated margin is not a stored figure: the quote basis stores the items, and the bridge sets out the difference between estimated and actual line by line.

Snapshot computed 21.09.2026 at 14:48 · definition job-margin/2026-09-20.1 · inputs f26206cb89d9

The margin bridge

The bridge explains the arithmetic difference: each line says how much of the gap between the estimated and the actual margin that driver accounts for. It does not establish a cause. Why a price or an hours figure moved is a different question, and this view does not answer it.

  • 1Revenue differencerevenue_varianceCausal−452,62 €
    Evidence (7 rows · Causal reference: 7)
    Causal referenceThe rows that produced the amount

    These rows produced the amount: every figure is computed from these rows.

    TableSourceRowVersionTime (UTC)MappingQualityField
    Invoice line invoice_lineinvoicingIL-000332101.08.2026 at 06:38synthetic/v1In order
    Invoice line invoice_lineinvoicingIL-000333129.05.2026 at 19:23synthetic/v1In order
    Invoice line invoice_lineinvoicingIL-000334109.03.2026 at 08:48synthetic/v1In order
    Invoice line invoice_lineinvoicingIL-000335113.10.2025 at 12:01synthetic/v1In order
    Invoice line invoice_lineinvoicingIL-000336104.09.2025 at 23:11synthetic/v1In order
    Invoice line invoice_lineinvoicingIL-000337130.08.2026 at 17:35synthetic/v1In order
    Credit line credit_lineinvoicingCR-00042104.05.2026 at 01:21synthetic/v1In order
  • 2Material quantity differencematerial_quantity_varianceCausal+264,11 €
    Evidence (11 rows · Causal reference: 11)
    Causal referenceThe rows that produced the amount

    These rows produced the amount: every figure is computed from these rows.

    TableSourceRowVersionTime (UTC)MappingQualityField
    Material consumption material_consumptionerpMC-000451128.08.2025 at 23:46synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000452130.08.2025 at 09:42synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000453124.08.2025 at 07:26synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000454127.08.2025 at 06:31synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000455129.08.2025 at 14:05synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000456128.08.2025 at 21:22synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000457127.08.2025 at 13:57synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000458129.08.2025 at 20:43synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000459125.08.2025 at 23:56synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000460124.08.2025 at 12:09synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000461126.08.2025 at 12:51synthetic/v1In orderqty
  • 3Material price differencematerial_price_varianceCausal+293,55 €
    Evidence (11 rows · Causal reference: 11)
    Causal referenceThe rows that produced the amount

    These rows produced the amount: every figure is computed from these rows.

    TableSourceRowVersionTime (UTC)MappingQualityField
    Material consumption material_consumptionerpMC-000451128.08.2025 at 23:46synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000452130.08.2025 at 09:42synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000453124.08.2025 at 07:26synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000454127.08.2025 at 06:31synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000455129.08.2025 at 14:05synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000456128.08.2025 at 21:22synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000457127.08.2025 at 13:57synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000458129.08.2025 at 20:43synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000459125.08.2025 at 23:56synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000460124.08.2025 at 12:09synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000461126.08.2025 at 12:51synthetic/v1In orderunitCost
  • 4Labour hours differencelabour_hours_varianceCausal−2 326,36 €
    Evidence (20 rows · Causal reference: 20)
    Causal referenceThe rows that produced the amount

    These rows produced the amount: every figure is computed from these rows.

    TableSourceRowVersionTime (UTC)MappingQualityField
    Time entry time_entrytimeclockTE-000808128.08.2025 at 03:44synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000809125.08.2025 at 13:39synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000810128.08.2025 at 22:12synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000811124.08.2025 at 07:07synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000812126.08.2025 at 11:53synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000813130.08.2025 at 07:32synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000814125.08.2025 at 23:21synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000815126.08.2025 at 20:29synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000816129.08.2025 at 09:24synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000817123.08.2025 at 23:33synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000818128.08.2025 at 03:57synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000819125.08.2025 at 06:18synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000820129.08.2025 at 22:00synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000821124.08.2025 at 02:02synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000822128.08.2025 at 22:20synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000823128.08.2025 at 08:27synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900088129.08.2025 at 00:37synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900089125.08.2025 at 20:32synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900090130.08.2025 at 13:55synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900091130.08.2025 at 07:19synthetic/v1In orderhours
  • 5Labour rate differencelabour_rate_varianceNo claim0,00 €

    No claim A zero line points at no source rows: it claims nothing, so no evidence is to be expected.

  • 6Subcontract differencesubcontract_varianceNo claim0,00 €

    No claim A zero line points at no source rows: it claims nothing, so no evidence is to be expected.

  • 7Rework differencerework_varianceNo claim0,00 €

    No claim A zero line points at no source rows: it claims nothing, so no evidence is to be expected.

  • 8Other variable cost differenceother_variable_varianceNo claim0,00 €

    No claim A zero line points at no source rows: it claims nothing, so no evidence is to be expected.

  • 9Unexplained differenceresidual_unexplainedNo claim0,00 €

    No claim A zero line points at no source rows: it claims nothing, so no evidence is to be expected.

Reconciliation0,00 €tolerance 141,88 €
  • ReconcilesJOB-0055 reconciles: the drivers account for the whole of the difference between the estimated and the actual margin (residual 0,00 €, tolerance 141,88 €)
The stored note

tolerance 14188 minor units; tasmaa: JOB-0055 reconciles: the drivers account for the whole of the difference between the estimated and the actual margin (residual 0,00 €, tolerance 141,88 €)

The bridge is computed from the stored snapshot. The next step is always the same: open the line's evidence and check the source rows.

Findings (1)Margin 6 326,78 € · 22,30 %

  • Medium mediumLabour hours overrunR22 326,36 €

    Quoted-scope labour on JOB-0055 exceeds the allowed factor: 2 326,36 € at the estimated rate.

    The job is in order · work centres CNC-1, CNC-2, WELD-1 · version job-margin-rules/2026-09-20.1 · computed 21.09.2026 at 14:48

    Evidence (20 rows · Causal reference: 20)
    Causal referenceThe rows that produced the amount

    These rows produced the amount: every figure is computed from these rows.

    TableSourceRowVersionTime (UTC)MappingQualityField
    Time entry time_entrytimeclockTE-000808128.08.2025 at 03:44synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000809125.08.2025 at 13:39synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000810128.08.2025 at 22:12synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000811124.08.2025 at 07:07synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000812126.08.2025 at 11:53synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000813130.08.2025 at 07:32synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000814125.08.2025 at 23:21synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000815126.08.2025 at 20:29synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000816129.08.2025 at 09:24synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000817123.08.2025 at 23:33synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000818128.08.2025 at 03:57synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000819125.08.2025 at 06:18synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000820129.08.2025 at 22:00synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000821124.08.2025 at 02:02synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000822128.08.2025 at 22:20synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000823128.08.2025 at 08:27synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900088129.08.2025 at 00:37synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900089125.08.2025 at 20:32synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900090130.08.2025 at 13:55synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900091130.08.2025 at 07:19synthetic/v1In orderhours