cancel
Showing results for 
Search instead for 
Did you mean: 

How To Group Same Products of Full Load Into Single Shipments using SCM-APO-TPVS ?

Former Member
0 Kudos

Hi Friends,

Need your help in modelling a business requirement.

The requirement is to build a shipment with same products if that product has a full load.

Currently each of the shipment formed is comprising of different products despite each of the product can inturn form a full load shipment.

Example:-

Load of Product A = 10 Tonnes

Load of Product B = 10 Tonnes

Number of Trucks Available = 2

Transport Vehicle capacity each = 10 Tonnes

Shipment-1 contains Product A & B

Shipment-2 also contains Product A & B

Desired/Expected Shipment-1 containing only Product-A (since its forming full load)

Desired/Expected Shipment-2 containing only Product-B (since its forming full load)

Warm Regards

Mahesh

SAP APO Consultant

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

there are probably a number of ways to do this, but the approach my company used to control how shipments would be generated was to build the Freight units like we wanted.

You can use BADI /SAPAPO/_VS_FUNIT - implement the interface method FUNIT_RULE_SPLIT.  You can either split or consolidate within this BADI Implementation.

With Consolidation you can select which products or order items you would like to generate into a single Freight Unit.  By controlling the freight units - you can force the optimizer to build shipments the way you want.

Hope that helps

Charles Ramey

Former Member
0 Kudos

Another thing I forgot to mention - building the freight units implies that the products are on the same Order.    If Product A was on multiple orders - that might explain why you are seeing it spread across multiple shipments.

A construct on the Freight Unit called a SHIP_WITH allows you to tie multiple orders together.  The optimizer tries to respect this construct and organize the shipment so that orders are kept together when they have the same SHIP_WITH.  Of course MAD dates must be the same for this to work properly.

Hope that helps

Charles

Former Member
0 Kudos

Hi Charles,

As you were saying that we can control building freight units. In our scenario, we have One Product per schedule line which will be split into multiple freight units as per split rule we mention. Using the BAdI, we can split & make optimizer build shipments but this does not allow my requirement.

Kindly have a look at the below example:

Example:-

Load of Product A = 10 Tonnes

Load of Product B = 10 Tonnes

Load of Product C =  6  Tonnes

Number of Trucks Available = 4 :-

Truck-1 = Capacity of 9 Tonnes

Truck-2 = Capacity of 9 Tonnes

Truck-3 = Capacity of 5 Tonnes

Truck-4 = Capacity of 3 Tonnes

So correspondingly,

Desired/Expected Shipment-1 containing only Product-A of 9 Tonnes (since its forming full load).

Desired/Expected Shipment-2 containing only Product-B of 9 Tonnes (since its forming full load).

Desired/Expected Shipment-3 containing only Product-C of 5 Tonnes.(since its forming full load).

Desired/Expected Shipment-4 containing Product-A,B,C of 3 Tonnes.(1 Tonne of A,1 Tonne of B & 1 Tonne of C)


Kindly let me know the possibility of achieving this way of building shipments by which we're maximizing the grouping of same products in a truck(shipment).

Thanks & Regards,

Mahesh

Former Member
0 Kudos

I'm a little confused on how this scenario works since 5 tonnes is a full load for product C and 9 tonnes is a full load for product A & B -  Either the vehicle is not considered full based upon the weight (it is volume)  OR you are using different resource types/capacities for the trucks.

If it is based on volume then you can simply config your split rules to the maximum volume of the resource.  You might need to look at the BADI for QUANTITY_CONVERSION if you have some unusual measurements like linear floorspace or unusual volume calculations.  One nice thing is the rules allow for you to use custom units and even allow for multiples (example might be weight & volume)

If your problem involves multiple resource types (sizes) - then this becomes more complex. Hopefully you have some sort of cross reference between Shipping Condition (VSBED) and resource type.  If so - you can setup a Split Rule for Consolidate as much as possible.  Then in the BADI (FUNIT_RULE_SPLIT) you can customize the size of the Freight Units generated by getting the resource constraints and then building individual Freight units to their maximum.

[HCT - High Capacity Truck (9 tonnes) / LVT - Low Volume Truck (5 tonnes) ]

     Product A  - 10 tonnes has shipping condition HCT

     Product B  - 10 tonnes has shipping condition HCT

     Product C -  6 tonnes has shipping capacity LVT

Your code in the BADI would see Product A and realize that HCT allows 9 tonnes - so you would create FUNIT 0001 for Product A 9 Tonnes.

          FUNIT 0002 for Product A 1 Tonne.

Product B  is on HCT so FUNIT 0003 for 9 tonnes is generated.Now you can do one of 2 things.  Either create FUNIT 0004 for 1 tonne - or you could add the 1 tonne of Product B to FUNIT 0002.  Adding to FUNIT 0002 forces the optimizer to build the all of the leftover product on a single shipment, but FUNIT 0004 allows the optimizer to build as it best sees fit (more than likely will give you the same result).

Product C would trigger the logic to pull the resource weight and find that only 5 tonnes are avail per this resource.  Thus you would create a new FUNIT for 5 tonnes.  The remaining tonne would either get a new freight units or added to FUNIT 002  (See discussion above about product B..

In our company we do a combination of 3 checks (Weight, Volume and linear floorspace).   Because of this complexity we had to use custom tables to define the floorspace of the product - and the floorspace of each type of MOT.  We use the Shipping Condition on the Schedule line to determine the MOT resource and use a Consolidate rule to build the freight unit correctly sized to the resource constraints.  This forces the optimizer to build the shipments the way we want.

Hope that helps

Charles

Former Member
0 Kudos

Hi Charles,

Assume volume (be it product's or truck's) is never a constraint for building shipments, looking only at weight (Tonnes) as constraint.

Split rule with Consolidation may completely de-track the objective because the Bigger the freight units (for schedule line's with load lesser than truck's capacity), the Higher the drop of load in over-load cases (as for Optimizer, dropping a 100Tonne freight unit & 1Tonne freight unit is of same penalty cost).

The final result needed for the above example should be this way:-

Shipment-1 should contain only Product-A of 9 Tonnes (since its forming full load).

Shipment-2 should contain only Product-B of 9 Tonnes (since its forming full load).

Shipment-3 should contain only Product-C of 5 Tonnes.(since its forming full load).

Shipment-4 should contain Product-A,B,C of 3 Tonnes.(1 Tonne of A,1 Tonne of B & 1 Tonne of C).

(Here only Shipment-4 is a Mixed-Shipment...Which is Fine...but Rest all are Single-Product Shipments)

Ultimately objective is to build shipments with Same Products & also make Optimizer drop lesser load (small load freight units) in cases of total Products-load > All Trucks-Capacity...i.e., Overload of products situation

Former Member
0 Kudos

But in your scenario, if volume of resource or product is not a constraint and weight is, then the proper solution should be .

Shipment 1 - 9 tonnes Product A

Shipment 2 - 9 tonnes Product B

Shipment 3 - 8 Mixed tonnes

     ( 6 tonnes Product C + 1 Tonne Product A + 1 tonne of Product B).

[Assuming a max weight of 9 tonnes per shipment]

You're not providing enough info for me to understand why this cannot be a 3 shipment solution. - and the optimizer will not understand either.

In order to make it generate shipments as you desire above there must be some other variables to help control the splitting or the optimizer.  Even if you split into freight units at the individual tonne level.  The optimizer will build the shipments in a way that maximizes the loading (thus the 8 tonnes on shipment 3) unless you give it some reasons why it cannot be shipped this way.

Former Member
0 Kudos

Hi Charles,

When each shipment is per truck, how can the Shipment-3 (in your reply) be of 8 Tonnes when capacity of the Truck-3 is only 5 tonnes & Truck-4 capacity is 3 Tonnes.

If you look the conversation chain, it gives you an understanding about the scenario well.

Let me jot down the entire scenario again here.

Kindly have a look at the below example:

Example:-

Load of Product A = 10 Tonnes

Load of Product B = 10 Tonnes

Load of Product C =  6  Tonnes

Number of Trucks Available = 4 :-

Truck-1 = Capacity of 9 Tonnes

Truck-2 = Capacity of 9 Tonnes

Truck-3 = Capacity of 5 Tonnes

Truck-4 = Capacity of 3 Tonnes

The final result needed for the above example should be this way:-

Shipment-1 should contain only Product-A of 9 Tonnes (since its forming full load).

Shipment-2 should contain only Product-B of 9 Tonnes (since its forming full load).

Shipment-3 should contain only Product-C of 5 Tonnes.(since its forming full load).

Shipment-4 should contain Product-A,B,C of 3 Tonnes.(1 Tonne of A,1 Tonne of B & 1 Tonne of C).


Can you suggest a way for this result ?

Thanks & Regards,

Mahesh

Former Member
0 Kudos

Your best bet is if there is something on the order (schedule line), even a Z-field, which allows you to know that Product C is going on a small truck - then you can custom build your Freight units for the truck size.

If you can find nothing to help you build custom sized Freight units - then I know of no method that can guarantee a single product on the first 3 shipments.  Shipwith would work - but you would have to know exactly how many will fit on the truck beforehand. 

You might try something like "tweaking" the mad dates so that each product has a separate time - however this might require them to be so far apart that they wont fit in the same loading window.  (which might cause problems in the 4th shipment).

Have you examined the BADI for the TP/VS Optimizer: Preprocessing that can be activated thru IMG??  I didn't see anything that jumped out, but maybe there might be something useful there.

Sorry I could not be of more help.

Charles

Former Member
0 Kudos

Any of you had dealt with this business requirement friends ?