This document explains how the planning and scheduling system manages your manufacturing jobs, routes tasks, calculates dates, and helps you keep the factory floor running efficiently.
The scheduling engine is designed to handle different types of manufacturing environments. Depending on your system configuration, jobs will behave according to one of three models:
How it works: The system ignores individual small tasks and focuses on overarching Groups (e.g. Preparation > Assembly > Finishing). Progression is strictly linear.
Scheduling Level: You can actively plan and schedule on the Group level. A group of work must be completed before the next group is unlocked and marked as ready.
How it works: This option is for single-level service routing. Work flows linearly through the predefined stages of production.
Scheduling Level: You can actively plan and schedule on the Task level. Because the process is linear, tasks must strictly follow the sequential setup of the defined manufacturing stages. The system validates the sequences to ensure they remain intact.
How it works: This option handles deep, nested sub-assemblies (e.g. building Part A and Part B at the same time, then combining them into Part C). It traverses the exact parent-child hierarchy of your estimate and allows parallel branches of work to happen simultaneously.
Scheduling Level: No manual group-level or task-level planning is permitted on the board. The engine strictly drives this model from the Header Date Level (i.e. Job Due Date, Required Date, Date Start). You manage the overarching job timeline, and the engine automatically orchestrates the individual tasks below it to ensure parent assemblies only unlock when all child components are finished.
To get the most out of the engine, it is highly recommended to adopt a structured, proactive planning cycle. Rather than micro-managing every single task as it arrives, establish baseline periods and manage by exception.
When a job is quoted and accepted, baseline dates should be automatically targeted based on known factory lead times. For example:
Sales Goal (Required Date): Set to 28 days from order creation.
Production Goal (Due Date): Set to 3 days before the Sales Goal, giving you a buffer for delivery or quality checks.
Job Start Date: If you know a standard job spends 14 days in the factory, the engine will automatically set the Start Date to 14 days before the Production Goal.
Procurement Date: Calculated backwards from the Job Start Date based on supplier lead times, ensuring materials arrive right when the job needs to begin.
With your baseline periods set, the Production Manager can efficiently run the board using this recurring workflow:
Select Jobs: Look ahead at the production pipeline. Filter the system to show jobs due to start within a specific horizon—for example, the next 14 days.
Release to Production: Select these imminent jobs and release them. This action "Initiates Routing"—it generates the necessary physical tasks, sets their statuses to Planned and Ready, and slots them safely at the bottom of the active planning board queue.
Schedule on the Board: Navigate to the planning board view and run the scheduling routine. This locks in the stage dependencies, calculates exact forward dates, and reserves machine capacity.
Look Further Ahead: If the dashboard indicates your factory still has capacity after scheduling the next 14 days, expand your horizon to 30 days and repeat the process to pull more work forward.
As tasks move through the engine, they are assigned different statuses:
1 - Pending: The task has been created but hasn't been placed in the active queue yet.
2 - Planned: The task is in the queue but it is currently blocked because previous steps are not yet finished.
3 - Ready: The task is completely unblocked. All previous dependencies (or sub-assemblies) are done, and the shop floor can begin working on it immediately.
4 - Busy: Work has started on this task.
5 - Part-Complete: The task is partially done. Depending on your specific stage rules, this might allow the next task in the chain to begin.
6 - Complete: The task is 100% finished.
This is what the engine does when you interact with jobs:
When you perform the "Release to Production" step, the engine gathers all new Pending tasks and moves them to Planned. It appends them to the queue and automatically upgrades the very first unblocked step(s) to Ready.
When a worker logs time and marks a task as Complete (or Part-Complete), the Progression Engine instantly wakes up:
It checks if the completed task met the rules to allow the job to move forward.
If it is a linear job (Grouped or Flat BOM), it unlocks the next stage.
If it is a complex BOM, it checks if there are any other parallel tasks blocking the way before unlocking the next parent assembly.
When you run the schedule on the board:
Forward Scheduling: It finds when a workstation is available, applies the estimated hours for the task, and calculates the exact End Date.
Task Rippling: If a task takes longer than expected and finishes late, the engine "ripples" the delay forward, adjusting the start dates of all subsequent tasks so your schedule remains realistic.
Locked Tasks: If you manually lock a task to a specific date (e.g., a customer requires a specific delivery window), the engine respects that lock and schedules everything else around it.
Grouped / Flat BOM: The previous stage has not yet been fully completed. Check the stage immediately prior to it.
Complex BOM: There is likely a dependent sub-assembly or a prior chronological task that is still incomplete. The engine acts as a strict traffic cop—it will not unlock a parent assembly until every single child component underneath it is 100% finished.
Machine Availability: The workstation assigned to that stage might be fully booked with other jobs. The engine will not double-book; it waits for the machine to free up.
Locked Tasks: There may be a manually "Locked" task on the board taking up that time slot.
Upstream Delays: A task earlier in the job's routing may have had its dates pushed out, causing a "ripple" effect that delayed this task.
If you manually change a task back from Complete to Planned or Busy, the automated progression engine will not automatically reverse the downstream tasks. You may need to manually adjust the statuses of the tasks that were incorrectly unlocked to keep the board accurate.
In the Complex BOM model, the engine has a smart "Ghost Assembly Protection" feature. If an assembly item only contains raw materials and has no actual labour/service tasks underneath it, the engine considers it a "ghost" and safely bypasses it to keep your schedule uncluttered.
Understanding Production Planning (this page)