Skip to content

Latest commit

 

History

History

stock_picking_batch_creation

Stock Picking Batch Creation

Beta License: AGPL-3 OCA/wms Translate me on Weblate Try me on Runboat

Odoo allows you to create batches of pickings by hand or automatically by specifying some criteria on the picking type definition.

The approach in this addon is slightly different. It doesn't depend on the picking type and is triggered on demand by the user with the use of a specialized wizard.

The creation of the batch is based on the following criteria:

  • A list of picking types to consider
  • A list of stock device types available to the operator to process the batch.
  • A maximum number of lines in the batch

Stock device types

A stock device type is a new concept that allows to define a type of device that can be used by an operator to process operations into the warehouse (like a forklift, a compartmentalized trolleys, ...).

Depending on the device type, the resources available to complete the job will be different. A this stage, 3 main criteria are considered:

  • The maximum weight that can be handled by the device
  • The maximum volume that can be handled by the device
  • The number of bins/compartments available on the device

In addition to these criteria, 2 others criteria can be defined that will be evaluated to select the appropriate device type a the start of the batch creation process if more than one device type is available:

  • A minimum picking volume to consider the device type,
  • A sequence to define the order in which the device type will be considered.

Table of contents

First of all, you need to create your stock device type. To do so, go to the Inventory -> Configuration -> Stock Device Types menu.

Once it's done, you can start creating your picking batches.

To launch the device, go to the Inventory -> Operations -> Make Picking Batch menu.

The Make Picking Batch window will open and allows you to specify your criteria for the batch creation. When all your criteria are set, click on the Create Batch Picking and lets the magic happen. A new window will open with the created batch picking.

The creation of the picking batch is done in 3 steps:

  1. We search for a picking ready to be processed and that fits the criteria specified in the wizard.
  2. We determine the device to use for this first picking.
  3. While the defined limits are not reached, we look for one picking at a time that is ready to be processed and that fits the new criteria. The new criteria are computed at each loop iteration to take into account the pickings already into the batch.

When we look for a picking ready to be processed, we look for a picking that is in state "Assigned" or "Partially Available" with a picking type into the list of picking types defined in the wizard and not yet in a batch.

At step 1, we add to theses conditions on the pickings, a list of alternatives conditions to restrict the search to pickings that can be handled by the device types defined in the wizard. (A first search is done to try to find a picking for the given user and which is printed and if not found, we search for pickings not linked to a user and which are not printed).

At step2, since the first step will return a picking that can be handled by any of the device types specified, we process the list of device one by one in the order defined by the sequence field and we stop at the first device that can handle the picking.

At step 3, now that we have a picking and a device, we have all the information to refine the search for the next picking to the volume, weight and number of lines remaining in the batch. While there are still some bins available and in the batch and the search returns result, we look for a picking that fits the updated criteria and update the criteria at each loop iteration.

You can choice on the wizard to apply a LOCK into the database for each picking added to the batch. This is useful in a multi-user environment with a lot of users that can trigger the creation of bach picking to avoid problems of concurrency. If activated, picking already selected by a concurrent process will be skipped.

If you want to allow to group pickings of the same partner into the same bins, you can activate the option Group by partner on the wizard. This will prevent to consume at least one bin for each picking if pickings are for the same partner. When activated, the computation of the number of bins consumed by the picking into the batch will take into account the volume of the pickings for the same partners already.

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

  • ACSONE SA/NV

The development of this module has been financially supported by:

  • ACSONE SA/NV
  • Alcyon Benelux

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainer:

lmignon

This module is part of the OCA/wms project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.