Skip to content

Commit

Permalink
[ADD] inventory: compare packs and uom
Browse files Browse the repository at this point in the history
  • Loading branch information
Felicious committed Nov 20, 2024
1 parent 4d079db commit 6a0ec80
Show file tree
Hide file tree
Showing 3 changed files with 127 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -1,9 +1,121 @@
:nosearch:
:show-content:
:hide-page-toc:

=================
Configure product
=================

A group of products in Odoo can be further defined using:

- :doc:`Units of measure (UoM) <configure/uom>`: a standard quantity for specifying product amounts
(e.g., meters, yards, kilograms). Enables automatic conversion between measurement systems in
Odoo, such as centimeters to feet.

- *Ex: Purchasing fabric measured in meters but receiving it in yards from a vendor.*

- :doc:`configure/package`: A physical container used to group products together, regardless of
whether they are the same or different.

- *Ex: A box containing assorted items for delivery, or a storage box of two hundred buttons on a
shelf.*

- :doc:`configure/packaging`: groups the *same* products together to receive or sell them in
specified quantities.

- *Ex: Cans of soda sold in packs of six, twelve, or twenty-four.*

Compare package and packaging
=============================

This table provides a detailed comparison of packages and packaging to help businesses evaluate each
container type best suits their requirements.

.. list-table::
:header-rows: 1
:stub-columns: 1

* - Feature
- Packages
- Packaging
* - Purpose
- Tracks the specific physical container and its contents.
- Groups a fixed number of items together for easier management (e.g., packs of 6, 12 or 24).
* - Product uniformity
- Allows mixed products.
- Same products only.
* - Flexible
- Items can be added or removed from the container.
- Quantities are fixed (e.g., always packs of 6, 12 or 24).
* - Complexity
- Higher complexity due to container-level inventory tracking.
- Simpler setup, suitable for uniform product groupings.
* - Inventory tracking
- Tracks package location and contents within the warehouse.
- Tracks grouped quantities but not individual items' locations.
* - Smooth barcode operations
- Requires scanning both the package and individual items for reception. (even if there are 30
items in a package). Can enable the :ref:`Move Entire Packages
<inventory/product_management/move-entire-pack>` feature to update the package's contained
items' locations, when moving the package
- Scanning a packaging barcode automatically records all included units. (e.g., 1 pack = 12
units).
* - Product lookup
- Scanning a product's barcode identifies its typical storage location in the Odoo database
- Barcode identifies grouped quantity, not storage location.
* - Unique barcodes
- Unique barcodes for individual packages (e.g., Pallet #12).
- Barcodes set at the packaging type level (e.g., for a pack of 6).
* - Reusability
- Can be disposable or reusable, configured via the :ref:`Package Use
<inventory/warehouses_storage/cluster-pack>` field.
- Disposable only.
* - Container weight
- Weight of the container itself is included in the *Shipping Weight* field of a package
(:menuselection:`Inventory app --> Products --> Packages`).
- Weight of the container is defined in the *Package Type* settings.
* - Lot/serial number tracking
- Applies only to contained products.
- Applies to both contained products and the container.
* - Custom routes
- Routes cannot be set.
- Routes can define specific warehouse paths for a particular packaging type.

Use cases
---------

After comparing the various features, consider how these businesses, with various inventory
management and logistics workflows ame to deciding between packages or packagings.

Pallets of items using packaging
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

A warehouse receives shipments of soap organized on physical pallets, each containing 96 bars. These
pallets are used for internal transfers and are also sold as standalone units. For logistical
purposes, the pallet's weight must be included in the total shipping weight for certain deliveries.
Additionally, the pallet requires a barcode to facilitate tracking, and individual bars of soap must
be tracked as they are removed from the pallet.

After evaluating various options, it was determined that **packaging** was the most suitable
solution. With packaging, a barcode could be assigned to the pallet while maintaining visibility
over the quantity of the soap bars it contains. However, there were some limitations:

- Packagings of 96 soap bars are treated as a single product in Odoo, making them less flexible for
tracking individual items within the container.
- A unique barcode cannot be assigned to a packaging, but after removing items from the pallet, each
product had its own barcode.

Capturing product information using barcode
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

An Odoo user expects the Barcode app to display the typical storage location of a product by
scanning a barcode for a container.

**Packages** was the most suitable. When the :ref:`appropriate setting is enabled
<inventory/warehouses_storage/enable-package>`, scanning a package barcode displays its contents in
the Barcode app. Packages represent physical containers, enabling detailed tracking of the items
they hold. Scanning a package provides visibility into its contents and facilitates operations like
inventory moves.

.. toctree::
:titlesonly:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,20 @@ the :guilabel:`Operations` heading, activate the :guilabel:`Packages` feature. T
:align: center
:alt: Activate the *Packages* setting in Inventory > Configuration > Settings.

.. _inventory/product_management/move-entire-pack:

When moving packages internally, the *Move Entire Packages* feature can be enabled on an operation
type to update a package's contained item's location upon updating the package's location.

To do that, go to :menuselection:`Inventory app --> Configuration --> Operations Types` and select
the desired operation that this feature will apply to. (May have to set it for multiple)

On the operation type page, in the :guilabel:`Packages` section, tick the :guilabel:`Move Entire
Packages` checkbox.

.. image:: package/move-entire.png
:alt: Activate the Move Entire Packages setting.

.. _inventory/warehouses_storage/pack:

Pack items
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 6a0ec80

Please sign in to comment.