Skip to main content

Reserve a transfer's moves all-or-nothing instead of partially.

Project description

Odoo Community Association

Stock Picking Reservation Policy

Beta License: AGPL-3 OCA/stock-logistics-workflow Translate me on Weblate Try me on Runboat

By default, Odoo reserves whatever quantity is available for a transfer’s lines (stock moves), leaving the rest as partially available.

This module adds a Reservation Policy that controls this behavior, on the operation type and on the transfer itself:

  • Partial: reserve whatever quantity is available (standard behavior).

  • All or nothing per line: each transfer line (stock move) is reserved only if its full quantity can be reserved from stock; otherwise that line stays entirely unreserved.

The all-or-nothing rule is applied per line (stock.move), independently for each line of the transfer — not on the transfer as a whole. One line may be fully reserved while another, short on stock, stays unreserved.

The transfer defaults its policy from the operation type, and the value can be adjusted on the transfer.

It is similar in spirit to the Shipping Policy (move_type), but it applies at reservation time on each line, rather than at delivery time. It only affects reservation from stock: lines fed by chained (origin) moves keep their standard behavior.

Table of contents

Usage

To set the default reservation policy of an operation type:

  1. Go to Inventory > Configuration > Operations Types.

  2. Open an operation type and set its Reservation Policy (Partial or All or nothing per line).

On a transfer, the Reservation Policy defaults from the operation type and can be adjusted manually before reservation.

When checking availability:

  • Partial: each line reserves whatever quantity is available.

  • All or nothing per line: each transfer line (stock move) is reserved only if its full quantity is available from stock; otherwise that line stays unreserved, leaving its stock available to the other lines. The rule is applied independently on each line, not on the transfer as a whole.

Known issues / Roadmap

A third reservation policy, All or nothing per transfer (all), is planned.

Where All or nothing per line applies the all-or-nothing rule independently to each line (stock move), All or nothing per transfer would apply it to the whole transfer at once: the transfer is reserved only if every one of its stock-sourced lines can be fully reserved; if any line falls short, none of the transfer’s lines are reserved.

This is not implemented yet.

Bug Tracker

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.

Credits

Authors

  • Camptocamp

Contributors

Maintainers

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:

ivantodorovich

This module is part of the OCA/stock-logistics-workflow project on GitHub.

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file odoo_addon_stock_picking_reservation_policy-19.0.1.0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for odoo_addon_stock_picking_reservation_policy-19.0.1.0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 09dc9b5c3b08f1b4e390e441b67c609c8f7ba4aee405d2a2ded85c2b88d61c7d
MD5 cccb916b81e06c91c2c95a03e657893f
BLAKE2b-256 b2a67e8d6323066e6e751b272155a786a0c0d2ddc4aabefeea65088d922a6a0a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page