Files
arthur 9ce6ae37be lint(standard): corrections completes mode standard
- Em dashes: 1712 remplaces par tirets simples (86 fichiers + _index.md,
  en-tete section Limagrain conserve)
- Checklists: 24 '- [ ]' -> '- ☐' (3 pages operations, plus de todos Obsidian)
- Ancres: 33 reparees (slugs GitHub + ancres HTML <a id> reconnues),
  1 reciblee (manuel de reten)
- related: tenseflow -> tense-flow, pie -> mechanical-elements,
  group.md retire (doublon shipping)
- Registre: compteur global 122 -> 131 pages
- Rapport racine _lint_report.md mis a jour (scan v2 + re-scan final: 0 anomalie)
- Aucun fichier limagrain/ modifie (cloisonnement)
2026-07-20 13:01:21 +02:00

24 KiB
Raw Permalink Blame History

title, type, sources, related, last_compiled
title type sources related last_compiled
Replenishment concept
areas/replenishments/replenishment_admin/replenishment_strategies.md
areas/replenishments/replenishment_admin/picking_locations.md
areas/replenishments/replenishment_admin/efficiency_mode.md
areas/replenishments/replenishment_admin/dynamic.md
areas/replenishments/replenishment_admin/automatic_replenish.md
areas/replenishments/replenishment_admin/conditions.md
areas/replenishments/replenishment_pk/index.md
areas/putaway/configurations/putaway_configuration01.md
custom/analyse_fonctionnelle.md
sources/archives/05_Gestion_picking_dedie.md
sources/archives/20_Strategies_reapprovisionnement.md
sources/archives/30_Reapprovisionnement_2_sous_entrepots_zone_intermediaire.md
concepts/picking.md
concepts/putaway.md
concepts/stock.md
concepts/container.md
2026-04-17

Replenishment

Overview

Replenishment is the process of moving stock from bulk storage locations to picking dedicated locations (PDL) to ensure that operators always have stock available to fulfill shipping orders without going to the main rack. It is a supporting process that feeds the picking operation - without replenishment, picking dedicated locations would run dry and order preparation would stall.

A picking dedicated location (PDL) is a location permanently or dynamically assigned to one item (sometimes one item per partition). PDLs are configured with a minimum (replenishment threshold) and maximum (capacity). When stock in the PDL drops below the minimum, the replenishment system detects the shortage and generates a replenishment task to refill from a source location.

Replenishment in EasyWMS operates at two levels:

  1. PDL replenishment - refilling picking dedicated locations from bulk storage
  2. Sub-warehouse replenishment - moving stock from one sub-warehouse to another to balance inventory

Picking Dedicated Locations (PDL)

PDL Concept

A PDL is a location with an item assignment that designates it as the primary picking source for that item. Key properties:

Property Description
Location Must have: allow item assignment, allow picking, allow replenish, allow putaway
Item One item recommended per PDL (multiple items allowed but not typical)
Owner Owner of the item
Replenishment mode Container (move whole container) or Stock (move loose stock) - cannot mix both
Conversion Unit of measure in which replenishment level and capacity are expressed
Logistic attributes Specific batch, color, quality, etc. - PDL will be replenished with matching stock only
Maximum lots Limit how many different lots can be present in the PDL simultaneously
Expired stock flag PDL can be configured to receive only expired stock
Days of life Replenish with stock whose shelf life ≥ (detection date + days of life)
Stock status Restrict to stock in a specific status

For stock-mode PDLs - threshold types:

Threshold type Description Notes
Pieces (quantity) Replenish when stock drops below N units (in conversion UoM or base UoM) Simplest mode; no container-count knowledge required
Container count Replenish when number of containers in the PDL drops below N Requires the PDL to track container presence
% of full container Replenish when stock falls below X% of a full container's standard quantity Requires conversion definition (UoM × container conversion = full quantity); allows absorbing incoming container excess
  • Capacity: maximum stock quantity allowed at the PDL

For container-mode PDLs:

  • Minimum containers: replenish when container count drops below this
  • Maximum containers: capacity ceiling
  • Replenishment level % (if max = 1): percentage of full-container quantity below which replenishment is triggered; allows exceeding the full quantity to absorb the incoming container's excess stock

PDL - EasyS / SmartUI Configuration

EasyS - Location setup, check :

  • Allow product location
  • Allow replenish at source
  • Allow picking

SmartUI - Entrepôt → Emplacements consacrés au picking :

  • Enter the replenishment level (minimum threshold)
  • Enter the maximum capacity
  • Check Étiquetté (mandatory)
  • Enter a Texte personnalisé (custom label)
  • Print the PDL barcodes

💡 Labels display as Code emplacement [Label] (e.g. B-1-4 [Clavier M]). With many PDLs this is hard to scan through - Mecalux France standard is to prefix labels with an ordered code (e.g. B-1-4 [01 Clavier M], B-1-4 [02 Clavier L]...) so the operator can sort them visually.

⚠️ Known limitations documented by Mecalux France (2022 tests) :

  • The destination is not displayed when the WMS generates putaway tasks towards a PDL.
  • Maximum capacity is not strictly enforced at putaway - cases of 26 units put away in a capacity-15 PDL have been observed. Rely on replenishment threshold + periodic count rather than max capacity as a hard limit.

Positive : minimum-threshold replenishment works correctly - a task is generated to top the PDL back up to its maximum once the minimum is crossed.

PDL Creation Methods

Method Trigger
Web interface Warehouse manager manually creates PDL assignments
RFT during putaway Operator assigns item to location while unloading (if UNLOAD_CREATE_PRODUCT_LOCATION enabled)
RFT during counting Item assigned during stock count (if UNLOAD_CREATE_PRODUCT_LOCATION and REPLENISH_LEVEL_PERCENT_PRODUCT_LOCATION enabled)
RFT - "Assign item to loc." Dedicated menu option in Utilities
Automatically (dynamic replenishment) System creates PDL on-the-fly for items in active shipping orders

PDL Partitions

A single physical location can be subdivided into partitions - labeled divisions each assigned to a different item. This enables high-density picking areas (drawers, shelves divided by bins).

Key partition rules:

  • Each partition is identified by a unique QR label (code unique within the location)
  • A partition is NOT a separate location - stock belongs to the location; the partition identifies which item occupies which physical space
  • One partition can be shared across multiple items; one item can use multiple partitions
  • A partition can be marked full to prevent further putaway to that partition
  • Maximum partitions per item: configurable limit to prevent one item from monopolizing a location's partitions

Partition labels can be printed for a range of locations with optional text (item code, UoM, logistic attributes, or custom text).

PDL Release on Empty

When enabled, a PDL is released (item assignment removed) when the location becomes empty:

  • Automatic replenishment mode: PDL is only released if no valid replenishment stock remains in the entire warehouse
  • Manual replenishment mode: PDL is released immediately when empty (no automatic tasks to prevent it)

Use case: seasonal warehouses where item rotation is planned.

Replenishment Strategies

Replenishment tasks are generated based on enabled replenishment strategies. Four strategy types exist.

SmartUI / French terminology mapping

Mecalux France uses three shortcut names that map to the strategy types below:

FR label Type below Trigger Typical usage
"Routine" Stockout (automatic) TryToReplenishProductLocations job every 12 min Default - refill PDL when stock drops under the minimum
"Conclure" Particular demand (top-off) RFT menu Réapprovisionnement or SmartUI "Réapprovisionner maintenant" on the PDL view Operator-triggered, high-priority replenishment
"Exiger" Shipping demand (dynamic) Order released with dynamic replenishment, or static flag <EnableReplenishment> on ROR Create PDLs on the fly for items in released orders; also tops up when stock ≥ min but < order need

EasyS location setup (common to all three):

  • Picking locations to replenish: Allow picking + Allow product location + Allow replenish
  • Reserve (source) locations: Allow replenish at source

SmartUI configuration checklist (routine, conclure, exiger):

  1. Entrepôt → Gestion des emplacements picking - create PDL assignments, set min threshold (per container: tick "Réapprovisionnement de conteneur", or in base UoM) and max capacity
  2. Activate automatic replenishment on the PDL (for routine)
  3. Configuration → Stratégie de réapprovisionnement - create the strategy; pick filters (item, owner, item type, sub-warehouse, destination zone) and a Mode efficacité (see table below)
  4. Activate the strategy (to edit it later, deactivate first)
  5. Configuration → Processus - ensure TryToReplenishProductLocations is enabled and runs on a 12 min cycle
  6. Confirm source stock is eligible (no blocking status, no location lock, not already assigned to shipping)

Efficiency mode - SmartUI values

FR field Behaviour
Efficacité Minimise the number of tasks needed to reach capacity
Emplacement le plus proche Pick the available source closest to the PDL
À vider Pick the source that will empty the reserve location (limited value when replenishing by container)

1. Top-off (Particular Demand)

Trigger: Manual request from RFT or web interface for specific location(s) or aisles.

Used when an operator notices a PDL is running low and requests immediate replenishment before the stockout strategy would have fired, or for ad-hoc needs.

Configuration Description
Efficiency mode Efficiency / To empty / Nearest location
Logic Before efficiency / After efficiency
Particularized for Filter by item, owner, item type, destination sub-warehouse, destination zone
Stock selection Restrict origin to specific sub-warehouse or zone

2. Shipping Demand (Dynamic)

Trigger: Shipping order that has "dynamic replenishment" enabled, or manual/ERP request for specific orders. Also triggerable from RFT filtered by release date or load date.

System checks pending shipping orders to determine what items and quantities are needed. It then:

  1. Finds existing PDLs for the requested items and checks if they have enough stock
  2. If insufficient → creates replenishment tasks to fill existing PDLs
  3. If no PDL exists → searches for empty candidate locations with automatic item assignment mode + allow picking + allow replenish → creates dynamic PDLs with capacity = quantity needed for pending orders

Dynamic PDLs are adjusted in subsequent runs (capacity updated as orders are created or canceled). Fixed PDLs are never modified by dynamic replenishment.

Item configuration required: item shipping profile must have "dynamic replenishment" active.

ERP trigger: SOR message requests replenishment for specific shipping orders.

Configuration Description
Efficiency mode Efficiency / To empty / Nearest location
Logic Before efficiency / After efficiency
Particularized for Item, owner, item type, putaway profile, destination sub-warehouse/zone, use item temperature
Stock selection Restrict origin to specific sub-warehouse or zone

3. Stockout (Automatic)

Trigger: Automatic background job TryToReplenishProductLocations runs every minute.

When stock at a PDL drops below its replenishment level, the job generates replenishment tasks automatically without any manual intervention.

Configuration Description
Efficiency mode Efficiency / To empty / Nearest location
Logic Before efficiency / After efficiency
Particularized for Item, owner, item type, destination sub-warehouse/zone
Stock selection Restrict origin to specific sub-warehouse or zone

PDL must have "Enable replenishment" activated in the Picking Dedicated Locations view.

Parameter MAX_REPLENISHED_PL_ROUTINE_JOB: Maximum PDLs processed per job run (0 = unlimited). Controls processing complexity; default frequency of every minute ensures adequate throughput.

4. Sub-warehouse Replenishment

Trigger: Manual request (all items in need, or selected items).

Used when the warehouse has multiple sub-warehouses and stock must be moved between them to maintain minimum levels in each.

Strategies are sequenced to determine which sub-warehouses are replenished first.

Configuration Description
Destination sub-warehouse Target sub-warehouse for the stock
Destination station Destination station in target sub-warehouse
Efficiency mode To empty / Least movements (different modes than PDL replenishment)
Logic Before efficiency / After efficiency

Limitation: does not support cutting stock in non-consolidating UoM conversions.

4b. Priority Location Replenishment

A fifth strategy type refills priority locations - locations associated with a PDL from which the PDL is replenished. This allows a two-tier system: primary storage → priority location → PDL.

Efficiency Modes

Efficiency mode determines which source stock is selected for the replenishment task.

For PDL replenishment:

Mode Logic
Efficiency Select sources that have at least the quantity needed; among ties, apply outbound logic; tiebreak by quantity (highest to lowest)
To empty Select sources that will be completely emptied by the replenishment task; among ties, apply outbound logic; tiebreak by quantity (lowest to highest)
Nearest location Select sources closest to the PDL by physical distance; from those with enough stock

For sub-warehouse replenishment:

Mode Logic
To empty Same as above
Least movements Minimize number of picking tasks; select sources with the requested quantity or largest available; among ties, apply outbound logic; tiebreak by quantity (highest to lowest)

Logic position: "Before efficiency" applies outbound logic (FEFO, FIFO, LIFO) as the primary sort criterion; "After efficiency" applies it only to break ties after the efficiency criterion.

Stock Eligibility for Replenishment

Stock is valid for replenishment if:

  • Belongs to the same item (and optional owner, item type) as the PDL
  • Has a status that allows moving and replenishing
  • Not in a location with an active counting task
  • Not part of an in-process replenishment or picking task (unless certain conditions allow it)
  • Location and aisle allow replenishment at source; no extraction errors; no movement locks
  • Logistic attributes match PDL configuration (batch, dates, status)
  • If PDL is configured for a specific stock status, only stock in that status is eligible

Dynamic Replenishment Process Detail

Dynamic replenishment runs periodically (or on manual trigger) and follows this flow:

  1. Get shipping orders with dynamic replenishment enabled
  2. Identify items and quantities required across all such orders
  3. Check fixed PDLs for each item: is there enough stock?
  4. For items with insufficient PDL stock:
    • Check if there is valid replenishment source stock
    • If yes: generate replenishment tasks to fill fixed PDLs to capacity
  5. For items with no PDL at all (or fixed PDL at capacity):
    • Find empty candidate locations (allow item assignment, automatic assignment mode, allow picking, allow replenish)
    • Create a dynamic PDL with capacity = quantity needed for pending orders
    • Generate replenishment tasks for the dynamic PDL
  6. On next run: adjust dynamic PDL capacity if demand has changed

Dynamic Picking Emptying Tasks (Vidage)

Dynamic PDLs created by the shipping demand strategy are temporary - they exist only for the duration of the order they were created for. Once the order is shipped, the dynamic PDL may still contain leftover stock that should be returned to bulk storage.

Emptying tasks (vidage) are generated automatically on a schedule to clear unused dynamic picking locations:

  • The system identifies dynamic PDLs whose associated shipping orders are complete (shipped or cancelled)
  • A container relocation task (or stock relocation) is generated to move the remaining stock from the dynamic PDL back to a valid bulk storage location
  • The putaway engine determines the destination using the item's putaway strategy
  • Once emptied, the dynamic PDL assignment is removed and the location becomes available for reassignment

Configuration: the emptying job frequency is configurable per warehouse. It can be run at off-peak times (e.g., at night or between shifts) to avoid contention with active picking.

This mechanism prevents dynamic PDLs from accumulating as "orphan" locations with stranded stock.

Automatic Replenishment (Stockout) Process Detail

Background job TryToReplenishProductLocations (every minute):

  1. For each PDL with automatic replenishment enabled
  2. Check current stock quantity against replenishment level
  3. If below threshold:
    • Find valid source stock (applying efficiency mode and logic)
    • Generate replenishment task: move stock from source to PDL up to PDL capacity
  4. Respect MAX_REPLENISHED_PL_ROUTINE_JOB limit per run

Cutting Stock Replenishment

Cutting stock (rope, cable, chain) requires special handling:

  • Can only be picked from coil shelf locations (picking dedicated location for cutting loose stock)
  • For shipping demand strategy: replenishment tasks are only generated when: no pending tasks exist for the reel in the PDL AND there is still unassigned stock to fulfill orders
  • Exception: if a stockout strategy is also active AND stock is at/below replenishment level → generate replenishment regardless of task state
  • Not supported for sub-warehouse replenishment in non-consolidating UoM conversions

Replenishment from Putaway

When placing a container or stock into a location, the putaway engine checks if the destination location is a PDL for the item being placed:

  • Strategy 1 (sequence 1): place directly into the PDL if capacity allows
  • Strategy 2 (sequence 2): place in storage near the PDL (sort by "Distance to assigned location")
  • The system can automatically create a PDL at the putaway destination (parameter UNLOAD_CREATE_PRODUCT_LOCATION)

See Putaway for the full strategy pipeline.

Inter-sub-warehouse Replenishment via an Intermediate Buffer

When a single equipment cannot traverse from the reserve sub-warehouse to the picking sub-warehouse (safety rules, certification, aisle geometry), a Transit transport element acts as an intermediate drop point: one equipment drops the pallet on the buffer, another picks it up and finishes the replenishment.

Typical setup

  • Sub-warehouse A (WHST_ANCIEN_BAT) - PDLs to replenish
  • Sub-warehouse B (WHST_TOUR) - high reserves
  • Equipment CACES06 (only one certified for height) is forbidden in sub-warehouse A

Key configuration points

Element Requirement
Automation element Type "Transport" - mandatory even in 100% manual warehouses
Transport sub-location Type "Buffer" (⚠️ defaults to "Automatic" when created - change manually); sub-warehouse accessible from both equipment types
Equipment types PICKING (access work zones of picking + both sub-warehouses) and RESERVE (access reserve work zone + sub-WH B only)
Equipment groups Two groups, one per equipment type
Routes Transport → sub-WH A ; each group → Transport ; EqGroup PICKING → both sub-warehouses ; EqGroup RESERVE → sub-WH B only

⚠️ Routes are created by default with the "Galileo" transport - switch them to "RF" manually.

Flow

  1. Replenishment is triggered → a task is generated from the reserve to the PDL
  2. The reserve equipment (e.g. CACES06) picks up the support and drops it on the intermediate Buffer location
  3. The picking equipment (e.g. PIK01) picks up the task from Tâches → Tâches de réapprovisionnement and drops the stock on the destination PDL

Troubleshooting - "support n'existe pas" when scanning the buffer location: verify that the transit sub-location is of type "Buffer" (not "Automatic").

Upstream MSSCC documentation: replenishments/intermediate_stations.md and EasyS/configurations/IntermediateET/index.md.

Replenishment in Automatic Warehouses (PK)

In automatic warehouses, the picking conveyor (PK) generates demand that drives replenishment. When a container at the PK runs out of stock for a task:

  1. Operator signals "wait for replenishment" or the system detects PDL is empty
  2. EasyWMS checks if another container with the same item can be extracted from the automatic warehouse
  3. If yes: a task is generated to bring the replenishment container to the PK
  4. PK operations pause until replenishment arrives (configurable)

Common Errors

Replenishment task not generated for empty PDL: PDL has "automatic replenishment" not enabled, or no stockout strategy is enabled, or no valid source stock found. Enable replenishment on the PDL; check source location availability and status.

Dynamic PDL created with wrong capacity: Shipping order was created/canceled between job runs. Capacity is recalculated on next run and adjusted. No manual intervention needed if system is running correctly.

Replenishment task generated but not executed: Replenishment source has a lock, or the aisle is blocked, or no route exists between source and PDL. Resolve the lock/block; check route configuration.

PDL not proposed for picking despite having stock: Stock assignment strategy doesn't have "Prioritize picking dedicated locations" enabled, or the PDL's logistic attributes don't match the shipping order line. Check strategy priorities and PDL configuration.

Stock mixing conflict at PDL: During replenishment unload, system warns of logistic attribute conflict (e.g., different batches). System does NOT block the task (to avoid deadlock situations), but operator must decide whether to proceed. If mixing is not desired, configure PDL with specific logistic attributes.

PDL released unexpectedly: "Delete when empty" is enabled but warehouse still needs the item. Disable "Delete when empty" for year-round items; use it only for seasonal items.

Cutting stock replenishment not triggered: Pending tasks exist for the reel in the PDL location, which blocks demand-strategy replenishment. Wait for tasks to complete, or use a stockout strategy as well to override the task-pending check.

Interface Paths

Interface Path
Web - replenishment strategies "Configuration" → "Replenishment strategies"
Web - sub-WH replenishment strategies "Configuration" → "Replenishment strategies between sub-warehouses"
Web - picking dedicated locations "Warehouse" → "Picking dedicated locations"
Web - enable/disable automatic replenishment "Warehouse" → "Picking dedicated locations" → "Enable replenishments"
Web - delete when empty "Warehouse" → "Picking dedicated locations" → "Delete when empty"
Web - label printing "Warehouse" → "Picking dedicated locations" → label action
Web - shipping demand replenishment "Shipping" → "Shipping orders" → "Enable replenishment"
RFT - particular demand replenishment Menu "Replenishment" → specific location/aisle
RFT - shipping order demand Menu "Replenishment" → "For shipping orders"
RFT - assign item to location Menu "Utilities" → "Assign item to loc."
Web - automatic job "Control" → "Jobs" → TryToReplenishProductLocations
  • Picking - replenishment feeds PDLs that picking tasks consume; PDL stock assignment depends on replenishment being current
  • Putaway - putaway engine checks PDLs first and can auto-create PDL assignments during container placement
  • Stock - stock status and logistic attributes are key criteria for replenishment eligibility
  • Container (LPN) - container-mode PDLs replenish by moving whole containers; source containers must allow replenishment
  • Task - replenishment generates Container replenishment or Stock replenishment tasks; also Picking tasks for inter-sub-warehouse replenishment
  • Location - PDLs are locations with item assignment; "Allow replenishment source/target" logics control eligibility