OdooWiki OCA HUB

Stock Picking Group By Base

stock_picking_group_by_base folder_open OCA/stock-logistics-workflow open_in_new
Uncategorised License: AGPL-3

Technical module in order to add a database index for picking grouping modules.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Technical module that creates a database index on stock transfers to speed up grouping of open, unprinted pickings. It adds no visible screens or menus.

This is a technical module with no user interface. It does not add menus, buttons, reports or settings. Its only purpose is to make Odoo faster when other modules group stock transfers (pickings) by common fields.

When the module is installed, Odoo creates a database index named stock_picking_groupby_key_index on the stock.picking table. The index covers the fields partner_id, location_id, location_dest_id and picking_type_id, and only applies to records that are not yet printed and whose status is draft, confirmed, waiting, partially available or assigned. In other words, it targets the pickings that are still in progress and not yet printed.

The index is created automatically when the module is installed or updated. If the database is locked at that moment, the creation is skipped and a warning is written to the log instead of blocking the installation. When the module is uninstalled, the index is removed automatically.

Other modules can extend the list of fields used by the index or change the condition that selects which pickings are indexed, so this module acts as a shared base for grouping features. It only touches the stock.picking model and does not change any business rule, computation or workflow.

Depends on

stock
Models and fields (1)
  • stock.picking · extends an existing model

Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 3 confirmed, 6 with no information of 9 versions.

Sources · Odoo 17.0

Confirmed on 2026-11-03 in branch 17.0 of OCA/stock-logistics-workflow.

terminal Installation and usage

OCA documentation · Odoo 18.0

Further modules need to implement this on stock.picking model:

def init(self):
      """
      This has to be called in every overriding module
      """
      self._create_index_for_grouping()


@api.model
def _get_index_for_grouping_fields(self):
      """
      This tuple is intended to be overriden in order to add fields
      used in groupings
      """
      return [
          "partner_id",
          "location_id",
          "location_dest_id",
          "picking_type_id",
      ]

No verified information in OCA: Installation, Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.