Blog
Insights on production scheduling, lean manufacturing, and manufacturing software from 35+ years of industry experience.
Everything we have published.
Actual Hours Appear With No Planned Hours: Causes and Fixes
A day showing logged actual hours with zero planned hours is usually an orphaned breakdown row from a step that was completed then dropped from the forward plan. How a clean run reconciles it.
I Set Two Lot-Streaming Methods on One Step: Which Wins?
When a step has both a transfer batch and a flow-step lag set, the overlap uses the piece-count batch and the flow step is ignored. Why the engine picks one and how to make intent clear.
My Manual Alternates Disappeared After Binding a Group
When a step's manual alternate work centers vanish after you bind a work center group, that is by design: the group is the alternate list. How the two relate and how to restore them.
My Transfer Batch Is Larger Than the Order Quantity
When a transfer batch bigger than the order quantity produces no operation overlap, the engine capped it to the whole order, so there is no partial batch to hand off early. How to size it right.
The CP-SAT Optimizer Fell Back to Multi-Run: Causes and Fixes
When you select the solver-based optimizer but the run behaves like multi-run, the CP-SAT engine was unavailable in that host and the plan fell back safely. How to confirm and fix it.
The Optimizer Refused My Proposal as Stale: Causes and Fixes
When Accept on an optimizer proposal is refused as stale, the schedule changed under the proposal. Why the guard exists and how to get a fresh, acceptable plan.
A Continuous-Process Work Center Is Scheduling in Batches
When a reactor, oven, or line that should flow continuously is instead scheduling as discrete piece batches, the cause is almost always one flag or one field. Here is how to find and fix it.
A Job Was Booked on a Holiday or Downtime Day
When a schedule shows work on a plant holiday, a machine holiday, or a downtime window, the calendar was almost always changed after scheduling ran. Here is how to find which one and clear it.
A Job Was Scheduled Far in the Future
When the engine places a job weeks or months out with no obvious reason, the cause is one of five things: a booked machine, a low utilization cap on the order, no valid shifts, blocked calendar days, or a misentered start date.
A Material Step Is Showing Labor Hours
A material-only routing step is meant to be instant, with no machine and no hours. When one shows labor hours or tracked time, here is why it happens and how to clear it.
I Set Move Hours or Teardown Hours and Nothing Changed
Move hours and teardown hours are fields the scheduler does not read, so setting them has no effect on the plan. Here is which field to use instead for buffer time or overlap.
A Deleted Machine Instance Left a Schedule Broken
When a schedule row points at a machine instance that no longer exists, the Gantt and capacity reports cannot resolve it. Here is why it happens and the two ways to clear it.
