Supply Chain Management Blogs by SAP
Expand your SAP SCM knowledge and stay informed about supply chain management technology and solutions with blog posts by SAP. Follow and stay connected.
Showing results for 
Search instead for 
Did you mean: 
Active Contributor
Let us continue developing the package building scenario from simple to complex, that we kicked off in MKS101. So far we only used a single product having some alternative unit of measures defined and a package type assignment. The results already looked okay with such a minimal set of definitions. No package building profile so far. No package material. No layer definitions. No optimizer.

Our last pallet contained only 5 EA (half of the full package quantity) and everything looked okay except the height:

700mm kind of looks strange at first sight: From the dimensions we can derive that 2 EA form a full layer and then we would have 2 full layers (560mm) and a single piece on top (280mm) making it 840mm, Well, the PB does not automatically derive layers and in this simple mode of course does not consider the pyhsical shape of the product. But we can help the engine by adding this layer info to the product:

We only fill the quantity and no other field. It is possible though to set a layer height other than the product height to model something customer specific. In case not filled, PB uses the product height.

As there can be many packaging and layer definitions in the product (for example for a EU pallet and a pallet cage), we need to tell the PB in the package type assignment which layer definition it shall use:

Running the scenario again, we see that the height is as desired:

That's as good as it gets working only with packaging and layer units of measure. The package material is only included in the full packages, but not in the incomplete packages. The PB does not derive the weight and height of the package material out of a relation between the product definitions and full package quantity. There would be too many assumptions in this.

Now let's add another product to start consolidation. Yes, that is also possible without a package building profile and a package material. One note: I do not go back to the very, very basic product settings we started with (no product dimensions, no layer). I think I explained what those are for and you can try out what happens when you combine multiple product with such basic definitions: Full packages are created okay and the consolidation brings up missing or inconsistent package attributes. So here is the new product:

I defined the very same package type assignment and then run the PB for both products. Because I am a fan of simplicity, I do not try out 127 EA of PRODUCT_A and 87 EA of PRODUCT_B (like some people I know would start with), but a simple 1 EA + 1 EA combination. That might help me to understand what is going on:

Nice! My first mixed package! The package attributes look also quite nice: The PB set the height to the tallest product as the combined volume of the products fits within this space.

Next try to check if the full package quantity still works:


Next try to see that the layers I have defined are working:

That's bad. I used for PRODUCT_A a quantity of a full layer + 1 EA and the same for PRODUCT_B. Mixing worked, but the height is not what I was expecting (280mm + 350mm + 350mm = 980mm). It looks calculated (like we had it with the single product and no layers): Total product volume / package surface.

Why is this? The answer is simple: The PB does not use layers until it has a limit it can stack the layers against. Why does it still create a mixed package using the volume based approach? Because there the logic is different. You can play around with the quantities and check the results. If you encounter something interesting (at least I did :-)): Feel free to post it here. No tickets please. 🙂


You might wonder hy the full package height is not used as maximum also for the mixed package. The PB was intended to do so, but the first friontrunner customers had some scenarios where this was not desired. Nevertheless, this feature can still be acvtivated using BAdI method /SCMB/IF_PB_ENHANCE~ADJUST_SETTINGS and setting parameter s_settings-apply_full_pkg_height_limit = ABAP_TRUE.


So let's do define a height limit. My preferred spot would be the package material, but since we don't have one yet we stick to the package type assignment. Typically here you would only need to enter customer or product specific limits.

Back to package building:

Much better!

More to come...