← Exception queue

JOB-0046Pohjola Metalli Oy

Customer CUS-006 · Completed · opened 11.07.2025 at 13:11 · completed 16.08.2025 at 13:11

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

2 230,95 €
11,70 %
In order

No blocking findings: the margin is reportable.

Quote basis and actual

ItemQuote basisActual
Revenue (allocated)19 689,00 €19 074,70 €
Material8 789,89 €8 241,91 €
Labour86,06 h × 52,09 €/h6 724,32 €
Subcontract1 877,52 €1 877,52 €
Other variable costs0,00 €0,00 €
Margin2 230,95 €

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 011a250408ca

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−614,30 €
    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-000281111.11.2025 at 17:52synthetic/v1In order
    Invoice line invoice_lineinvoicingIL-000282115.11.2025 at 02:57synthetic/v1In order
    Invoice line invoice_lineinvoicingIL-000283101.07.2026 at 04:50synthetic/v1In order
    Invoice line invoice_lineinvoicingIL-000284127.09.2025 at 10:37synthetic/v1In order
    Invoice line invoice_lineinvoicingIL-000285102.10.2025 at 08:12synthetic/v1In order
    Credit line credit_lineinvoicingCR-00031114.09.2025 at 10:36synthetic/v1In order
    Credit line credit_lineinvoicingCR-00032107.01.2026 at 15:27synthetic/v1In order
  • 2Material quantity differencematerial_quantity_varianceCausal+490,05 €
    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-000376112.08.2025 at 18:48synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000377115.08.2025 at 06:19synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000378109.08.2025 at 13:49synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000379103.08.2025 at 21:46synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000380116.07.2025 at 23:17synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000381106.08.2025 at 00:47synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000382123.07.2025 at 05:27synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000383115.07.2025 at 21:50synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000384120.07.2025 at 06:25synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000385102.08.2025 at 23:00synthetic/v1In orderqty
    Material consumption material_consumptionerpMC-000386115.08.2025 at 22:35synthetic/v1In orderqty
  • 3Material price differencematerial_price_varianceCausal+57,93 €
    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-000376112.08.2025 at 18:48synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000377115.08.2025 at 06:19synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000378109.08.2025 at 13:49synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000379103.08.2025 at 21:46synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000380116.07.2025 at 23:17synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000381106.08.2025 at 00:47synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000382123.07.2025 at 05:27synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000383115.07.2025 at 21:50synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000384120.07.2025 at 06:25synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000385102.08.2025 at 23:00synthetic/v1In orderunitCost
    Material consumption material_consumptionerpMC-000386115.08.2025 at 22:35synthetic/v1In orderunitCost
  • 4Labour hours differencelabour_hours_varianceCausal−2 241,43 €
    Evidence (19 rows · Causal reference: 19)
    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-000677117.07.2025 at 05:50synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000678115.08.2025 at 20:43synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000679111.08.2025 at 18:26synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000680128.07.2025 at 23:53synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000681121.07.2025 at 19:23synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000682106.08.2025 at 22:01synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000683102.08.2025 at 22:34synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000684109.08.2025 at 15:50synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000685111.07.2025 at 23:08synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000686106.08.2025 at 22:49synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000687131.07.2025 at 10:16synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000688102.08.2025 at 07:12synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000689114.07.2025 at 04:29synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000690121.07.2025 at 16:41synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900061131.07.2025 at 12:34synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900062123.07.2025 at 22:12synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900063120.07.2025 at 20:12synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900064104.08.2025 at 07:10synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900065115.08.2025 at 13:23synthetic/v1In orderhours
  • 5Labour rate differencelabour_rate_varianceCausal−0,02 €
    Evidence (19 rows · Causal reference: 19)
    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-000677117.07.2025 at 05:50synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000678115.08.2025 at 20:43synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000679111.08.2025 at 18:26synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000680128.07.2025 at 23:53synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000681121.07.2025 at 19:23synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000682106.08.2025 at 22:01synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000683102.08.2025 at 22:34synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000684109.08.2025 at 15:50synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000685111.07.2025 at 23:08synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000686106.08.2025 at 22:49synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000687131.07.2025 at 10:16synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000688102.08.2025 at 07:12synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000689114.07.2025 at 04:29synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-000690121.07.2025 at 16:41synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-900061131.07.2025 at 12:34synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-900062123.07.2025 at 22:12synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-900063120.07.2025 at 20:12synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-900064104.08.2025 at 07:10synthetic/v1In orderrate
    Time entry time_entrytimeclockTE-900065115.08.2025 at 13:23synthetic/v1In orderrate
  • 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 95,37 €
  • ReconcilesJOB-0046 reconciles: the drivers account for the whole of the difference between the estimated and the actual margin (residual 0,00 €, tolerance 95,37 €)
The stored note

tolerance 9537 minor units; tasmaa: JOB-0046 reconciles: the drivers account for the whole of the difference between the estimated and the actual margin (residual 0,00 €, tolerance 95,37 €)

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 2 230,95 € · 11,70 %

  • Medium mediumLabour hours overrunR22 241,43 €

    Quoted-scope labour on JOB-0046 exceeds the allowed factor: 2 241,43 € 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 (19 rows · Causal reference: 19)
    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-000677117.07.2025 at 05:50synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000678115.08.2025 at 20:43synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000679111.08.2025 at 18:26synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000680128.07.2025 at 23:53synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000681121.07.2025 at 19:23synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000682106.08.2025 at 22:01synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000683102.08.2025 at 22:34synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000684109.08.2025 at 15:50synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000685111.07.2025 at 23:08synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000686106.08.2025 at 22:49synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000687131.07.2025 at 10:16synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000688102.08.2025 at 07:12synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000689114.07.2025 at 04:29synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-000690121.07.2025 at 16:41synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900061131.07.2025 at 12:34synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900062123.07.2025 at 22:12synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900063120.07.2025 at 20:12synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900064104.08.2025 at 07:10synthetic/v1In orderhours
    Time entry time_entrytimeclockTE-900065115.08.2025 at 13:23synthetic/v1In orderhours