mirror of
https://github.com/bringout/oca-workflow-process.git
synced 2026-04-26 03:12:03 +02:00
40 lines
1.5 KiB
ReStructuredText
40 lines
1.5 KiB
ReStructuredText
This module adds rules for advanced reservation / removal strategies.
|
|
|
|
Rules are applied on a location and its sub-locations.
|
|
|
|
A rule can exclude quants or locations based on configurable criteria,
|
|
and based on the selected quants, apply advanced removal strategies.
|
|
|
|
The rules have a sequence, which will be respected for the reservation.
|
|
So even without filter or advanced removal strategies, we can give a priority to
|
|
reserve in a location before another.
|
|
|
|
The advanced removal strategies are applied on top of the default one (fifo,
|
|
fefo, ...).
|
|
|
|
The included advanced removal strategies are:
|
|
|
|
* Default Removal Strategy: apply the default configured one (fifo, fefo, ...)
|
|
* Empty Bins: goods are removed from a bin only if the bin will be empty after
|
|
the removal (favor largest bins first to minimize the number of operations,
|
|
then apply the default removal strategy for equal quantities).
|
|
* Full Packaging: tries to remove full packaging (configured on the products)
|
|
first, by largest to smallest package or based on a pre-selected package
|
|
(default removal strategy is then applied for equal quantities).
|
|
|
|
Examples of scenario:
|
|
|
|
rules:
|
|
|
|
* location A: no filter, no advanced removal strategy
|
|
* location B: no filter, Empty Bins
|
|
* location C: no filter, no advanced removal strategy
|
|
|
|
result:
|
|
|
|
* take what is available in location A
|
|
* then take in location B if available, only if bin(s) are emptied
|
|
* then take what is available in location C
|
|
|
|
The module is meant to be extensible, with a core mechanism on which new rules
|
|
and advanced removal strategies can be added.
|