METHOD01 - Normative Quantity
Overview
The Normative Quantity method calculates the remaining quantity that will be picked into a partial handling unit after full handling units have been accounted for. This is the quantity that remains after dividing the total quantity by the full handling unit capacity.
Purpose
This method calculates the Expected Orderpick Qty. by:
- Determining the number of full handling units based on capacity
- Calculating the remaining quantity after full handling units
- Returning the remaining quantity as the normative orderpick quantity
Parameters
This method has no configurable parameters.
Algorithm
Step 1: Validate Input
If Quantity = 0:
- Exit with result = 0
- Go to End
Go to Step 2
Step 2: Determine Handling Unit Type
Determine which handling unit type to use:
Use
DocumentLine."Handling Unit Type Code"if available- Go to Step 3 if found
Get handling unit type from Customer Item:
- Try
CustItem."Handling Unit Type Code (Shipment)" - If empty, try
CustItem."Handling Unit Type Code (Receipt)" - Go to Step 3 if found
- Try
Step 3: Get Handling Unit Type UOM
Retrieve the Handling Unit Type Unit of Measure:
- Look up
CarrierTypeUOMfor customer item, unit of measure, and handling unit type - If not found, try to get from the same handling unit type group
- Must have
Qty. per UOM Codeset
Go to Step 4
Step 4: Calculate Full Handling Units
Calculate the number of full handling units:
NoOfFullCarriers = Quantity div CarrierTypeUOM."Qty. per UOM Code"
Where:
div= integer division (whole number only)
Step 5: Calculate Remaining Quantity
Calculate the quantity that remains after full handling units:
RestQty = Quantity - (NoOfFullCarriers × CarrierTypeUOM."Qty. per UOM Code")
Step 6: Round and Return Result
Result = Round(RestQty, 0.001, '>')
(Rounded up to 3 decimal places)
Mermaid Flowchart
flowchart TD
Start([Start Calculation]) --> CheckQuantity{Quantity = 0?}
CheckQuantity -->|Yes| ReturnZero[Return 0]
CheckQuantity -->|No| Step2[Step 2: Determine Handling Unit Type<br/>From document line or customer item]
ReturnZero --> End
Step2 --> Step3[Step 3: Get Handling Unit Type UOM<br/>Lookup UOM for handling unit type]
Step3 --> Step4[Step 4: Calculate Full Handling Units<br/>NoOfFullCarriers = Quantity div Qty. per UOM Code]
Step4 --> Step5[Step 5: Calculate Remaining Quantity<br/>RestQty = Quantity - FullCarriers × Qty. per UOM Code]
Step5 --> Step6[Step 6: Round Result<br/>Result = Round RestQty UP to 3 decimals]
Step6 --> End([End])
Calculation Steps
Variable Definitions
- A = Quantity (ordered quantity)
- B = Full handling unit capacity (
Qty. per UOM Code) - C = Number of full handling units (NoOfFullCarriers)
- D = Remaining quantity (RestQty)
- E = Final result (normative orderpick quantity)
Step-by-Step Formula
Get quantity:
A = QuantityGet handling unit capacity:
B = CarrierTypeUOM."Qty. per UOM Code"Calculate full handling units:
C = A div B(Integer division - whole number only)
Calculate remaining quantity:
D = A - (C × B)Round result:
E = Round(D, 0.001, '>')(Rounded up to 3 decimal places)
Examples
Example 1: Exact Full Handling Units
Scenario:
Quantity= 100 piecesCarrierTypeUOM."Qty. per UOM Code"= 50 pieces per handling unit
Calculation:
- Quantity: A = 100 pieces
- Handling unit capacity: B = 50 pieces per handling unit
- Full handling units: C = 100 div 50 = 2 handling units (100 pieces)
- Remaining quantity: D = 100 - (2 × 50) = 0 pieces
- Result: E = Round(0, 0.001, '>') = 0 pieces
Result: 0 pieces (no partial handling unit needed)
Example 2: With Remaining Quantity
Scenario:
Quantity= 175 piecesCarrierTypeUOM."Qty. per UOM Code"= 50 pieces per handling unit
Calculation:
- Quantity: A = 175 pieces
- Handling unit capacity: B = 50 pieces per handling unit
- Full handling units: C = 175 div 50 = 3 handling units (150 pieces)
- Remaining quantity: D = 175 - (3 × 50) = 25 pieces
- Result: E = Round(25, 0.001, '>') = 25 pieces
Result: 25 pieces (this is the normative quantity for the partial handling unit)
Example 3: Small Remainder
Scenario:
Quantity= 101 piecesCarrierTypeUOM."Qty. per UOM Code"= 50 pieces per handling unit
Calculation:
- Quantity: A = 101 pieces
- Handling unit capacity: B = 50 pieces per handling unit
- Full handling units: C = 101 div 50 = 2 handling units (100 pieces)
- Remaining quantity: D = 101 - (2 × 50) = 1 piece
- Result: E = Round(1, 0.001, '>') = 1 piece
Result: 1 piece (normative quantity for partial handling unit)
Example 4: Large Quantity
Scenario:
Quantity= 487 piecesCarrierTypeUOM."Qty. per UOM Code"= 60 pieces per handling unit
Calculation:
- Quantity: A = 487 pieces
- Handling unit capacity: B = 60 pieces per handling unit
- Full handling units: C = 487 div 60 = 8 handling units (480 pieces)
- Remaining quantity: D = 487 - (8 × 60) = 7 pieces
- Result: E = Round(7, 0.001, '>') = 7 pieces
Result: 7 pieces (normative quantity for partial handling unit)
Important Notes
- This method calculates the remaining quantity, not the number of handling units
- The result represents the quantity that will be picked into a partial handling unit
- Full handling units are calculated but not returned (only the remainder is returned)
- The result is always rounded up to ensure all items are accounted for
- This quantity is used in conjunction with shipment handling unit calculations
Use Case Example
Scenario: You have an order for 175 pieces, and each full handling unit holds 50 pieces.
Shipment Handling Unit Calculation (METHOD02):
- Calculates: 3 full handling units + 1 partial handling unit = 4 handling units total
Orderpick Calculation (METHOD01):
- Calculates: 25 pieces (the quantity in the partial handling unit)
Together, these tell you:
- 4 handling units are needed for shipment
- 25 pieces need to be picked into the partial handling unit
- 150 pieces are already in full handling units (3 × 50)