Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[IMP] Inventory: wave transfers 18 #11761

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
jero-odoo marked this conversation as resolved.
Show resolved Hide resolved
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.
jero-odoo marked this conversation as resolved.
Show resolved Hide resolved

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.
jero-odoo marked this conversation as resolved.
Show resolved Hide resolved

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>`
jero-odoo marked this conversation as resolved.
Show resolved Hide resolved
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.