[IMP] Inventory: Batch Picking 18
closes odoo/documentation#11748 Signed-off-by: Jessica Rogers (jero) <jero@odoo.com> Co-authored-by: Liz Bender <92882399+benderliz@users.noreply.github.com> Co-authored-by: Felicia Kuan <feku@odoo.com> Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
@ -4,29 +4,27 @@ Batch picking
|
|||||||
|
|
||||||
.. _inventory/misc/batch_picking:
|
.. _inventory/misc/batch_picking:
|
||||||
|
|
||||||
*Batch picking* enables a single picker to handle multiple orders at once, reducing the time needed
|
*Batch picking* enables a single picker to handle multiple orders at once, reducing the number of
|
||||||
to navigate to the same location in a warehouse.
|
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
|
||||||
When picking in batches, orders are grouped and consolidated into a picking list. After the picking,
|
the products are sorted into their respective delivery packages.
|
||||||
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>`
|
|
||||||
|
|
||||||
Since orders *must* be sorted at the output location after being picked, this picking method suits
|
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
|
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.
|
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
|
Configuration
|
||||||
=============
|
=============
|
||||||
|
|
||||||
To activate the batch picking option, begin by going to :menuselection:`Inventory app -->
|
To activate the batch picking option, begin by going to :menuselection:`Inventory app -->
|
||||||
Configuration --> Settings`. Under the :guilabel:`Operations` section, check the :guilabel:`Batch
|
Configuration --> Settings`. Under the :guilabel:`Operations` section, check the :guilabel:`Batch,
|
||||||
Transfers` box.
|
Wave & Cluster Transfers` box.
|
||||||
|
|
||||||
.. image:: batch/batch-transfer-checkbox.png
|
.. image:: batch/batch-transfer-checkbox.png
|
||||||
:align: center
|
|
||||||
:alt: Enable the *Batch Transfers* in Inventory > Configuration > Settings.
|
: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
|
Since batch picking is a method to optimize the *pick* operation in Odoo, the :guilabel:`Storage
|
||||||
@ -34,29 +32,22 @@ Locations` and :guilabel:`Multi-Step Routes` options under the :guilabel:`Wareho
|
|||||||
also be checked on this settings page. When finished, click :guilabel:`Save`.
|
also be checked on this settings page. When finished, click :guilabel:`Save`.
|
||||||
|
|
||||||
.. image:: batch/locations-routes-checkbox.png
|
.. image:: batch/locations-routes-checkbox.png
|
||||||
:align: center
|
|
||||||
:alt: Enable *Storage Locations* and *Multi-Step Routes* Inventory > Configuration > Settings.
|
: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::
|
.. seealso::
|
||||||
- :doc:`Delivery in two steps <../daily_operations/receipts_delivery_two_steps>`
|
- :doc:`Delivery in two steps <../daily_operations/receipts_delivery_two_steps>`
|
||||||
- :doc:`../daily_operations/delivery_three_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
|
Create batch transfers
|
||||||
======================
|
======================
|
||||||
|
|
||||||
Manually create batch transfers directly from the :menuselection:`Inventory app --> Operations -->
|
To manually group transfers directly from the :menuselection:`Inventory app`, hover over the
|
||||||
Batch Transfers` page. Click the :guilabel:`New` button to begin creating a batch transfer.
|
desired operation type from the :guilabel:`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:
|
On the batch transfer form, fill the following fields out accordingly:
|
||||||
|
|
||||||
@ -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
|
- :guilabel:`Scheduled Date`: specifies the date by which the :guilabel:`Responsible` person should
|
||||||
complete the transfer to the output location.
|
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:
|
Next, in the :guilabel:`Transfers` list, click :guilabel:`Add a line` to open the :guilabel:`Add:
|
||||||
Transfers` window.
|
Transfers` window.
|
||||||
|
|
||||||
@ -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.
|
Once the transfer records are selected, click :guilabel:`Confirm` to confirm the batch picking.
|
||||||
|
|
||||||
.. example::
|
.. 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`.
|
:guilabel:`Operation Type`. The :guilabel:`Scheduled Date` is set to `August 11`.
|
||||||
|
|
||||||
.. image:: batch/batch-transfer-form.png
|
.. image:: batch/batch-transfer-form.png
|
||||||
:align: center
|
|
||||||
:alt: View of *Batch Transfers* form.
|
:alt: View of *Batch Transfers* form.
|
||||||
|
|
||||||
Clicking the :guilabel:`Add a line` button opens the :guilabel:`Add:Transfers` window,
|
Clicking the :guilabel:`Add a line` button opens the :guilabel:`Add:Transfers` window,
|
||||||
@ -94,7 +89,6 @@ Once the transfer records are selected, click :guilabel:`Confirm` to confirm the
|
|||||||
:guilabel:`Add:Transfers` window.
|
:guilabel:`Add:Transfers` window.
|
||||||
|
|
||||||
.. image:: batch/add-transfers-window.png
|
.. image:: batch/add-transfers-window.png
|
||||||
:align: center
|
|
||||||
:alt: Select multiple transfers from the *Add:Transfers* window.
|
:alt: Select multiple transfers from the *Add:Transfers* window.
|
||||||
|
|
||||||
.. _inventory/warehouses_storage/add-batch-transfers:
|
.. _inventory/warehouses_storage/add-batch-transfers:
|
||||||
@ -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.
|
of the :guilabel:`Transfers` to open a filtered list of transfers.
|
||||||
|
|
||||||
.. image:: batch/transfers-drop-down.png
|
.. image:: batch/transfers-drop-down.png
|
||||||
:align: center
|
|
||||||
:alt: Show all transfer types in a drop-down menu: Receipts, Deliveries, Internal Transfers,
|
:alt: Show all transfer types in a drop-down menu: Receipts, Deliveries, Internal Transfers,
|
||||||
Manufacturings, Batch Transfers, Dropships.
|
Manufacturings, Batch Transfers, Dropships.
|
||||||
|
|
||||||
On the transfers list, select the checkbox to the left of the selected transfers to add in a batch.
|
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
|
Next, navigate to the :icon:`fa-cog` :guilabel:`Actions` button, and click :guilabel:`Add to batch`
|
||||||
the resulting drop-down menu.
|
from the resulting drop-down menu.
|
||||||
|
|
||||||
.. image:: batch/add-to-batch.png
|
.. image:: batch/add-to-batch.png
|
||||||
:align: center
|
|
||||||
:alt: Use *Add to batch* button, from the *Action* button's list.
|
: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
|
Doing so opens an :guilabel:`Add to batch` pop-up window, wherein the employee
|
||||||
@ -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
|
Choose from the two radio options to add to :guilabel:`an existing batch transfer` or create
|
||||||
:guilabel:`a new batch transfer`.
|
: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`.
|
Conclude the process by clicking :guilabel:`Confirm`.
|
||||||
|
|
||||||
.. image:: batch/add-to-batch-window.png
|
.. image:: batch/add-to-batch-window.png
|
||||||
:align: center
|
|
||||||
:alt: Show *Add to batch* window to create a batch transfer.
|
: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. :guilabel:`Delivery`,
|
||||||
|
:guilabel:`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
|
Process batch transfer
|
||||||
======================
|
======================
|
||||||
|
|
||||||
@ -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`.
|
However, `0.00` quantities have been picked for the other product, `Cable Management Box`.
|
||||||
|
|
||||||
.. image:: batch/process-batch-transfer.png
|
.. image:: batch/process-batch-transfer.png
|
||||||
:align: center
|
|
||||||
:alt: Show batch transfer of products from two pickings in the *Detailed Operations* tab.
|
: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.
|
Only in-stock products are visible in the :guilabel:`Detailed Operations` tab.
|
||||||
@ -170,12 +192,11 @@ the products that have been picked, and are ready for the next step.
|
|||||||
.. example::
|
.. example::
|
||||||
The product, `Desk Pad`, from the same batch as the :ref:`example above
|
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`
|
<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.
|
Click the :guilabel:`Check Availability` button to search the stock again for available products.
|
||||||
|
|
||||||
.. image:: batch/operations-tab.png
|
.. image:: batch/operations-tab.png
|
||||||
:align: center
|
|
||||||
:alt: Show unavailable reserved quantities in the *Operations* tab.
|
:alt: Show unavailable reserved quantities in the *Operations* tab.
|
||||||
|
|
||||||
Create backorder
|
Create backorder
|
||||||
@ -186,53 +207,15 @@ On the batch transfer form, if the :guilabel:`Done` quantity of the product is *
|
|||||||
|
|
||||||
This pop-up window provides the option: :guilabel:`Create Backorder?`.
|
This pop-up window provides the option: :guilabel:`Create Backorder?`.
|
||||||
|
|
||||||
Clicking the :guilabel:`Create Backorder` button automatically creates a new batch transfer,
|
Clicking the :guilabel:`Create Backorder` button automatically creates a new batch transfer.
|
||||||
containing the remaining products.
|
|
||||||
|
.. 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:`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.
|
Click :guilabel:`Discard` to cancel the validation, and return to the batch transfer form.
|
||||||
|
|
||||||
.. image:: batch/create-backorder.png
|
.. image:: batch/create-backorder.png
|
||||||
:align: center
|
|
||||||
:alt: Show the *Create Backorder* pop-up.
|
: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`.
|
|
||||||
|
Before Width: | Height: | Size: 7.7 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 6.4 KiB |
After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 11 KiB |
@ -40,7 +40,6 @@ A *delivery slip* contains recipient and package details, usually placed inside
|
|||||||
package.
|
package.
|
||||||
|
|
||||||
.. seealso::
|
.. seealso::
|
||||||
- :ref:`Picking list <inventory/warehouses_storage/barcode_picking>`
|
|
||||||
- :doc:`Tracking label <../setup_configuration/labels>`
|
- :doc:`Tracking label <../setup_configuration/labels>`
|
||||||
|
|
||||||
After :ref:`enabling the Delivery Slip setting <inventory/shipping_receiving/print_setup>` in the
|
After :ref:`enabling the Delivery Slip setting <inventory/shipping_receiving/print_setup>` in the
|
||||||
|