Nine of SAP's ten lot-sizing procedures transfer to Dynamics 365 F&O more cost-effectively than before. The tenth incurs a 3 per cent increase, and only if the coverage period is adjusted afterwards.
CodeCore Dynamics LLC. 14 September 2026.
Summary
- Last week, this series noted that Dynamics 365 F&O and Infor LN size replenishment orders almost identically because LN's lot-sizing set aligns closely with F&O's. SAP's set does not.
- SAP groups lot sizing into three families. F&O provides rules in only two of them. The third reads a cost and picks a lot size from it.
- The literature suggested the missing family would stop mattering once the plan was rebuilt weekly against an imperfect forecast. It did not. Part Period Balancing costs 8.8 to 29.2 per cent less than the best rule F&O offers across four of five business cases, moving only 6.7 per cent when given an order cost anywhere from half to twice the actual figure.
- The cost gap reflects a single coverage period applied across the entire catalogue. Setting the period per item closes a third to a half of the gap and beats SAP outright on spare parts and long lead times.
- Demand class is the wrong attribute to adjust, performing worse than a single catalogue-wide value in two of five cases. Deriving the period from each item's price and demand rate closes 28 to 45 per cent of the gap.
- Of ten SAP lot-size keys migrated into F&O, only Part Period Balancing incurs a cost (3.3 per cent). Retaining one coverage period across the catalogue raises that cost to 27.6 per cent.
- SAP can place the receipt at the start, the first requirement, or the end of the bucket. F&O has one position, which is the best of the three. A period-end receipt costs up to 51.6 points of fill.
- Nothing here supports a migration from F&O to SAP S/4HANA on planning grounds.
Reading Guide
| You want | Read |
|---|---|
| Settings to apply in F&O | Section 5.2 |
| Recommendations | Section 5.3 |
| SAP lot-size key costs landing in F&O | Section 4.4 |
| Base of recommendations | Section 4 |
| Model checking | Sections 3.3 and 3.4 |
| Questions for planning team | For Finance Leadership |
| What is not covered | Limits |
| To reproduce the analysis | Reproducing This |
Table 1. Section 5.2 and Section 5.3 for the recommendations. Section 4 for the evidence.
For Finance Leadership
Three questions establish the exposure without opening the system.
| Ask | Warning sign | Cost impact |
|---|---|---|
| How many distinct coverage periods are set across the item master? | One value applied universally | Up to 27.6 per cent of ordering and holding cost against a per-item setting |
| What order cost was used to choose them? | The question is not understood | Correct period ranged 7 to 168 days across the order costs tested. F&O records no such cost |
| For items arriving from SAP, which lot-size key did they carry? | The mapping was not retained | Only one of ten keys costs anything to lose |
The running cost converts from two figures already on the books. Each order saved is one fully loaded purchase order raised. Each unit-day of stock removed is unit cost multiplied by the holding rate. Both inputs belong to your organisation and are not supplied here.
Nothing in this article supports a migration to SAP S/4HANA on planning grounds. The evidence solely supports deciding whether the coverage period is tuned after a move, which is a configuration task rather than a licensing issue.
Terms
Dynamics 365 F&O
| Term | Meaning |
|---|---|
| Master planning | Reads demand and supply, proposes orders |
| Planning Optimization | Current master planning engine. Runs outside the application |
| Coverage code | Lot-sizing method for an item. Per requirement, Per period, Min/Max, Priority, Decoupling point, Manual |
| Coverage period | Days of demand one order covers under Per period |
| Item coverage, coverage group | Where coverage settings live. Item coverage overrides coverage group |
SAP S/4HANA
| Term | Meaning |
|---|---|
| MRP Live | Current planning run. Executes in the database |
| Lot-sizing procedure | Procurement quantity rule. MRP 1 view |
| Lot-size-independent costs | Cost of raising one order. Material master |
| Storage costs indicator | Annual storage cost as a percentage of material price |
| Scheduling indicator | Where the receipt lands inside a period |
| Short-term and long-term lot size | Two lot-sizing procedures on one material, split by date |
The Planning Words
| Term | Meaning |
|---|---|
| Lot sizing | Deciding how much goes on one order |
| Net requirement | What is still short once stock on hand and orders already placed are counted |
| Bucket | A block of days whose demand is put on a single order |
| Lead time | Days between placing an order and it arriving |
| Replanning | Throwing the plan away and rebuilding it from current numbers. Weekly, here |
| Forecast error | How wrong the demand forecast is, as a percentage |
How Items Behave
| Term | Meaning |
|---|---|
| Smooth | Sells most days, in similar quantities |
| Erratic | Sells most days, in quantities all over the place |
| Intermittent | Sells rarely, in similar quantities |
| Lumpy | Sells rarely, and in quantities all over the place |
Measurement
| Term | Meaning |
|---|---|
| Fill rate | The share of units that were available on the day they were required to be |
| Points | Percentage points. Dropping from 100 per cent fill to 48.4 per cent is a fall of 51.6 points |
| Days of cover | How many days the stock on hand would last at normal demand |
| Unit-day | One unit sitting in the warehouse for one day. Storage cost is charged per unit-day |
| Cost | Ordering cost plus storage cost |
| Service floor | A rule had to serve 95 per cent of demand before its cost was allowed to count. Cheap and out of stock is not cheap |
1. The Boundary
Master planning addresses what quantity needs ordering and when given current on-hand stock, existing orders, and expected demand. Most implementations run the process nightly, discarding previous proposals to rebuild them.
Both products net requirements identically before determining order quantities. That quantity calculation forms the entire scope of this evaluation.
Two specific boundaries apply. The SAP comparison uses S/4HANA 2025 on-premise and private cloud; the public cloud edition is excluded. Additionally, the analysis evaluates SAP's MRP lot-sizing procedures rather than PP/DS. PP/DS provides distinct planning capabilities via dedicated heuristics and an optimiser that accounts for "penalties (safety stock, maximum stock), costs (procurement, production, storage) and constraints (production capacity and lot sizes)". Implementations utilising PP/DS fall outside this measurement, and F&O offers no direct equivalent.
flowchart LR
N[Net requirement<br/>on a date] --> Q{What sets<br/>the quantity?}
Q --> A[Dynamics 365 F&O]
Q --> B[SAP S/4HANA]
A --> A1[Window opens at<br/>the first demand]
A --> A2[Receipt lands on<br/>the first day of the window]
B --> B1[Window may be anchored<br/>to a calendar]
B --> B2[Receipt may sit at the start,<br/>the first requirement,<br/>or the end]
B --> B3[A cost may choose<br/>the quantity]
classDef fno fill:#e8eef6,stroke:#2a78d6,color:#0b0b0b
classDef sap fill:#fbe8cd,stroke:#b8761c,color:#0b0b0b
classDef neutral fill:#ffffff,stroke:#52514e,color:#0b0b0b
class A,A1,A2 fno
class B,B1,B2,B3 sap
class N,Q neutral
Figure 1. Blue is what F&O does and cannot be told to do otherwise. Amber indicates settings only SAP carries. Each amber box is tested in Section 4.
2. Capabilities Compared
2.1 The Families
SAP states "Three groups of lot-sizing procedures are available: Static lot-sizing procedures, Period lot-sizing procedures, Optimum lot-sizing procedures."
flowchart TD
ROOT[Lot-sizing procedures] --> ST[Static<br/>quantity from the material master]
ROOT --> PE[Period<br/>group requirements in an interval]
ROOT --> OP[Optimum<br/>group until a cost criterion is met]
ST --> S1[EX Lot-for-lot = Per requirement]
ST --> S2[HB Replenish to maximum = Min/Max]
ST --> S3[FX Fixed lot size]
PE --> P1[TB daily, WB weekly, MB monthly,<br/>posting period, planning calendar]
PE --> P2[F&O: Per period, in days,<br/>opening at the first demand]
OP --> O1[SP Part Period Balancing]
OP --> O2[WI Sliding Economic Lot Size]
OP --> O3[DY Dynamic Planning Calculation]
OP --> O4[GR Groff Reorder Procedure]
OP --> O5[F&O: nothing]
classDef both fill:#dcecdc,stroke:#3a7d3a,color:#0b0b0b
classDef sap fill:#fbe8cd,stroke:#b8761c,color:#0b0b0b
classDef fno fill:#e8eef6,stroke:#2a78d6,color:#0b0b0b
classDef gone fill:#f6d8d4,stroke:#b0443a,color:#0b0b0b
classDef root fill:#ffffff,stroke:#52514e,color:#0b0b0b
class ROOT,ST,PE,OP root
class S1,S2 both
class S3,P1,O1,O2,O3,O4 sap
class P2 fno
class O5 gone
Figure 2. Green is the same mechanism in both products. Amber is documented only by SAP. Blue is the F&O rule in that family. Red is the family F&O has no rule in.
On the optimum family, SAP explains what the other two categories omit: "In static and period lot-sizing procedures, the costs resulting from stockkeeping, from the setup procedures or from purchasing are not taken into consideration." The four variants differ only in where they stop, as "The only differences between the various optimum lot-sizing procedures are the cost criteria."
All four read three material master fields: price, lot-size-independent costs, and the storage costs indicator. F&O carries none of these for planning purposes.
2.2 Receipt Position
SAP's period procedures group requirements within a calendar interval, which can be a day, a week, a month, a posting period, or an entry in a planning calendar. F&O's period operates differently: "The period starts with the first demand of the item and covers the defined length in time. The next period starts with the next requirements of the item."
SAP also determines where within the interval stock becomes available: "The system sets the availability date for period lot-sizing procedures to the first requirements date of the period. However, you can also define that the availability date is at the beginning or end of the period." F&O uses a single fixed position: "The order is planned for the first day of the period."
2.3 Near and Far Horizon
SAP can plan the near horizon with one procedure and the far horizon with another. The stated purpose is to "group together requirements over a larger period in the long-term area to produce a rough picture of the future master plan and select a more precise lot size to suit your requirements in the short-term area."
F&O applies a single coverage code per item across the entire horizon.
2.4 Contrast Not Modelled
| Mechanism | SAP S/4HANA | Dynamics 365 F&O |
|---|---|---|
| Planning run selection | MRP type on the material master | Coverage code, and the plan the item sits in |
| Near-horizon protection | Planning time fence with firming types | Freeze time fence. Auto-firming is a separate batch job |
| Rounding | Rounding value and rounding profile | Multiple on default order settings |
| Bring requirements forward | Safety time | Safety margins |
| Dynamic safety stock | Range of coverage profile | Minimum coverage, minimum and maximum keys |
| Planning scope | Plant and MRP area | Site, warehouse, coverage dimension |
| Constrained planning layer | PP/DS. Heuristics, an optimiser, finite capacity | No equivalent. Finite capacity scheduling, but no cost objective |
Table 2. Nothing in this table is measured in Section 4. It is here so the comparison is not read as complete.
Both vendors transitioned planning to new engines and published the underlying changes. SAP's Simplification List states that "The S/4HANA MRP only plans on plant and MRP area level", making storage location MRP "a subset of the MRP areas capabilities". Microsoft's Planning Optimization fit analysis notes that a freeze time fence set on item coverage "is ignored when Planning Optimization is enabled", and that sales line reservation via explosion alongside intercompany planning execution remain unsupported.
3. Data and Method
3.1 Source
Demand data originates from Online Retail II, a transaction dataset from a UK-registered non-store online retailer selling giftware primarily wholesale, published via the UCI Machine Learning Repository under CC BY 4.0. It contains 1,067,371 rows spanning 1 December 2009 to 9 December 2011.
This matches the dataset used in the Infor LN study. Reusing the same demand and testing framework while changing only the vendor ensures any variance in results stems directly from software rules rather than the underlying data.
Every invoice line includes a unit price, allowing storage costs to reflect actual prices charged. The median item sells at £2.10, with the 5th to 95th percentiles ranging from £0.42 to £10.75.
3.2 Filters
Stock codes consisting of five digits with an optional letter suffix are retained, filtering out postage, adjustments, bank charges, and samples. Credit invoices and negative quantities are removed from demand. Items qualify for replay if they record 12 or more demand days within a 180-day active window, leaving a working set of 3,498 items.
3.3 The Objective
Because SAP's optimum procedures aim to minimise order and storage costs, performance is evaluated on that metric. Total cost equals order cost multiplied by orders raised, plus the storage cost of every unit-day held based on the item's unit price.
Cost alone cannot determine rank. Min/Max achieved the lowest cost in two business cases while serving only 83 to 84 per cent of demand, because an objective focusing strictly on orders and holding costs ignores stockouts. All rankings in this study consider only rules achieving at least a 95 per cent fill rate. Standard lot-sizing literature assumes no backlogging, making cost comparisons between rules that fail to serve demand analytically undefined.
3.4 Verification
SAP provides a worked example on each optimum lot-sizing documentation page, including inputs and expected outputs. All four procedures share identical test parameters: price 20, lot-size-independent costs 100, storage 10 per cent, and demand of 1,000 units on four weekly dates.
| Procedure | SAP published result | Test implementation result |
|---|---|---|
| Part Period Balancing | 2000 | 2000 |
| Sliding Economic Lot Size | 2000 | 2000 |
| Dynamic Planning Calculation | 3000 | 3000 |
| Groff Reorder Procedure | 1000 | 1000 |
Table 3. Four procedures, three distinct answers on one example. An implementation that confuses two of them fails here.
The Groff documentation details its two comparison metrics: a cost saving of 1.79 against an additional storage expense of 19.18. Both figures reproduce accurately. They also clarify how annual storage percentages divide across daily increments: at 365 days the figure equals 19.18, whereas at 360 days it equals 19.44.
Structural conditions validate the model: no rule may cost less than the Wagner-Whitin optimum, a one-day bucket must equal one order per requirement, a calendar-anchored plan must remain static given a perfect forecast, and rerunning the process independently must reproduce identical stored results. Compared against ONS series J596, the retailer's monthly revenue correlates at 0.858 over 23 overlapping months, with both series peaking in November.
3.5 Initial Expectations
Existing research suggests clear outcomes. Blackburn and Millen demonstrated that under rolling schedules, the simpler Silver-Meal heuristic can outperform the Wagner-Whitin algorithm, indicating that single-pass proximity to the theoretical optimum offers limited predictive value. Wemmerlöv established that forecast errors diminish performance gaps between procedures. Zoller and Robrade surveyed the same family and recommended adopting "Groff's (1979) stop rule".
The working hypothesis assumed SAP's optimum procedures would lose most of their advantage when rebuilt weekly against an imperfect forecast, losing the remainder when input order costs differed from actual costs by a factor of two. Section 4.1 outlines the actual findings.
3.6 Business Cases
| Case | Lead time | Forecast error | Item selection source |
|---|---|---|---|
| Fast-moving distributor | 5 days | 10% | Smooth and erratic |
| Long-lead importer | 60 days | 20% | All classes |
| Spare parts operation | 45 days | 30% | Intermittent and lumpy |
| Seasonal wholesaler | 20 days | 20% | All classes |
| Volatile demand | 14 days | 40% | Erratic and lumpy |
Table 4. Each case replans weekly over two years, after a warm-up that is discarded.
4. Results
4.1 The Missing Family
Figure 3. Part Period Balancing is cheapest in four of the five cases. Spare parts is the exception, where it is the most expensive rule tested.
The initial expectation proved incorrect. Under weekly replanning with forecast error, ranked among rules clearing the service floor, Part Period Balancing costs less than anything F&O can express across four of five business cases.
| Business case | Best rule F&O has | F&O costs |
|---|---|---|
| Fast-moving distributor | Per period 14d | 29.2% more |
| Seasonal wholesaler | Per period 7d | 27.8% more |
| Volatile demand | Per period 14d | 21.8% more |
| Long-lead importer | Per period 14d | 8.8% more |
| Spare parts operation | Per period 56d | best available |
Table 5. Cost is order cost plus storage cost over the measured window, among rules serving at least 95 per cent of demand.
The spare parts case aligns with the literature's prediction. On intermittent and lumpy demand with a 45-day lead time, Part Period Balancing is the most expensive rule tested, holding three times the stock of a 56-day coverage period for the same order count. A rule committing large lots early cannot recover when the underlying signal shifts.
Figure 4. The coverage periods are flat because they read no cost. Part Period Balancing moves 6.7 per cent across a fourfold error in the one it does read.
The order cost also decides what the best coverage period is, which matters because F&O holds no field for it.
| Assumed order cost | Best single coverage period |
|---|---|
| 0.25 | 7 days |
| 1 | 14 days |
| 5 | 42 days |
| 15 | 84 days |
| 50 | 168 days |
Table 6. The assumed order cost moves the best coverage period from 7 days to 168. F&O records no such cost.
The second assumption proved incorrect as well. Given an input order cost ranging from half to double the actual value, Part Period Balancing shifts by only 6.7 per cent, with the best SAP procedure maintaining a 27 to 28 per cent advantage over the best coverage period at every level. The cost curve near an economic order quantity is flat, so doubling input cost alters quantity by its square root and shifts total cost minimally. Dynamic Planning Calculation is the exception at 57.8 per cent, as its criterion acts as a strict threshold against order cost rather than a balance around it.
4.2 Anchoring Against Placement
Two distinct variables separate F&O's Per period from SAP's period procedures: bucket boundary positioning (anchoring) and receipt placement within the bucket (placement). Isolating these variables demonstrates their individual impact.
Figure 5. Three of the four series sit on 100 per cent fill and overlap on the right panel. Only the period-end receipt separates, and it separates a long way.
Anchoring exerts minimal effect. Holding receipt timing to the first requirement, a calendar-anchored bucket alters cost by between minus 0.6 and plus 7.1 per cent, leaving fill rate unchanged. It holds 11 to 17 per cent less stock while raising 6 to 33 per cent more orders.
Figure 6. The penalty rises with weekday concentration at short buckets, which is the mechanism, and stays under 12 per cent throughout, which is the size of it.
Placement exerts a major effect.
| Bucket | Stock at period start | Fill at first requirement | Fill at period end | Points of fill lost |
|---|---|---|---|---|
| 7 days | +24.4% | 100.0% | 76.6% | 23.4 |
| 14 days | +20.5% | 100.0% | 72.1% | 27.9 |
| 28 days | +27.1% | 100.0% | 63.7% | 36.3 |
| 56 days | +27.0% | 100.0% | 48.4% | 51.6 |
Table 7. Stock is against the same bucket receiving at its first requirement, at unchanged service. The last column is the fill rate given up by moving the receipt to the end of the period.
Moving the receipt to the start of the period holds 20 to 27 per cent more stock and serves no better. Moving it to the end of the period costs service, and costs more of it the longer the bucket, because the stock arrives after demand earlier in the same bucket has already been required. At a 56 day bucket that is 51.6 points of fill.
F&O provides a single fixed position: the default setting shipped by SAP and the best-performing of the three tested.
4.3 The Far Horizon
Figure 7. Below a lead time that reaches past the switch date, every item is unaffected. Above it, none are.
SAP's short-term and long-term split yields no difference until item lead time exceeds the near-horizon window. At lead times of 5, 14, and 20 days against a switch at 28 days, every item generates identical outcomes. At a 45-day lead time, 1 per cent show variation. At 60 days, all items vary, with the broader far-horizon rule saving 23 per cent of cost and over a point of fill rate.
Far-horizon proposals are continually recalculated before release unless lead time extends past the switch boundary to force execution.
4.4 Cost on Arrival
Figure 8. Only Part Period Balancing costs anything to lose, and only when the coverage period is set per item. Leaving one value across the catalogue costs up to 27.6 per cent.
| SAP key | Procedure | F&O | Tuned per item | One setting |
|---|---|---|---|---|
| EX | Lot-for-lot order quantity | Per requirement | −67.4% | −59.7% |
| TB | Daily lot size | Per period 1d | −67.4% | −59.7% |
| HB | Replenish to maximum | Min/Max | −44.6% | −0.4% |
| FX | Fixed lot size | no equivalent | −36.4% | −21.4% |
| MB | Monthly lot size | approximate | −35.5% | −20.4% |
| WB | Weekly lot size | approximate | −20.9% | −2.3% |
| WI | Sliding Economic Lot Size | no equivalent | −13.3% | +7.0% |
| DY | Dynamic Planning Calculation | no equivalent | −12.3% | +8.3% |
| GR | Groff Reorder Procedure | no equivalent | −0.0% | +23.4% |
| SP | Part Period Balancing | no equivalent | +3.3% | +27.6% |
Table 8. A negative figure means the F&O substitute costs less than the SAP key it replaces. One business case, 200 items.
4.5 Tuning Rules
The tuned column above calculates each item's optimal coverage period ex post, serving as a theoretical bound rather than an operational method. Testing evaluated two executable tuning methods against this baseline.
Assigning coverage periods by demand class fails. Applying the median best period for each class yields results worse than a uniform catalogue-wide setting in two of five cases, expanding the cost gap by 199 and 301 per cent. Demand class is not an intrinsic item property; a period suited to intermittent demand with a 45-day lead time performs poorly when applied behind a 14-day lead time.
Deriving coverage periods from each item's economic order quantity succeeds. Calculating values from item price, demand rate, and an assumed order cost, rounded to the nearest available period, bridges 28 to 45 per cent of the cost gap in four of five business cases.
| Business case | One coverage period | Set from economic order quantity | Gap closed |
|---|---|---|---|
| Fast-moving distributor | +25.9% | +15.8% | 39.0% |
| Long-lead importer | +7.1% | +4.4% | 38.3% |
| Seasonal wholesaler | +27.3% | +19.5% | 28.5% |
| Spare parts operation | −45.1% | −24.7% | 45.2% |
| Volatile demand | +21.8% | +22.3% | −2.0% |
Table 9. Cost against Part Period Balancing in the same case. A negative figure means the F&O rule is cheaper. Volatile demand is the case where the rule does not help.
Figure 9. The left panel shows each class has a different best period. The right panel shows the spread inside each class is wide enough that the class alone does not determine it.
5. Discussion
5.1 Key Substitution
flowchart TD
K[SAP lot-size key<br/>on the MRP 1 view] --> F{Which family?}
F -- Static --> S{Which rule?}
F -- Period --> P[Set Per period to the<br/>bucket length in days]
F -- Optimum --> O[No coverage code reads a cost]
S -- EX --> S1[Per requirement. Exact]
S -- HB --> S2[Min/Max. Exact]
S -- FX --> S3[No coverage code fixes a quantity]
P --> P1[Boundary floats, does not anchor.<br/>Costs under 8 per cent]
O --> O1[Derive the period from the item's<br/>own price and demand rate]
S3 --> O1
O1 --> R[Only Part Period Balancing<br/>costs anything. 3.3 per cent]
classDef ok fill:#dcecdc,stroke:#3a7d3a,color:#0b0b0b
classDef warn fill:#fbe8cd,stroke:#b8761c,color:#0b0b0b
classDef act fill:#e8eef6,stroke:#2a78d6,color:#0b0b0b
classDef dec fill:#ffffff,stroke:#52514e,color:#0b0b0b
class S1,S2,R ok
class S3,O,P1 warn
class P,O1 act
class K,F,S dec
Figure 10. Green is a no-cost substitution. Amber is an exclusive SAP mechanism. Blue is the gap-closing action.
5.2 Configuration
Identify the exposure first. Running a simple setup table report without transaction history highlights potential gaps. Counting distinct coverage periods across the item master is the check; one value across an entire mixed catalogue is the finding.
| Setting | Where | What to put in it |
|---|---|---|
| Coverage period | Master planning > Setup > Coverage > Coverage groups. Item coverage for a single item | Derived per item from unit price and demand rate. Not from demand class, not one value for the catalogue |
| Coverage code | The same two places | Per period for SAP period and optimum keys. Per requirement for EX. Min/Max for HB |
Avoid assigning coverage periods via demand classification. Section 4.5 demonstrates that classification performs worse than a single uniform setting in two out of five business cases, while prior findings show that class boundaries shift depending on the review period measured.
Record the underlying order costs used to derive coverage periods outside the application, as F&O lacks dedicated fields for these values and optimal periods depend directly on them. Across tested scenarios, optimal periods ranged from 7 to 168 days based on order cost variables.
For items migrating from SAP, verify scheduling indicators before assuming equivalent planning execution. Where SAP setups used period-end scheduling, single-level demand fulfilment fell materially below 100 per cent; the F&O substitute will serve more.
5.3 For Microsoft
Evaluated SAP capabilities and the corresponding requirements for F&O parity.
| SAP capability | Worth having? | Evidence | Request for F&O |
|---|---|---|---|
| Optimum lot sizing | Yes | 8.8 to 29.2 per cent of cost in four of five cases. Holds across a fourfold error in the order cost | Coverage code that reads a cost. Failing that, the two fields it needs |
| Lot-size-independent cost and storage percentage on item master | Yes, and cheaper to ship | Best coverage period ranged 7 to 168 days across order costs. Per-item derivation closes 28 to 45 per cent of the gap | Two fields on item coverage, and a coverage period derived from them |
| Calendar-anchored buckets | Marginal | Under 8 per cent of cost, reaching 12 per cent only where demand concentrates on one weekday | Optional calendar anchor on the coverage period. Low priority |
| Short-term and long-term lot size | Only for long lead times | Nothing where the lead time falls inside the switch date. 23 per cent of cost and over a point of fill at 60 days | Second coverage period beyond a configurable day count |
| Fixed lot size | No | A tuned coverage period costs 36.4 per cent less than the SAP key | None |
| Receipt placement | No | F&O's one position is the best of the three. Period end loses up to 51.6 points of fill | None. Worth not having |
| Freeze time fence on item coverage | Not measured | Microsoft's own fit analysis records it as ignored | Honour it, or remove the field |
The primary enhancement involves creating a coverage code capable of evaluating cost variables. Alternatively, providing the two underlying cost fields on the item master allows deriving significantly improved coverage periods within existing rules, as demonstrated in Section 4.5.
5.4 Claims and Sources
| Claim | Source |
|---|---|
| Part Period Balancing costs 8.8 to 29.2 per cent less than the best F&O rule in four of five cases | Data |
| Part Period Balancing shifts by 6.7 per cent when input order costs vary by a factor of two | Data |
| Part Period Balancing represents the highest-cost rule for intermittent demand with 45-day lead times | Data |
| Anchoring impacts total cost by under 8 per cent, increasing only with high weekday demand concentration | Data |
| Period-end receipt scheduling reduces fill rate by up to 51.6 points | Data |
| Long-term lot sizes yield no operational difference when lead times fall within the switch boundary | Data |
| Nine of ten SAP lot-size keys execute more cost-effectively in F&O once coverage periods are tuned per item | Data |
| Demand classification fails as a tuning rule; economic order quantity logic succeeds | Data |
| Which lot-sizing procedures each product offers | Documentation |
| Everything in Table 2 | Documentation |
Table 10. Eight findings from the data. The capability tables from the two vendors' published manuals.
Neither dynamic SAP nor live F&O environments were executed directly. Both rule sets reflect reimplementations of documented behaviour; functionality deviating from published vendor specifications falls outside the scope of this model.
Limits
This evaluation excludes PP/DS, which executes constrained planning using capacity and cost optimisation functions not modelled here. Findings apply strictly to standard MRP 1 lot-sizing procedures.
The dataset reflects a single wholesale order profile lacking multi-level bills of materials, routings, or capacity constraints. Results do not evaluate dependent demand, multi-level netting, or production scheduling, restricting conclusions to purchasing and distribution scenarios. Furthermore, period-end receipt outcomes reflect single-level calculations; because SAP reschedules component requirements across bills of materials, multi-level structures will alter total cost impacts.
Order costs are not explicitly present within the transactional dataset. Values were evaluated across parameterised sweeps, forming the basis of Section 4.1. Assuming a fully loaded purchase order cost of £50, 98 per cent of catalog items imply reorder cycles exceeding any tested coverage period, as a £50 transaction cost against £3 of daily demand dictates infrequent replenishment. Practical wholesaling relies on order consolidation across multiple lines, which falls outside single-item lot-sizing logic in both platforms.
Groff's rule specification presents ambiguities in SAP documentation. Two distinct algorithmic interpretations reproduce published vendor examples due to single-step test parameters; however, across active transactional data, these interpretations diverge by a factor of two to three. This study applies the standard published stop rule throughout, providing the alternative logic within the source repository.
Plan stability measurements varied based on absolute versus relative tolerance thresholds applied prior to testing. Because threshold selection shifted rule stability rankings by up to five positions, explicit stability figures are omitted. SAP planning time fences and firming types mitigate replanning nervousness, but their precise financial impact is not quantified here.
Calculations depend on specific parameters that influence final values: a 20 per cent annual holding rate, parameterised order cost ranges, a 365-day annual divisor, a 95 per cent service floor target, weekly replanning intervals, a 28-day demand visibility window, 14 days of initial stock, filtering criteria (12 demand days across a 180-day active window), classification cutoffs (1.32 and 0.49), a weekly review period, and the operational parameters detailed in Table 4.
Reproducing This
The source code and datasets are at github.com/kingomnivore/mrp-fno-vs-sap. Clone it, pip install -r requirements.txt, then python run.py. Both data files are committed, so it runs as cloned.
The recipe below describes the same analysis independently of the code.
1. Get the data. Online Retail II from the UCI Machine Learning Repository, both sheets. ONS series J596, value not seasonally adjusted, for the external check.
2. Aggregate. Reduce the order lines to daily demand per item and a median unit price per item. Drop non-item codes, credit lines and negative quantities, then apply the activity filter.
3. Implement the rules. Code both vendors' lot-sizing procedures from their own documentation, including the ones the product under test does not offer.
4. Gate on the vendor's arithmetic. Reproduce SAP's published worked example for all four optimum procedures before running anything. Three distinct answers must come out of one example.
5. Replay. Define business cases as combinations of lead time, forecast error and item population. Run every rule in every case, replanning weekly, committing each order on its release date.
6. Cost it, then floor it. Order cost multiplied by orders, plus storage cost of every unit-day. Rank only among rules clearing a service floor.
7. Separate the variables. Test anchoring and receipt placement as a two-way design, not as two bundled configurations.
8. Sweep the cost inputs before reporting anything that depends on them.
Chosen parameters. As named in Limits.
On Method
The analysis code and the initial draft were produced with Claude Code. The dataset and the configuration claims were verified against the sources listed below before publication. The code is public on the repository.
Sources
Dynamics 365 Supply Chain Management documentation
- Coverage settings
- Planning Optimization fit analysis
- Coverage time fences
- Replenishment methods and quantity modification
SAP S/4HANA documentation, 2025 FPS01
- Lot-Sizing Procedures
- Optimum Lot-Sizing Procedures
- Part Period Balancing
- Sliding Economic Lot Size
- Dynamic Planning Calculation
- Groff Reorder Procedure
- Period Lot-Sizing Procedures
- Availability Date for Period Lot-Sizing Procedure
- Short-Term and Long-Term Lot Size
- MRP on HANA FAQ
Literature
- Wagner, H. M. and Whitin, T. M. (1958). Dynamic version of the economic lot size model. Management Science 5(1). DOI 10.1287/mnsc.1040.0262 resolves to the 2004 reprint.
- Blackburn, J. D. and Millen, R. A. (1980). Heuristic lot-sizing performance in a rolling-schedule environment. Decision Sciences 11(4).
- Wemmerlöv, U. (1989). The behavior of lot-sizing procedures in the presence of forecast errors. Journal of Operations Management 8(1).
- Zoller, K. and Robrade, A. (1988). Dynamic lot sizing techniques: survey and comparison. Journal of Operations Management 7(4).
- Syntetos, A. A., Boylan, J. E. and Croston, J. D. (2005). On the categorization of demand patterns. Journal of the Operational Research Society 56(5).
- Analysis code and data, GitHub
About Author
Dean Fachrie is a Functional Analyst at CodeCore Dynamics LLC, working on Microsoft Dynamics 365 F&O architecture and enterprise system design.
Migrating from SAP S/4HANA to Dynamics 365 F&O, or setting coverage periods across a mixed catalogue?
We help enterprise supply chain and finance teams map lot-sizing settings across ERP migrations and size replenishment against the working capital the business will carry.
Contact us or connect on LinkedIn for architecture reviews.







Top comments (0)