Hibou Odoo Suite: Inventory Modules: Product Catch Weight


Purpose

The purpose of this documentation is to outline the processes of using catch weight.

Processes

To get started, navigate to the Inventory application. 

Odoo - Sample 1 for three columns

 

Configuration for Catch Weight

Once there, select Configuration followed by Settings.

Under the Products section, select the option for Units of Measure. In the Traceability section, select the option for Lots & Serial Numbers. Once both have been checked, hit Save .

Odoo CMS - a big picture

Configuring a Product to use Catch Weight

From the top menu, select Master Data followed by products. Select an existing product or create a new one by hitting  Create .

In the Inventory tab, in the Traceability section, select By Unique Serial Number for Tracking.

Odoo CMS - a big picture

Once tracking has been changed to By Unique Serial Number, navigate to the General Information tab. There will be a new Catch Weight UOM dropdown beneath the Purchase Unit of Measure field. Select the Unit of Measure for the catch weight of this product. 

Odoo CMS - a big picture

Creating a Unit of Measure

To add a new unit of measure, while in the Inventory app, select Configuration followed by  UoM . Here you will find a list of all Units of Measure. To create a new one, hit Create . Fill in the following fields:

  • Unit of Measure: The name of the unit of measure.

  • Category: The category of the unit of measure (weight, unit, volume, etc.).

  • Type:

    • Bigger than the reference Unit of Measure: Your new Unit of Measure is larger than the reference Unit of Measure. For example, we have a 50lb case. The reference unit of measure is kilograms. So for Bigger Ratio we enter the 22.67969 (kilograms), which is 50lbs.

    • Reference unit for this measure category: Your new UoM is equal to the reference Unit or Measure.

    • Smaller than the reference Unit of Measure: Your new Unit of Measure is smaller than the reference Unit of Measure. For Ratio enter the ratio of the reference unit of measure.

  • Active: Leave checked to keep the Unit of Measure you are creating enabled.

  • Rounding Precision: The computed quantity will be a multiple of this value. Use 1.0 for a Unit of Measure that cannot be split.

Odoo CMS - a big picture

Receiving Products with a Catch Weight

In the Inventory app. go to the Dashboard and click on Receipts for the Warehouse. Then, select the picking from the list of inbound pickings for this warehouse. Click on  at the end of the line for the product that uses catch weight.

Odoo CMS - a big picture

In the Detailed Operations modal, enter a Lot/Serial Number and Catch Weight for each line. When finished, hit confirm . Then validate the picking by hitting validate .

Odoo CMS - a big picture

Catch Weight + Vendor Bills

After validating the picking, navigate to the Purchases application.

Odoo - Sample 1 for three columns


Once there, from the top menu select Purchase followed by Purchase Orders. Select the purchase order from the list and then click on the Vendor Bills smart button.

Odoo CMS - a big picture

Hit the Create button to create a new vendor bill. Here we can see the catch weight previously recorded on the receipt. Additionally, we can see that the amount for the line has been computed based on the catch weight and is not the actual unit price for the product.

Odoo CMS - a big picture

Customer Invoices +  Catch Weight

After an outbound picking has been validated, a customer invoice can be created. Similar to Vendor Bills, we can see the catch weight as well as the subtotal amount which has been computed using the catch weight.

Odoo CMS - a big picture

Technical

This module adds a new `catch_weight_uom_id` to the `product.template` model. 

The `account.invoice` model receives two new fields:

  • `catch_weight` Float field for the Catch weight

  • `catch_weight_uom_id` Many2one field related to the product's (product_id) catch_weight_uom_id

The `stock.production.lot` model receives three new fields:

  • `catch_weight_ratio` computed Float field that is the Catch Weight Ratio of the lot

  • `catch_weight` Float field that is the Catch Weight of the lot

  • `catch_weight_uom_id` Many2one field which is related to the product's (product_id) catch_weight_uom_id

The `stock.move` model receives one new Many2one field `product_catch_weight_uom_id` related to the product's (product_id) catch_weight_uom_id.

The `stock.move.line` model receives five new fields:

  • `catch_weight_ratio` Float field for the Catch Weight Ratio

  • `catch_weight` Float field for the Catch Weight

  • `catch_weight_uom_id1 Many2one field for the Catch Weight UOM

  • `lot_catch_weight` Float field related to the log's catch weight (lot_id.catch_weight)

  • `lot_catch_weight_uom_id` Many2one field related to the product's catch_weight_uom_id (product_id.catch_weight_uom_id)

The Stock Production Lot form gets the `catch_weight_ratio`, `catch_weight` and `catch_weight_uom_id` fields. 

The Stock Move Operations form get's the `product_catch_weight_uom_id` and adds it to the context for the move_line_ids tree view reference.

The Stock Move Line Operations Tree view gets `catch_weight`, `catch_weight_uom_id`, `lot_catch_weight` and `lot_catch_weight_uom_id` fields.

The Product Template Form view gets the `catch_weight_uom_id` field that is only visible if tracking is set to `serial`.

The Account Invoice Form and Account Invoice Supplier Form views both get `catch_weight` and `catch_weight_uom_id` fields.

In Invoice Document QWeb views get columns for Catch Weight and Catch Weight Unit Price.