Skip to main content
Skip table of contents

Units Of Measure Management

In Valio CPQ project , Units of Measure (UoM) are central to:

  • Calculating the quoted quantity and its corresponding volume in kg or liters.

  • Ensuring consistent pricing, logistics, for all products.

  • displaying product UoM options in the quote document

Each product has:

  • A Base Unit : the main unit for that product.

  • A set of alternative units, with conversion rules to and from the base unit.

All conversion information is maintained in a dedicated UoM lookup table. This table feeds both:

  1. The product record : to complete UoM information at product level.

  2. The quote line : to generate the correct quantities, weights in the agreement document.

UoM Data Structure

UoM Lookup Table

The Unit of Measure table is the reference structure for all product UoM data.

Its roles are:

  • Complete the product record data: It provides the product master with the main UoM-related attributes (base unit, weights, content).

  • Generate lines by units of measurement for the agreement document It provides, for each product, the list of valid units and their conversion factors so that the quote can:

    • Calculate total product price in each unit.

    • Expose all available units in the generated document .

For the scope of this project, this table is maintained manually in CPQ. In a later phase, it is expected to be fed automatically from SAP via an integration and become fully synchronized with the ERP master data.

Daily Update of UoM Data

A daily job is responsible for updating / refreshing the UoM-related fields based on the content of the UoM lookup table.

The job ensures that, for each product (Product ID) , the following fields are up to date:

  • Unit Of Measure

  • Invoice Unit

  • EAN

  • Gross Weight

  • Net Weight

  • Weight Unit

  • Volume

  • Volume Unit

This job:

  1. Reads the UoM lookup table.

  2. Identifies, for each product, the record where Base Unit = Yes (main reference line).

  3. Updates the corresponding fields on the product master.

Field Definitions

Below is the explanation of each field in the UoM Lookup data structure.

Field

Objective / Description

Product ID

Technical identifier of the product (SKU). Links each UoM record to exactly one product.

Unit

The code of the unit of measure used operationally in CPQ for quoting (e.g. KG, L, BOX, PALLET). It is the primary UoM identifier for the record.

Base Unit

Flag indicating whether this line represents the main unit for the product. There must be exactly one “Base Unit = Yes” per product.

Amount

Conversion factor between the Unit and the Alternative Unit. Typically: 1 Unit = Amount × Alternative Unit (e.g. 1 BOX = 12 KG).

Alternative Unit

second unit used for conversion or reference

EAN

Barcode / EAN code for this product in this specific unit (e.g. EAN for a box vs EAN for a pallet). Used for logistics.

Gross Weight

Total weight of the product including packaging for this unit. Used for transport, shipping and regulatory documents.

Net Weight

Weight of the product excluding packaging for this unit. Used and internal calculations.

Weight Unit

Unit used for the Gross/Net weight (usually KG or Liter). Ensures weight values are interpreted consistently.

Content

The internal content of the unit (e.g. “10” if a box contains 10 liters of milk or 10 packs).

Content Unit

The unit of the content (L or KG,). Combined with Content, it describes what the customer effectively receives.

UoM at Product Level

Each product record in Valio CPQ exposes a simplified UoM view used by the quoting process and

There are four main fields on the product used to store UoM-related information:

  1. Invoice Unit

  2. Net Weight

  3. Gross Weight

  4. Weight Unit

  5. Volume

  6. Volume Unit

These fields are not maintained manually on the product. Instead, they are set and refreshed by a daily script:

  1. The script reads the UoM lookup table.

  2. For each product, it selects the record where Base Unit = Yes.

  3. It then updates the product with:

    • Base Unit of Measure (from the UoM record).

    • Net Weight and Gross Weight corresponding to that base unit.

    • Content (and implicitly its unit).

This mechanism guarantees that the product master always reflects the correct reference UoM data, consistent with the lookup table and, in future, with SAP.

The UoM Script updated is launched after product script update

UoM at Quote Level

When a product is added to a quote, the system needs UoM information for two main reasons:

  1. Calculations: quantity, weight, volume.

  2. Document generation: making clear to the customer which units and conversions apply.

Fields Retrieved from the Product

At quote line level, the CPQ retrieves the following fields from the product record:

  • UoM

  • Net Weight

  • Gross Weight

  • Content Weight

  • Weight Unit

These values are copied to the quote line and used to:

  • Calculate the total net and gross weight of the line (and of the full quote).

  • Support any logistic or regulatory calculations (e.g. transport capacity, labelling).

  • Provide the correct content information on documents (e.g. number of liters or packs).

Available UoM for the Product

In addition to the base UoM, the quote needs the list of all units available for that product.

At quote line creation (or update), CPQ:

  1. Looks up the Unit of Measure table for the corresponding Product ID.

  2. Retrieves all UoM records (box, pallet, etc.) and their conversion factors (amount).

  3. Builds a formated message with the following elements [Unit, Amount * Invoice Price without VAT, Weight Unit , Invoice Price without VAT * Amount / Net Weight]. this message is concatenated for all unite of measure retrieved.

  4. Stores this message in a dedicated quote line field.

This field is then used by the document generation engine so that the Sales documents clearly show the different packaging options.

Data Flow Overview

The Diagram below shows the data structures of the elements involved in the UoM process

Valio - CPQ Project

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.