Advanced Manufacturing Planning
Technical reference for Cetec ERP’s advanced manufacturing planning feature. This guide explains what the feature does, how the planning engine behaves, how to configure it, and how planners should work with unreleased workorders generated by the system.Overview
What This Feature Is
Cetec ERP runs a nightly planning routine that generates and reshapes manufacturing supply across multi-level BOMs.
This is used in environments where planning cannot be maintained manually due to product complexity, shared components, and long lead times.
The system creates, schedules, and adjusts unreleased, unfirm internal build workorders based on demand, inventory, lead times, and planning rules. Released or schedule-locked workorders are not modified.
This process is a regenerative, time-phased MRP run that produces planned workorders while enforcing a firm fence.
Note: This feature must be enabled before use.
What This Feature Does
Each nightly run will:
- Create, increase, decrease, move, or cancel unreleased workorders
- Maintain projected available balance (PAB) at or above reorder point (ROP)
- Consolidate workorders within the order-period window (POQ)
- Propagate demand and supply changes through all BOM levels
- Generate a full demand schedule down to raw materials for purchasing visibility
All planning actions apply only to workorders in Primary Staging, which is the unfirm, unreleased planning state.
What This Feature Does Not Do
The nightly planning routine does not:
- Modify released workorders
- Modify schedule-locked workorders
- Create purchase orders directly
The engine generates planned manufacturing supply and purchasing demand signals. Purchasing personnel still review and execute purchasing actions separately.
Planning Engine Logic
Candidate Selection
The nightly routine begins by building a candidate list of parts and locations to process.
The candidate list is built from:
- unreleased top-level workorders,
- BOM components tied to those workorders,
- active forecasts and their associated BOM demand.
This defines the scope of the planning run.
Time-Phased Netting
For each part and location, the system evaluates supply and demand over time using the part waterfall, which is the time-phased supply and demand grid.
The system initializes Projected Available Balance (PAB), then evaluates each date bucket by:
- subtracting gross demand,
- evaluating demand within the order-period window,
- adjusting required receipt dates using safety time,
- reviewing existing planned workorders already in Primary Staging.
The objective is to keep projected supply aligned to demand while maintaining PAB at or above ROP.
Workorder Decisions
At each step, the system determines whether to:
- cancel workorders if supply exceeds need,
- increase or decrease quantities to meet demand and ROP,
- move workorders to align with required timing,
- create new workorders when shortages exist.
Workorders are sized according to lot sizing rules including EOQ, MOQ, and standard pack multiples.
The planning target is not simply zero balance. The system is trying to maintain PAB greater than or equal to ROP.
Scheduling Logic
Required completion dates are adjusted earlier using safety time.
Work start dates are back-scheduled using lead time.
If BOM work-start timing further refines production timing, that logic can also influence scheduling.
This means workorders are not simply placed on the first demand date. They are positioned according to required receipt date, time buffer, and manufacturing lead time.
Multi-Level BOM Propagation
When a parent workorder is created, changed, or deleted, the system identifies dependent BOM components, recalculates their demand, and re-queues them for planning.
This process repeats until the BOM stabilizes.
That recursive behavior is what allows the engine to keep shared components and subassemblies aligned across multiple products and changing parent demand.
Consolidation
Unreleased workorders for the same part may be consolidated if they fall within the defined order-period window and meet the relevant planning conditions.
This is used to reduce excessive small workorders and smooth near-term planning activity.
Daily Operation
How Planners Use the Output
The system continuously produces a set of planned, unreleased workorders.
Planners review those workorders and decide which ones to release into production. Once released, those workorders are no longer modified by the nightly planning process.
Typical process:
- The nightly run generates planned workorders.
- Planners review quantities and timing.
- Workorders are selectively released.
- Released workorders remain fixed.
- Remaining unreleased workorders are recalculated in the next run.
Release Control and Firm Fence
Planned workorders are created in Primary Staging, which is the unreleased planning state.
Operations controls execution by releasing selected workorders to production. Released or schedule-locked workorders are not modified by the nightly routine.
This creates the firm fence between planned supply and committed production.
Setup and Planning Controls
Order statuses and Planning State
Define one Primary Staging status for unreleased workorders in the OrdelineStatus data maintenance table.
Primary Staging is the planning state the engine is allowed to create and adjust. Released and firm statuses must remain separate from Primary Staging.
If a workorder is released or schedule_locked is set, the planning routine must not alter it.
Inventory Planning Fields
The inventory planning fields are configured per location in inventory data.
Required and relevant fields include:
- rop for reorder point,
- leadtime for manufacturing lead time,
- eoq for fixed lot size,
- purchase_moq for minimum quantity,
- purchase_stdpack for lot multiples.
These values shape how much supply is created and when it is scheduled.
Part Planning Fields
Relevant planning fields on the part record include:
- order_period_days for the POQ window,
- safety_time_days for safety lead time,
- default_suborder = 2 for phantom assembly behavior.
These values determine consolidation behavior, time buffer behavior, and whether certain subassemblies should explode upward instead of generating discrete workorders.
System Configuration
Nightly Advanced Manufacturing Planning must be enabled before use.
System setup includes:
- enabling the feature flag or config (Cetec-only config, contact sales or support),
- scheduling the nightly job that runs Brain::BuildToWaterfall->run,
- configuring intercompany customer and vendor,
- ensuring the service user has permissions to create and update internal workorders and BOM worksheets.
Functional Constraints
Planning Constraints
Only BOM parts are planned as internal builds.
If parts are created as BOMs with zero components, they may still generate workorders unless that behavior is explicitly disabled.
The planning target is PAB greater than or equal to ROP, not simply zero inventory balance.
The nightly routine does not generate purchase orders directly. It generates the manufacturing and purchasing demand picture that downstream users act on.
Data Integrity Requirements
Why Data Quality Matters
This feature amplifies data issues.
Large volumes of planned workorders can be generated quickly. Errors in data will propagate across BOM levels, dates, quantities, and locations.
If the underlying data is wrong, the planning output will also be wrong, and cleanup can become substantial. We strongly recommend booking consulting time with Cetec ERP to mitigate these risks.
High-Risk Data Areas
The highest-risk data areas include:
- BOM structure, revisions, and phantom settings,
- inventory records and location alignment,
- planning parameters such as ROP, lot sizing, and lead time,
- demand inputs such as forecasts and sales orders,
- order status configuration,
- labor routing and timing.
Common Failure Patterns
Common failure patterns include:
- excessive or insufficient planned workorders,
- incorrect component demand propagation,
- unrealistic production timing,
- duplicate or ghost demand,
- planned workorders created for purchased items,
- released work being touched because statuses or locks were set incorrectly.
Troubleshooting
Too Many Workorders
If the system is generating too many workorders:
- check ROP values,
- review EOQ, MOQ, and standard pack settings,
- review order period settings,
- validate BOM quantities and structure.
Incorrect Dates
If scheduled dates look incorrect:
- verify lead time values,
- check safety time settings,
- confirm demand dates and forecast dates are correct.
Workorders Not Adjusting
If workorders are not being adjusted:
- confirm they are still in Primary Staging,
- check whether schedule_locked is set,
- verify they have not already been released to production,
- confirm planning status configuration is correct.
Unexpected Demand or Spikes
If demand appears inflated or inconsistent:
- review forecasts and sales orders,
- check for duplicate or test data,
- validate date handling and timing issues,
- confirm demand is not being counted from more than one source unexpectedly.
Best Practices
Recommended Practices
Recommended practices include:
- start with a limited dataset before full rollout,
- validate BOMs and planning parameters before enabling,
- use order_period_days to reduce planning instability,
- apply safety_time_days based on actual supply variability,
- release workorders intentionally rather than too early,
- keep unreleased work flexible until it is ready to be committed.