Thirty per cent of the orders planned in a typical week are not completed that week. This is not a consultancy estimate — it is the pattern that recurs in Portuguese factories with an ERP implemented more than three years ago, whenever someone bothers to calculate the plan's execution rate. Nobody calculates it, because the ERP records the deviation order by order and nobody aggregates the pattern. The result is a planner who learns to distrust the system and opens Excel to apply a manual buffer of 30%. That buffer hides the real inefficiency. Management cannot see where the problem lies. The cycle perpetuates itself.
This article does not explain how to implement an ERP. It explains what the capacity planning module calculates, where the model breaks for specific and avoidable reasons, and how to calibrate the system so that the plan that comes out of the screen is the plan the factory executes — with no external arbiter in .xlsx format.
In 2025, only 53.7% of Portuguese companies with ten or more people were using business management software — INE, 2025. For those who have already implemented the ERP, the problem is not having the system. It is making the planning module produce a plan that the factory executes.
What the ERP calculates — and what it assumes without asking
Infinite capacity: a design choice, not an error
Most production planning modules start by calculating infinite capacity: they distribute orders across work centres without checking whether real available time exists. It is a deliberate choice — it simplifies the MRP engine and speeds up the calculation. The problem arises when the planner prints the plan and discovers that the sewing line in Famalicão has 140 hours scheduled for a working week of 40 hours.
Finite capacity calculation exists in the more verticalised ERPs, but it requires rigorous parametrisation: shift calendars per work centre, historical efficiencies per operation, setup times between references, scrap coefficients per machine. Without this data fed with discipline, the finite capacity engine produces a plan as unrealistic as the infinite capacity one — only with more apparent confidence. It is the technical version of the problem: the system does not lie, it returns exactly what it was given.
What goes into the standard calculation
A production capacity planning module in an industrial ERP processes open and firm production orders with committed delivery dates; manufacturing routings with operation sequences, work centres and unit setup and run times; availability calendars with working days, shifts, public holidays and planned stoppages; component and raw material stock available or on order; and minimum and maximum batch rules per work centre.
What the ERP does not include by default — and what determines whether the plan is executable — is a shorter but costlier list: real absenteeism (requires integration with the HR module or with the pplPortal); operational efficiency per shift (requires real-time capture, not manual recording at the end of the day); quality variability, that is, rework and scrap that consume unplanned capacity; internal transport times between sections; and tool or mould restrictions shared between competing orders.
The takt time the ERP does not calculate
The takt time — the production rhythm dictated by customer demand — is the denominator the ERP rarely calculates automatically. The system knows how many units are on the order book. It knows how many working hours are available. But it does not alert when the implicit takt time requires a cadence the line has never historically achieved. That alert must be built via a business rule or via a Business Intelligence dashboard — it does not come out of the box in the standard module.
Where the model breaks: six failure points with an identifiable cause
Operation times nobody has updated since implementation
In clothing factories in the North of the country, it is common to find manufacturing routings with unit times defined at the time of the ERP implementation — seven or eight years ago. Meanwhile, the line has changed product, the workforce has aged, and the real sewing speed has dropped. The ERP continues to plan with the old times. The result is orders "completed" in the system three days before they are physically ready — and a production manager who stopped trusting the system five years ago.
The standard error here is not technical: it is a governance error. No implementation contract includes periodic review of operation times. That responsibility falls into the void between the software vendor and the production director, and remains unfilled indefinitely.
Annual calendars in a factory with shift seasonality
A footwear factory in Felgueiras with three shifts in high season and one shift in low season needs dynamic calendars. With a single annual calendar, the ERP plans three-shift capacity in February — when the line is on one shift — and underestimates the load in August, when international buyers have already confirmed the orders for the winter collection. The planner discovers the problem when the deadlines are already committed.
Absenteeism that lives on a separate sheet
Without integration between the HR module (or the pplPortal) and the production module, the ERP plans with 100% of staff available every day. The planner knows that is not the case — knows that on Mondays there are more absences, that in July the line loses 15% of capacity due to staggered holidays, that a certain section has chronic absenteeism. So the planner opens Excel and applies a manual correction factor. That factor does not enter the ERP. The cycle perpetuates itself.
OEE captured eight hours after it happens
If production capture is manual — the operator records at the terminal at the end of the shift — the data arrives with an eight-hour delay and with rounding bias. KORA Productivity captures production in real time, calculates OEE per line and feeds the ERP with data the planning engine can use to adjust available capacity. Without this link, the ERP plans with theoretical capacity; the shop floor executes with real capacity. The difference accumulates shift by shift.
An OEE of 58% on a knitting line means that 42% of the installed capacity is being consumed by stoppages, rejections and reduced speed — and the ERP is planning as if that capacity existed in full.
Shared resources the system does not know are exclusive
In plastic injection factories in the Aveiro–Marinha Grande corridor, a mould may serve three different references. The ERP knows the mould exists as a resource. But if the planning module does not model the mould's exclusivity — it can only be on one machine at a time — it generates parallel orders that physically cannot coexist. The planner discovers the conflict at the Monday morning production meeting, when there are already two operators standing idle waiting.
Confirmed B2B orders with no capacity check
When a customer confirms an order via KORA B2B, that order should automatically trigger a capacity check in the ERP. If the integration does not exist — or exists with a 24-hour latency — the sales rep confirms deadlines that production cannot meet. In sectors with demanding international buyers, such as footwear, this mismatch has a direct cost in contractual penalties and in reputation with brands that visit the factories twice a year.
Technical comparison: capacity planning approaches
| Approach | What it calculates | Prerequisites | Main limitation | Typical suitability |
|---|---|---|---|---|
| MRP with infinite capacity | Material requirement dates and production orders with no load restriction | Updated routings and BOM | Ignores work centre overload | SMEs with simple make-to-order production |
| CRP (Capacity Requirements Planning) | Load per work centre vs. available capacity | Shift calendars, reliable operation times | Does not replan automatically — only alerts | Industry with stable routings |
| RCCP (Rough-Cut Capacity Planning) | Aggregated capacity per product family and critical resource | Capacity profiles per family | Low resolution — does not go down to the unit operation | Medium-term S&OP (4–12 weeks) |
| APS (Advanced Planning & Scheduling) | Optimised sequencing with finite capacity and multiple constraints | High-quality data; real-time OEE integration | High implementation cost and complexity | Factories with three or more lines and high reference mix |
| Vertical ERP with advanced production module | CRP + overload alerts + integration with purchasing and sales | Vertical parametrisation (e.g. colour-size-last axes in footwear) | Depends on the quality of the master data | Textile, footwear, metal/plastic industry in Portugal |
Decision matrix: what to implement first
| Company situation | Priority 1 | Priority 2 | Avoid for now |
|---|---|---|---|
| ERP with no active production module | Activate routings and BOM; audit operation times | Shift calendars per work centre | APS — without master data, it is expensive noise |
| ERP with active MRP but planner uses Excel | Identify why: wrong data or missing functionality? | Correct operation times and calendars | New system — the problem is data, not software |
| ERP with CRP but no real-time capture | Implement production capture (real OEE) | Integrate HR absenteeism with available capacity | RCCP without formalised S&OP data |
| Multiple factories or extensive subcontracting | Consolidated capacity visibility (see multi-company ERP in Portugal) | Integration with subcontractor portal | Centralised planning without defined local autonomy |
| High product mix (footwear, clothing) | Model variant axes in the ERP (colour, size, last) | Sequencing by family to reduce setups | Generic CRP without verticalisation — does not model the complexity |
What works in practice
Audit master data before any module upgrade
In a textile factory in the Vale do Ave with around 90 employees producing knitwear for European brands, activating the CRP module revealed that 40% of the work centres had operation times more than five years old. The production team spent six weeks timing real operations, line by line, reference by reference, before trusting any output from the system. Only then did the CRP begin to produce plans the production manager accepted without opening Excel. The investment in master data returns faster than any new functionality — and it is the only investment no software vendor includes in the scope of the project.
Real OEE feeding future planning
In a metal components factory in the Aveiro corridor, the integration between shop floor terminals and the ERP allows the planning engine to adjust available capacity based on the real OEE of the previous week. When a line records an OEE below 65%, the system automatically reduces the planned capacity for that line in the following week and alerts the planner. This pattern — real capture feeding future planning — is what distinguishes an ERP that plans from an ERP that records. KORA Productivity is the link that makes this cycle possible without custom development.
Formal S&OP as governance of the plan
The ERP produces numbers. Management decides. Factories that implement a weekly S&OP meeting — with sales, planning and production present — use the ERP as a shared data source, not as an arbiter. The ERP plan is the starting point; the meeting is where the unmodelled constraints enter the process: a priority customer, an unforeseen maintenance stoppage, a batch of raw material held in quality control. Without this governance, the ERP is consulted by each department independently — and each draws different conclusions from the same system.
The ERP does not replace the S&OP meeting. It makes it shorter and less political — because the data is the same for everyone in the room.
Five steps to calibrate the capacity module
- Audit the existing manufacturing routings: compare recorded operation times with real timings by sampling — a minimum of ten orders per work centre, in different weeks.
- Correct the shift calendars: include regional public holidays (the Northern calendar differs from Lisbon on days such as São João), planned maintenance stoppages and seasonal shift variations.
- Integrate the HR module with the production module: expected absenteeism should reduce the available capacity calculated by the ERP, not live on a separate sheet held by the planner.
- Activate overload alerts: the system should notify the planner when a work centre exceeds a defined load threshold — do not leave this check to be discovered manually at the Monday meeting.
- Implement real-time OEE capture and define a formal master data review cycle: a quarterly review of operation times per line is the reasonable minimum for factories with a variable mix.
Variant complexity: the footwear case the manuals ignore
In Felgueiras, a men's footwear collection may have 800 to 1,200 active SKUs, with three variant axes: colour, size and last. A general-purpose ERP models the product as a single reference with attributes. A vertical ERP for footwear models the variant axes as independent dimensions of the routing — because the sewing operation time of a size 46 leather shoe is different from the same model in size 38 in nubuck. This difference is not cosmetic: it determines whether the capacity plan is executable or merely decorative.
The detail the implementation manuals do not mention: when a general-purpose ERP is forced to model this complexity via customisation, the customisation rarely survives the next version upgrade. Two years after implementation, the company is choosing between keeping the old version of the ERP or losing the variant parametrisation. The MULTI ERP and QAD Adaptive ERP support this verticalisation natively — which means the version upgrade does not destroy the data model.
Regulation and traceability: what planning must guarantee
In sectors with traceability requirements — textiles under pressure from the EU Strategy for Sustainable and Circular Textiles, footwear with buyers who demand supply chain compliance — the production plan must be traceable batch by batch. The ERP must record not only what was planned, but what was actually produced, at which work centre, with which batch of raw material, on which shift. When a batch of raw material is held in quality control, the ERP must automatically recalculate the available capacity for the orders that depend on that batch. Without this integration, the plan remains "green" in the system while the factory stands idle waiting for material.
Portaria 195/2020 and the monthly SAF-T reporting regime require stock and production movements to be recorded with accuracy and timeliness. A production plan that does not reflect what actually happened in the factory generates inconsistencies in the SAF-T — and inconsistencies in the SAF-T generate notifications from the Tax Authority that no CFO wants to receive. To explore this topic further, see batch-to-batch traceability in Portuguese industry.
The hidden cost of the unexecuted plan
Back to the initial pattern: more than 30% of the orders planned for a week are not completed that week. The planner learns to distrust the ERP and starts planning with artificial buffers — "if the system says the line has capacity for 500 pairs, I plan 350". That artificial buffer hides the real inefficiency and prevents management from seeing where the true problem lies. The article on operational turnaround: when the ERP reveals what management could not see explores exactly this phenomenon.
The solution is not a better ERP. It is calculating the plan's execution rate weekly, identifying the work centres with the greatest systematic deviation, and treating the cause — whether wrong master data, unintegrated absenteeism, or an unmodelled shared resource. Business Intelligence via Qlik Sense makes it possible to build this dashboard, cross-referencing planned orders with completed orders per work centre and per week. Without this indicator, capacity planning is a ceremony — not a management tool.
For those who want to explore the link between capacity planning and real costing per reference — because an unexecuted plan has a direct cost on the margin — the article on industrial costing in the ERP: from the cost centre to the real margin per reference is the natural next read.
Productivity per hour worked in Portugal corresponded to around 67% of the EU average in 2022 (Eurostat, 2022). Part of that deficit is structural. Another part is a production plan the factory does not execute — and that nobody measures.
Sources
- INE — Survey on the Use of Information and Communication Technologies in Enterprises, 2025. Available at: www.ine.pt
- Eurostat — Labour Productivity per Hour Worked, Portugal vs. EU average, 2022. Available at: ec.europa.eu/eurostat
- Portaria no. 195/2020, of 13 August — Monthly reporting of the SAF-T(PT) file to the Tax and Customs Authority. Diário da República, 1st series, no. 157.
- Decreto-Lei no. 28/2019, of 15 February — Regime for the processing and archiving of invoices and other fiscally relevant documents. Diário da República, 1st series, no. 32.
- ATP — Portuguese Textile and Clothing Association — Portuguese TCI export data, February 2026. Available at: www.atp.pt
Frequently asked questions
What does it mean when the ERP calculates infinite capacity?
Infinite capacity is a design choice of the planning module: the system distributes orders across work centres without checking whether real available time exists. It simplifies the calculation, but produces unrealistic plans — for example, 140 hours scheduled for a working week of 40 hours. It is deliberate, not a technical error.
Why are 30% of planned orders not completed in the scheduled week?
The article identifies six main causes: outdated operation times, calendars that do not reflect seasonality, absenteeism not integrated into the system, quality with unplanned rework, and lack of synchronisation between real data and the planning engine. Each one contributes to the systematic deviation.
What is takt time and why does the ERP not calculate it?
Takt time is the production rhythm dictated by customer demand. The ERP knows how many units are on the order book and how many hours are available, but it does not automatically alert when the required cadence is historically impossible. That alert must be built via a business rule or dashboard — it does not come in the standard module.
How does absenteeism affect the production plan in the ERP?
Without integration between the HR module and the production module, the ERP plans with 100% of staff available. The planner knows the real pattern — more absences on Mondays, losses in July due to holidays — but applies manual corrections in Excel. Those corrections never enter the system, perpetuating the distrust.
What is the impact of outdated operation times on the plan?
If the unit times have not been reviewed since implementation, the ERP plans with obsolete data. A line that has changed product or whose workforce has aged will have a different real speed. The result: orders appear "completed" in the system days before they are ready, and the production manager stops trusting the system.
Why does a single annual calendar not work in seasonal factories?
A factory with three shifts in high season and one shift in low season needs dynamic calendars. With a single calendar, the ERP plans three-shift capacity in February when there is only one, and underestimates the load in August. The planner discovers the problem when the deadlines are already committed.
What should a finite capacity planning module include?
It requires rigorous parametrisation: shift calendars per work centre, historical efficiencies per operation, setup times between references, and scrap coefficients per machine. Without this data fed with discipline, the finite capacity engine produces a plan as unrealistic as the infinite capacity one, only with more apparent confidence.
