Skip to content

Commit

Permalink
[IMP] Inventory: wave transfers 18
Browse files Browse the repository at this point in the history
Co-authored-by: hojo-odoo <[email protected]>

Co-authored-by: Sam Lieber (sali) <[email protected]>
  • Loading branch information
jero-odoo and samueljlieber committed Jan 24, 2025
1 parent 88e1bee commit 92df58d
Show file tree
Hide file tree
Showing 5 changed files with 107 additions and 38 deletions.
Original file line number Diff line number Diff line change
@@ -1,68 +1,137 @@
======================
Process wave transfers
======================
==============
Wave transfers
==============

While a batch transfer is a group of several pickings, a **wave transfer** only contains some parts
of different pickings. Both methods are used to pick orders in a warehouse, and depending on the
situation, one method may be a better fit than the other.
.. |SO| replace:: :abbr:`SO (sales order)`

To handle orders of a specific product category, or fetch products that are at the same location,
wave transfers are the ideal method.
While a batch transfer is a group of several pickings, a **wave transfer** contains certain parts
of different pickings. In Odoo, wave transfers are batch transfers with an extra step: transfers are
split before being grouped in a batch.

In Odoo, wave transfers are actually batch transfers with an extra step: transfers are split before
being grouped in a batch.
Wave picking is ideal for warehouses that need to optimize the handling of high order volumes while
managing complex picking criteria. With wave transfers, orders are grouped into waves based on
factors like product location, category, or scheduled shipping times. Each wave is assigned to a
different employee for the most efficient execution.

Wave picking is particularly useful for operations where multiple sales orders (SOs), or a single
order, must be picked across different waves. This approach enables flexible scheduling, allowing
warehouses to align picking activities with shipping deadlines, or resource availability.

.. example::
#. |SO| 1 calls for one apple and one orange
#. |SO| 2 calls for one apple and one banana
#. |SO| 3 calls for one apple, one orange, and two bananas

Apples are stored in Shelf A, oranges in Shelf B, and bananas in Shelf C. A warehouse employee is
assigned to the wave, and is provided with the following instructions:

- Shelf A: Pick three apples. Place them into a central cart designated for the wave.
- Shelf B: Pick two oranges. Add them to the same cart.
- Shelf C: Pick three bananas. Add them to the cart.

The employee then takes the cart to the sorting/packing station. Items are then sorted and packed
into individual orders.

Configuration
=============

Before a wave transfer can be created, the :guilabel:`Batch Transfers` and :guilabel:`Wave
Transfers` options must be activated.

First, go to :menuselection:`Inventory --> Configuration --> Settings`. In the
:guilabel:`Operations` section, enable :guilabel:`Batch Transfers` and :guilabel:`Wave Transfers`.
Then, click :guilabel:`Save` to apply the settings.
To enable wave picking, begin by navigating to :menuselection:`Inventory --> Configuration -->
Settings`. In the :guilabel:`Operations` section, tick the :guilabel:`Batch, Wave & Cluster
Transfers` checkbox to enable the setting.

.. image:: wave/wave-transfers-setting.png
:align: center
:alt: View of Odoo Inventory app settings to enable the wave transfers option.

Add products to a wave
======================
Next, the :guilabel:`Storage Locations` and :guilabel:`Multi-Step Routes` options, under the
:guilabel:`Warehouse` heading, must also be checked on this settings page.

Now that the settings are activated, start a wave transfer by adding products to a wave.
*Storage locations* allow products to be stored in specific locations they can be picked from, while
*multi-step routes* enable the picking operation itself.

Then, click :guilabel:`Save` to save the changes.

Create a wave
=============

Wave transfers can only contain product lines from transfers of the same operation type. To view
all the transfers and product lines in a specific operation, first go to the :guilabel:`Inventory`
dashboard and locate the desired operation type's card. Then, open the options menu (the three dots
icon in the corner of the operation type's card) and click :guilabel:`Operations`.
all the transfers and product lines in a specific operation, navigate to the
:menuselection:`Inventory app`. Find the desired Kanban card, then click the :icon:`fa-ellipsis-v`
:guilabel:`(vertical ellipsis)` icon to open the options menu. Under :guilabel:`New`, click
:guilabel:`Prepare Wave`.

.. image:: wave/list-of-operations.png
:align: center
:alt: How to get an operation type's list of operations.

On the operations page, select the product lines you want to add in a new or existing wave. Then,
click :guilabel:`Add to Wave`.
Create a new wave
-----------------

On the :guilabel:`Prepare Wave` pop-up, stock moves lines are grouped by source location. Select the
checkboxes for the product lines that should be added. Then, click :guilabel:`Add to Wave`.

.. image:: wave/select-lines.png
:align: center
:alt: Select lines to add to the wave.

.. tip::
Use the :guilabel:`Filters` in the search bar to group lines with the same product, location,
carrier, etc...
carrier, etc.

After that, a pop-up box appears.
Add products to an existing wave
--------------------------------

To add the selected lines to an existing wave transfer, select the :guilabel:`an existing wave
transfer` option and select the existing wave transfer from the drop-down menu.
To add products to an existing wave, navigate to :menuselection:`Inventory --> Operations --> Wave
Transfers`. Click on the appropriate wave from the list to open it.

To create a new wave transfer, select the :guilabel:`a new wave transfer` option. If creating a new
wave transfer, an employee can also be set in the optional :guilabel:`Responsible` field. Once the
desired options are selected, click :guilabel:`Confirm` to add the product lines to a wave.
Under the :guilabel:`Detailed Operations` tab, click :guilabel:`Add a line`. Then, in the
:guilabel:`Product` field, search for the desired product.

View wave transfers
===================
Process a wave
==============

To view all wave transfers and their statuses, go to :menuselection:`Inventory --> Operations -->
Wave Transfers`. Wave transfers can also be viewed in the :guilabel:`Barcode` app by going to
:menuselection:`Barcode --> Batch Transfers`.
Wave Transfers`. Click on the appropriate wave from the list to open it.

To assign the wave to a specific employee, click the :guilabel:`Responsible` field and select the
appropriate name from the drop-down list.

To designate a :ref:`Dock location <inventory/shipping_receiving/docks>`, select an option from the
drop-down menu in the :guilabel:`Docks Location` field.

.. note::
The :doc:`dispatch management system <../../shipping_receiving/setup_configuration/dispatch>`
feature in Odoo is used to plan and build shipments. Assigning batches to loading docks ensures
the right products are pack into the appropriate trucks for delivery.

Select a :guilabel:`Vehicle` from the drop-down. Making a selection in this field automatically
updates the :guilabel:`Vehicle Category` field.

Enter a :guilabel:`Description` for this wave, if desired.

.. note::
The :guilabel:`Description` field is automatically generated for :ref:`automatic waves
<inventory/shipping_receiving/auto-waves>`.

.. _inventory/shipping_receiving/auto-waves:

Automatic waves
===============

Waves can be automatically created and assigned based on different criteria. The *Automatic Batches*
option is defined on the *operation type* level, which enables the creation of waves with distinct
grouping criteria for each operation type.

To enable *Automatic Batches*, navigate to :menuselection:`Inventory app --> Configuration -->
Operation Types`, and select the desired operation type (e.g. :guilabel:`Delivery`,
:guilabel:`Pick`, etc). Under the :guilabel:`Batch & Wave Transfers` heading, tick the
:guilabel:`Automatic Batches` checkbox.

Then, select one or more :guilabel:`Wave Grouping` criteria by ticking the appropriate checkbox.
Even if more than one grouping option is selected, only one wave is created.

Automatic waves can be created based on the following criteria:

- :guilabel:`Product`: Split transfers by product, then group transfers that have the same product.
- :guilabel:`Product Category`: Split transfers by product category, then group transfers that have
the same product category.

.. image:: wave/auto-wave-grouping.png
:alt: The Automatic batches feature with the wave grouping option for product category selected.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
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 92df58d

Please sign in to comment.