Supply Chain Management Blog Posts by SAP
cancel
Showing results for 
Search instead for 
Did you mean: 
Altan
Product and Topic Expert
Product and Topic Expert
996

In order to collect requirements and form a greater lot of procurement, the conventional way is to use periodical lot sizes. Built in lot sizes that SAP offers are; for instance, TB (daily), WB (weekly), MB (monthly), etc.

On the other hand; SAP offers optimum lot sizing procedures, as well as periodical lot sizes.

 

In PP/DS; optimum lot sizing is not handled by Lot Sizing Procedure field in MRP1 view of material master, but by dedicated product heuristics. These heuristics are:

  • SAP_PP_005 Part Period Balancing
  • SAP_PP_006 Least-Unit Cost Proc.: Ext. Procurement
  • SAP_PP_013 Groff Procedure

In usage of any of these 3 product heuristics, Lot Sizing Procedure can be left as EX (Lot-for-lot order quantity), SAP still takes care of lot sizing of procurement plans by combining requirement quantities.

 

In this blog we are focusing on SAP_PP_005 heuristic, which is Part Period Balancing.

Part Period Balancing heuristic is based on 2 costs maintained on Advanced Planning view of material master:

  • Procurement Costs
  • Production Storage Costs

2025-06-01_14-29-57.PNG

In this example; stock cost is set to 5, which is per unit per day; and procurement cost is set to 100, which is fixed cost of additional order.

 

Let's check some requirements:

2025-06-01_14-35-14.PNG

  • 01.07.2025 FC req. 10-
  • 15.07.2025 FC req. 10-
  • 01.08.2025 FC req. 10-
  • 15.08.2025 FC req. 10-
  • 01.09.2025 FC req. 10-
  • 15.09.2025 FC req. 10-

 

Let's run product heuristic:

2025-06-01_14-36-54.PNG

  • 01.07.2025 PurRqs 30
  • 01.07.2025 FC req. 10-
  • 15.07.2025 FC req. 10-
  • 01.08.2025 FC req. 10-
  • 15.08.2025 PurRqs 30
  • 15.08.2025 FC req. 10-
  • 01.09.2025 FC req. 10-
  • 15.09.2025 FC req. 10-

As seen, first 3 requirements are combined.

 

Why? Let's see how the algorithm works step by step:

  1. First, the algorithm runs net requirements calculation and finds open requirements by covering by stocks and fixed receipts.
  2. Then, the remaining open requirements are listed chronologically. In our example all requirements are open, because there is no stock or fixed receipt. So, first open requirement is on 01.07.2025 with quantity of 10, and second requirement is on 15.07.2025 with quantity of 10.
  3. Algorithm works iteratively. So, it first check whether first 2 requirements need to be combined or not. If combined, there will be 20 units of receipt to create, 10 of which will stay at stock for 14 days. Which means 14 days * 10 units * 5 stock cost per unit per day = 700. Since the receipt will be 20, average daily stock cost will be 700 / 20 = 35. Since 35 is lower than the procurement cost of 100 (fixed cost of an additional order); having separate orders is worse, and having 1 order covering these 2 requirements is better.
  4. Now the algorithm knows that first 2 requirements need to be combined. But it does not stop there, it iterates further. Now, it investigates whether combining 3 requirements would be better or not.
  5. If first 3 requirements are combined, there will be 30 units of receipt to create, 10 of which will stay at stock for 14 days, and 10 of which will stay at stock for 31 days. Which means 14 days * 10 units * 5 stock cost per unit per day + 31 days * 10 units * 5 stock cost per unit per day = 700 + 1550 = 2250. Since the receipt will be 30, average daily stock cost will be 2250 / 30 = 75. Since 75 is lower than the procurement cost of 100 (fixed cost of an additional order); having separate order for 3rd requirement is worse, and having 1 order covering these 3 requirements is better.
  6. Now the algorithm knows that first 3 requirements need to be combined. But it does not stop there, it iterates further. Now, it investigates whether combining 4 requirements would be better or not.
  7. If first 4 requirements are combined, there will be 40 units of receipt to create, 10 of which will stay at stock for 14 days, 10 of which will stay at stock for 31 days, and 10 of which will stay at stock for 45 days. Which means 14 days * 10 units * 5 stock cost per unit per day + 31 days * 10 units * 5 stock cost per unit per day + 45 days * 10 units * 5 stock cost per unit per day = 700 + 1550 + 2250 = 4500. Since the receipt will be 40, average daily stock cost will be 4500 / 40 = 112,5. Since 112,5 is higher than the procurement cost of 100 (fixed cost of an additional order); having separate order for 4th requirement is better. The deal is closed. It is decided to combine first 3 requirements.
  8. The same iteration starts for the rest of requirements. Now first open requirement is on 15.08.2025 with quantity of 10. And combination check is carried out again and again until there is no requirement left.

 

Tips & Tricks

For externally procured materials stock cost and procurement cost can be defined as in real life. However; for in-house produced materials, it may be unclear to determine procurement cost.

Personally, for in-house materials, I suggest defining stock cost as 1, and procurement cost as "maximum days' supply per unit".

So, let's say we have a semi-finished good, and we want to combine requirement quantities and produce it in bigger lots; but we do not want to define a certain period to create a lot (as in weekly, for instance). Because we want to form a lot of semi-finished good based on requirement quantities and dates. In this case, we can use Part Period Balancing for the semi-finished good, by setting maximum days' supply per unit as 15 days, for instance. Therefore, stock cost will be 1 and procurement cost will be 15.

One more thing; let's say the base unit of measure is too granular to model, for example, it is process industry and production is carried out in tons, but the base unit of measure is kilogram, stock cost can be set as 0,001 so that it will still be 1 for a ton.

4 Comments