Work Centers for CAPA
A Work Center is the physical place (or logical grouping) where work happens — a press line, a folder station, a cutting bench. ianaiERP's original Work Center already powered routings and work orders. The EMS + CAPA suite extends it with the parameters needed to compute realistic capacity, model planned and unplanned downtime, and decide which work centers belong in the nightly capacity snapshot.
This page covers the new CAPA-specific fields added to Work Centers. For the original Work Center fields (name, cost rates, location, line items, calendars), see the advanced Work Center docs.
Where it lives
- List + create:
/workcenter - Edit: click any row to open the drawer.
- Permission: needs
support_readto view andsupport_writeto edit (same as the original Work Center page).
The CAPA fields
When you open the Work Center form (+ New Work Center), you'll see a Capacity Parameters section. These five fields are the inputs the nightly CAPA cron uses to project utilization, ETAs, and overload.
Machine Speed (machine_speed_per_hour)
The work center's nameplate throughput per hour, in the WC's natural production unit (sheets/hr, kg/hr, units/hr — your call). Used as a sanity check against routing operations and as a fallback when a routing operation doesn't define a runtime_per_unit.
- Leave blank if the WC's output varies wildly by product (rare).
- Use the nameplate — efficiency is modeled separately via OEE.
Rated Hours / Day (rated_hours_per_day)
The number of hours per day this WC is physically able to run, independent of staffing. A 24-hour press has 24. A bench used during one shift has 8. Combined with Shift Pattern below to compute calendar minutes.
Shift Pattern (shift_pattern)
A canonical operating cadence:
| Value | Means | Effective hours/day |
|---|---|---|
1-SHIFT-5D | 1 shift, 5 days/week | 8 |
1-SHIFT-7D | 1 shift, 7 days/week | 8 |
2-SHIFT-5D | 2 shifts, 5 days/week | 16 |
2-SHIFT-7D | 2 shifts, 7 days/week | 16 |
3-SHIFT-5D | 3 shifts, 5 days/week | 24 |
3-SHIFT-7D | 3 shifts, 7 days/week (continuous) | 24 |
The picker shows a warning if your Rated Hours / Day significantly exceeds the shift pattern's expected hours — it's not blocking (you may have overtime or unusual cadences), but it flags likely data-entry mistakes.
OEE Target (oee_target_percent)
Your planning OEE factor — the percentage of calendar time you realistically expect to convert into output, after losses for changeovers, micro-stops, quality, and minor breakdowns. This is not measured OEE — v1 doesn't compute that. It's the planning factor the capacity calculation multiplies against.
- Typical range: 60–85 for manual operations, 85–95 for automated equipment.
- Use 100 only if you genuinely have no historical losses (rare; the calc will be optimistic).
Availability (availability_percent)
Expected availability after planned downtime (maintenance windows, scheduled outages). Multiplied against calendar minutes before OEE.
- Typical: 90–95.
- This is conceptually different from OEE (which captures all losses); set it conservatively for WCs with frequent PM windows.
Default Setup (default_setup_minutes)
Default changeover used by the capacity calc when a routing operation doesn't specify its own setup time. Also used as a changeover penalty when the calc switches from one item to another in the same WC.
Critical for CAPA dashboard (critical_for_capa)
Toggle that decides whether this WC is included in:
- The nightly CapaSnapshot cron (every 24 hours at 02:00).
- The 5-minute rollup that recomputes the WC's
current_runtime_statusfrom its child assets. - The Equipment Hub's CAPA-related KPIs (
Utilization,OEE,WCs at Risk).
A WC with critical_for_capa = false still appears in the Capacity Planner (you can recompute it on demand), but it doesn't drive automatic alerts or dashboard KPIs.
Read-only computed fields
These show on the form once the WC has data:
| Field | Source |
|---|---|
| Runtime Status | Worst-status rollup of the WC's critical child assets (5-min cron). Shows RUNNING / SETUP / IDLE / DOWN / MAINTENANCE / READY. |
| Current Utilization % | Latest current_utilization_pct from the most recent CapaSnapshot. |
How CAPA uses these fields
calendar_min = ratedHoursPerDay × daysInPeriod × 60 (capped by shift_pattern)
calendar_min × (availability_percent / 100) → available_minutes
available_minutes − planned_PM_overlap_minutes → still available
available_minutes × (oee_target_percent / 100) → effective_minutes
sum(routing_ops × runtime_per_unit × qty + setup) → demand_minutes
demand_minutes / effective_minutes × 100 → utilization_pct
demand_minutes − effective_minutes (if > 0) → overload_minutes
Risk level is bucketed:
NONEif util < 85LOWif util 85–99MEDIUMif util 100–119HIGHif util ≥ 120
See Capacity Planner → How utilization is computed for the full algorithm including material-bottleneck adjustments.
Setup recipe (typical paper-packaging plant)
| WC | Speed | Rated hrs | Shift | OEE | Avail | Setup | Critical |
|---|---|---|---|---|---|---|---|
| Press Line A (Heidelberg) | 1200 sheets/hr | 24 | 3-SHIFT-7D | 85% | 95% | 30 min | ✅ |
| Folder Station 1 | 800 pcs/hr | 16 | 2-SHIFT-5D | 80% | 92% | 15 min | ✅ |
| Cutting Bench | 400 pcs/hr | 8 | 1-SHIFT-5D | 75% | 90% | 10 min | ❌ |
The Press Line A is the bottleneck — high speed, continuous operation, conservative-but-realistic OEE, critical-for-CAPA flagged. The bench is non-critical because it doesn't gate production.
Assigning assets to a Work Center
A Work Center is a logical grouping; its Assets are the physical machines that live inside it. From the Asset form, set work_center to the parent WC. The WC's status board on the Equipment Hub then shows all linked assets together. See Asset Management → Link to a Work Center.
Troubleshooting
| Symptom | Likely cause |
|---|---|
| WC doesn't show on Capacity Planner | Listed but past the 200-row limit — search by name to filter. Or you have capa_read missing. |
| WC utilization is always 0% | No open RoutingOperation rows route to this WC. |
| Utilization spikes after a small WC change | If you lowered availability_percent or oee_target_percent, the same demand now consumes a larger share of effective minutes. Recompute to refresh the snapshot. |
| Status chip shows blank | No assets are linked to this WC. Set work_center on at least one asset, mark it critical_asset, then wait for the 5-minute rollup. |
| "Rated hours significantly exceeds shift pattern" warning | Either your shift pattern is wrong, or you have overtime baked in. Adjust one or the other. The warning is non-blocking. |
Related
- Asset Management — link assets to work centers
- Capacity Planner — view computed snapshots
- Runtime Status — how the WC's
current_runtime_statusrolls up from assets - Original Work Center reference: Work Centers (advanced features)