Skip to content

Commit

Permalink
[IMP] Inventory: Batch Picking 18
Browse files Browse the repository at this point in the history
Co-authored-by: Liz Bender <[email protected]>

Co-authored-by: Felicia Kuan <[email protected]>
  • Loading branch information
jero-odoo and Felicious committed Jan 23, 2025
1 parent cc226a7 commit 52a437a
Show file tree
Hide file tree
Showing 8 changed files with 64 additions and 79 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,59 +4,50 @@ Batch picking

.. _inventory/misc/batch_picking:

*Batch picking* enables a single picker to handle multiple orders at once, reducing the time needed
to navigate to the same location in a warehouse.

When picking in batches, orders are grouped and consolidated into a picking list. After the picking,
the batch is taken to an output location, where the products are sorted into their respective
delivery packages.

.. seealso::
:ref:`Use Barcode app for pickings <inventory/warehouses_storage/barcode_picking>`
*Batch picking* enables a single picker to handle multiple orders at once, reducing the number of
times needed to navigate to a warehouse location. When picking in batches, orders are grouped and
consolidated into a picking list. After the picking, the batch is taken to an output location, where
the products are sorted into their respective delivery packages.

Since orders *must* be sorted at the output location after being picked, this picking method suits
businesses with a few products that are ordered often. Storing high-demand items in easily
accessible locations can increase the number of orders that are fulfilled efficiently.

Batch picking is ideal for industries or warehouses that handle high order volumes with a stable
demand. This method increases efficiency by allowing workers to pick items for multiple orders in
one trip through the warehouse, reducing travel time and boosting productivity.

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

To activate the batch picking option, begin by going to :menuselection:`Inventory app -->
Configuration --> Settings`. Under the :guilabel:`Operations` section, check the :guilabel:`Batch
Transfers` box.
Configuration --> Settings`. Under the :guilabel:`Operations` section, check the :guilabel:`Batch,
Wave & Cluster Transfers` box.

.. image:: batch/batch-transfer-checkbox.png
:align: center
:alt: Enable the *Batch Transfers* in Inventory > Configuration > Settings.

Since batch picking is a method to optimize the *pick* operation in Odoo, the :guilabel:`Storage
Locations` and :guilabel:`Multi-Step Routes` options under the :guilabel:`Warehouse` heading must
also be checked on this settings page. When finished, click :guilabel:`Save`.

.. image:: batch/locations-routes-checkbox.png
:align: center
:alt: Enable *Storage Locations* and *Multi-Step Routes* Inventory > Configuration > Settings.

Lastly, enable the warehouse picking feature, by navigating to the warehouse settings page, which is
accessible from :menuselection:`Inventory app --> Configuration --> Warehouses`.

From here, select the desired warehouse from the list. Then, from the radio options available for
:guilabel:`Outgoing Shipments`, select either the :guilabel:`Send goods in output and then deliver
(2 steps)` or :guilabel:`Pack goods, send goods in output and then deliver (3 steps)`.

.. seealso::
- :doc:`Delivery in two steps <../daily_operations/receipts_delivery_two_steps>`
- :doc:`../daily_operations/delivery_three_steps`

.. image:: batch/set-2-or-3-step-shipment.png
:align: center
:alt: Set up 2-step or 3-step outgoing shipments.

Create batch transfers
======================

Manually create batch transfers directly from the :menuselection:`Inventory app --> Operations -->
Batch Transfers` page. Click the :guilabel:`New` button to begin creating a batch transfer.
To manually group transfers directly from the :menuselection:`Inventory app`, hover over the
desired operation type from the Inventory Overview menu (e.g. the :guilabel:`Receipts` Kanban card),
click the :icon:`fa-ellipsis-v` :guilabel:`(vertical ellipsis)` icon, then select :guilabel:`Prepare
Batch`.

.. image:: batch/prepare-batch.png
:alt: The Inventory dashboard with the Prepare Batch option highlighted.

On the batch transfer form, fill the following fields out accordingly:

Expand All @@ -67,6 +58,11 @@ On the batch transfer form, fill the following fields out accordingly:
- :guilabel:`Scheduled Date`: specifies the date by which the :guilabel:`Responsible` person should
complete the transfer to the output location.

.. seealso::
To learn more about the :guilabel:`Dock Location`, :guilabel:`Vehicle`, and :guilabel:`Vehicle
Category` fields, see :doc:`dispatch management system
<../../shipping_receiving/setup_configuration/dispatch>`.

Next, in the :guilabel:`Transfers` list, click :guilabel:`Add a line` to open the :guilabel:`Add:
Transfers` window.

Expand All @@ -78,11 +74,10 @@ Click the :guilabel:`New` button to create a new transfer.
Once the transfer records are selected, click :guilabel:`Confirm` to confirm the batch picking.

.. example::
A new batch transfer assigned to the :guilabel:`Responsible`, `Joel Willis`, for the `Pick`
A new batch transfer is assigned to the :guilabel:`Responsible`, `Joel Willis`, for the `Pick`
:guilabel:`Operation Type`. The :guilabel:`Scheduled Date` is set to `August 11`.

.. image:: batch/batch-transfer-form.png
:align: center
:alt: View of *Batch Transfers* form.

Clicking the :guilabel:`Add a line` button opens the :guilabel:`Add:Transfers` window,
Expand All @@ -94,7 +89,6 @@ Once the transfer records are selected, click :guilabel:`Confirm` to confirm the
:guilabel:`Add:Transfers` window.

.. image:: batch/add-transfers-window.png
:align: center
:alt: Select multiple transfers from the *Add:Transfers* window.

.. _inventory/warehouses_storage/add-batch-transfers:
Expand All @@ -107,16 +101,14 @@ a list. Navigate to the :menuselection:`Inventory app --> Operations` drop-down
of the :guilabel:`Transfers` to open a filtered list of transfers.

.. image:: batch/transfers-drop-down.png
:align: center
:alt: Show all transfer types in a drop-down menu: Receipts, Deliveries, Internal Transfers,
Manufacturings, Batch Transfers, Dropships.

On the transfers list, select the checkbox to the left of the selected transfers to add in a batch.
Next, navigate to the :guilabel:`Actions ⚙️ (gear)` button, and click :guilabel:`Add to batch` from
the resulting drop-down menu.
Next, navigate to the :icon:`fa-cog` :guilabel:`Actions` button, and click :guilabel:`Add to batch`
from the resulting drop-down menu.

.. image:: batch/add-to-batch.png
:align: center
:alt: Use *Add to batch* button, from the *Action* button's list.

Doing so opens an :guilabel:`Add to batch` pop-up window, wherein the employee
Expand All @@ -125,14 +117,45 @@ Doing so opens an :guilabel:`Add to batch` pop-up window, wherein the employee
Choose from the two radio options to add to :guilabel:`an existing batch transfer` or create
:guilabel:`a new batch transfer`.

To begin with a draft, select the :guilabel:`Draft` checkbox.
Add a :guilabel:`Description` for this batch.

.. tip::
The :guilabel:`Description` field can be used to add additional information to help workers
identify the source of the batch, where to place the batch, what shipping containers to use, etc.

To create a batch to be processed at a later time, select the :guilabel:`Draft` checkbox.

Conclude the process by clicking :guilabel:`Confirm`.

.. image:: batch/add-to-batch-window.png
:align: center
:alt: Show *Add to batch* window to create a batch transfer.

Automatic batches
-----------------

Batches can be automatically created and assigned based on several criteria. The *Automatic Batches*
option is defined on the *operation type* level.

.. example::
In a multi-steps delivery process, the picking operation can be grouped by customer, while the
shipping operation can be organized by carrier and destination country.

To enable *Automatic Batches*, navigate to :menuselection:`Inventory app --> Configuration -->
Operation Types`, and select the desired operation type (e.g. Delivery, Pick, etc). Then, select one
or more :guilabel:`Batch Grouping` criteria by ticking the appropriate checkbox. Even if more than
one grouping option is selected, only one batch is created.

Batches can be automatically generated based on the following criteria:

- :guilabel:`Contact`
- :guilabel:`Carrier`
- :guilabel:`Destination Country`
- :guilabel:`Source Location`
- :guilabel:`Destination Location`

.. image:: batch/auto-batch-grouping.png
:alt: The Batch and Wave Transfers settings page with the Auto batch grouping criteria visible.

Process batch transfer
======================

Expand All @@ -157,7 +180,6 @@ Finally, select :guilabel:`Validate` to complete the picking.
However, `0.00` quantities have been picked for the other product, `Cable Management Box`.

.. image:: batch/process-batch-transfer.png
:align: center
:alt: Show batch transfer of products from two pickings in the *Detailed Operations* tab.

Only in-stock products are visible in the :guilabel:`Detailed Operations` tab.
Expand All @@ -170,12 +192,11 @@ the products that have been picked, and are ready for the next step.
.. example::
The product, `Desk Pad`, from the same batch as the :ref:`example above
<inventory/management/batch-transfers-example>`, is only visible in the :guilabel:`Operations`
tab because there are no :guilabel:`Reserved` quantities in-stock to fulfill the batch picking.
tab because there are no :guilabel:`Reserved` quantities in stock to fulfill the batch transfer.

Click the :guilabel:`Check Availability` button to search the stock again for available products.

.. image:: batch/operations-tab.png
:align: center
:alt: Show unavailable reserved quantities in the *Operations* tab.

Create backorder
Expand All @@ -186,53 +207,17 @@ On the batch transfer form, if the :guilabel:`Done` quantity of the product is *

This pop-up window provides the option: :guilabel:`Create Backorder?`.

Clicking the :guilabel:`Create Backorder` button automatically creates a new batch transfer,
containing the remaining products.
Clicking the :guilabel:`Create Backorder` button automatically creates a new batch transfer.

.. note::
When creating a new backorder, the transfers that have **not** been validated in the batch will
be removed from it.

Click :guilabel:`No Backorder` to finish the picking *without* creating another batch picking.

Click :guilabel:`Discard` to cancel the validation, and return to the batch transfer form.

.. image:: batch/create-backorder.png
:align: center
:alt: Show the *Create Backorder* pop-up.

.. _inventory/warehouses_storage/barcode_picking:

Process batch transfer: Barcode app
===================================

Created batch transfers are also listed in the :menuselection:`Barcode` app, accessible by selecting
the :guilabel:`Batch Transfers` button.

By default, confirmed batch pickings appear on the :guilabel:`Batch Transfers` page. On that page,
click on the desired batch transfer to open the detailed list of products for the picking.

.. image:: batch/barcode-batch-transfers.png
:align: center
:alt: Show list of to-do batch transfers in *Barcode* app.

For the chosen batch transfer, follow the instructions at the top of the page in the black
background. Begin by scanning the product's barcode to record a single product for picking. To
record multiple quantities, click the :guilabel:`✏️ (pencil)` icon, and enter the required
quantities for the picking.

.. note::
Products from the same order are labeled with the same color on the left. Completed pickings are
highlighted in green.

.. example::
In a batch transfer for 2 `Cabinet with Doors`, 3 `Acoustic Bloc Screens`, and 4 `Four Person
Desks`, the `3/3` and `4/4` :guilabel:`Units` indicate that the last two product pickings are
complete.

`1/2` units of the `Cabinet with Doors` has already been picked, and after scanning the product
barcode for the second cabinet, Odoo prompts the user to `Scan a serial number` to record the
unique serial number for :ref:`product tracking <inventory/product_management/enable-lots>`.

.. image:: batch/barcode-products.png
:align: center
:alt: Display products to be picked in barcode view.

Once all the products have been picked, click on :guilabel:`Validate` to mark the batch transfer as
:guilabel:`Done`.
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.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
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 52a437a

Please sign in to comment.