Files
2026-05-20 09:41:27 +02:00

11 KiB

title, tags, status, standard_ref, jira_refs, confluence_refs, sources, last_updated, author
title tags status standard_ref jira_refs confluence_refs sources last_updated author
Défragmentation — Zone client et ordonnancement par tournée
stockage
défragmentation
expédition
zone-client
planning
tournée
STOP
custom
draft concepts/defragmentation.md
LIM-85
LIM-87
FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5.docx
LIM-85 LOT2.1 Configuration stratégies defragmentation du stock client par tournée.md
LIM-87 LOT2.1 [TOURNÉES] Défragmentation client - quai non assigné ATTENTE_CLIENT CT-13.md
2026-05-12 Arthur

Défragmentation — Zone client et ordonnancement par tournée

Résumé : processus de défragmentation pour préparer les palettes d'expédition vers la zone de défragmentation client dans l'ASRS. Inclut un custom majeur de défragmentation par tournée (RUT) avec ordonnancement par numéro de STOP, déclenché uniquement quand toutes les palettes sont prêtes et qu'aucun quai n'est assigné.

Standard EasyWMS : → voir Defragmentation Ce qui suit documente les spécificités Limagrain par rapport au standard.

Contexte projet

La défragmentation est un processus standard des entrepôts automatisés. Chez Limagrain, elle sert à préparer les routes (expéditions) en déplaçant les conteneurs vers la zone de défragmentation client (TK02-04, rangées 60-69).

La défragmentation shipping standard propose trois modes d'assignation (Picking Only, Shipping Only, Picking & Shipping) mais aucun ne répond au besoin Limagrain :

Mode standard Comportement Problème
Shipping Only Défrag uniquement les palettes complètes Les palettes de picking ne sont pas repositionnées → ordonnancement STOP faux dans le canal
Picking & Shipping Défrag toutes les palettes (y compris celles à picker) Les palettes sortent pour être défragmentées alors qu'elles doivent d'abord passer au PK → casse l'ordonnancement
Picking Only Non applicable au besoin

Contrainte métier : le stock doit être rangé dans le canal d'expédition ASRS dans l'ordre inverse des STOP de la tournée, de sorte que les palettes sortent du canal dans le bon ordre lors du chargement camion (STOP max chargé en premier → déchargé en dernier).

Deux cas se présentent selon l'assignation du quai :

Situation Custom Page
Quai non assigné au RUT Défrag custom décrite ci-dessous Cette page
Quai déjà assigné au RUT Override du WF stacker crane → voir Séquençage shipping par STOP

Principe général

Les conteneurs assignés à une expédition sont relocalisés dans la zone de défragmentation client en avance, généralement la nuit ou pendant les périodes de moindre charge. Cela permet une sortie rapide le jour de l'expédition.

Caractéristiques

  • Priorité : basse (s'exécute en arrière-plan)
  • Planification : horaires configurables par Limagrain
  • Zone cible : zone défragmentation client (TK02, 03, 04 — rangées 60-69, profondeurs 2-10)
  • Déclencheur : stratégie de défragmentation par rotation (standard)
    • custom défrag client par tournée (ci-dessous)

Configuration du planning (standard)

Limagrain peut modifier les horaires de façon autonome :

  1. Menu « Configuration » → « Défragmentation » → « Planning de défragmentation »
  2. Bouton « Ajouter » → paramétrer les horaires/planning souhaités
  3. Activer la défragmentation via le bouton « Activer »

Prérequis : au moins une stratégie de défragmentation par rotation.

Lien avec l'expédition

La défragmentation est l'étape 4 du flux d'expédition (voir Flux expédition) :

  1. OS reçu et libéré → stock assigné
  2. Palettes complètes → défragmentation vers zone client
  3. Palettes picking → poste de travail d'abord, puis zone client
  4. Depuis zone client → sortie vers poumon le jour J

[CUSTOM] Défrag client par tournée — Quai non assigné (LIM-87)

Objectif

Déclencher la défragmentation client d'une tournée uniquement lorsque toutes ses palettes de tous ses OS sont prêtes à partir vers l'image de quai :

  • Les palettes complètes sont dans l'ASRS
  • Les palettes ayant nécessité un picking sont revenues dans l'ASRS après prélèvement
  • Aucun quai n'est encore associé à la tournée (sinon le flux shipping standard prend le relais → Séquençage shipping par STOP)

La condition « toutes les palettes terminées » s'évalue au niveau de la tournée (RUT), pas de l'OS individuel.

Mécanisme

  • Utiliser le job de défragmentation client standard avec une stratégie en mode Shipping et type d'ordre Tournée
  • Ajouter un filtre custom au niveau de la sélection des candidats qui exclut de l'éligibilité toute tournée dont au moins une palette (d'au moins un OS) n'est pas encore prête dans l'ASRS

Règle d'éligibilité (pseudocode)

POUR CHAQUE RUT candidat à la défrag shipping
  (en standard, exclut les RUT avec quai assigné) :
    POUR CHAQUE OS du RUT :
        SI l'OS a des lignes picking non terminées
            → EXCLURE le RUT
        SI au moins une palette complète assignée
           n'est pas dans l'ASRS
            → EXCLURE le RUT
    SI aucune exclusion → ÉLIGIBLE
    SINON → reste candidat pour le prochain passage du job

Point clé : l'éligibilité est « tout-ou-rien » au niveau tournée. Tant qu'un seul OS du RUT n'a pas toutes ses palettes prêtes, aucune défrag n'est lancée pour le RUT.

Ordonnancement dans le canal

Les palettes du STOP max entrent dans le canal en premier, celles du STOP 1 en dernier. Ainsi les palettes sortent dans le bon ordre lors du chargement camion (STOP 1 chargé en premier).

Le rangement se fait dans un canal (ou plusieurs canaux) par tournée — pas un canal par STOP.

Paramètre MAX_DEFRAG_ATTEMPT

À chaque passage du job, le WMS essaie de trouver un emplacement valide. Si aucun n'est trouvé, le compteur de tentatives est incrémenté. Une fois MAX_DEFRAG_ATTEMPT atteint (défaut : 5), le support est retiré des candidats défrag.

Important : le compteur ne s'incrémente que si le WMS a cherché un emplacement de destination et n'en a pas trouvé. Si le filtre custom exclut la tournée avant même de chercher une destination, aucune tentative n'est décomptée.

Cas de tests (LIM-87)

Légende : PC = palette complète, PP = palette de picking (mère), PF = palette fille (sortie du picking, retour ASRS).

Cas nominaux

CT Description Préconditions Résultat attendu
01 RUT mono-OS, uniquement PC 1 SOR, 3 PC dans ASRS, pas de quai Éligible. 3 tâches défrag, séquence STOP respectée
02 RUT mono-OS, uniquement picking terminé 1 SOR, 2 PP → 2 PF revenues ASRS, pas de quai Éligible. 2 tâches défrag pour les PF
03 RUT mono-OS mixte (PC + picking terminé) 1 SOR : 2 PC + 1 PF revenue ASRS, pas de quai Éligible. 3 tâches défrag
04 RUT multi-OS, ordonnancement STOP 3 SOR (STOP 1,2,3), 2 PC chacun, toutes ASRS Éligible. 6 tâches, STOP 3 en premier dans le canal
05 RUT multi-OS, tous prêts simultanément 3 SOR mixtes, toutes palettes ASRS Éligible en un seul passage. 5 tâches, séquence STOP

Cas limites

CT Description Préconditions Résultat attendu
06 PP partie, PF pas encore revenue 2 SOR, SOR1 prêt, SOR2 avec PF pas revenue NON éligible (un OS bloque tout le RUT)
07 PF encore sur AGV (en mouvement) Multi-OS, 1 PF en transit AGV NON éligible tant que PF pas dans ASRS
08 Quai déjà assigné à la tournée Toutes palettes prêtes, quai assigné NON éligible pour custom défrag — flux standard prend le relais
09 Picking partiel sur un OS 1 SOR, 3 lignes picking, 2 PF revenues, 1 PP au PK NON éligible (on attend la totalité)

Cas dégradés

CT Description Préconditions Résultat attendu
11 AGV HS pendant retour PF PF bloquée sur PK/buffer NON éligible jusqu'à rangement ASRS
12 Support sous révision PP → buffer litige, stock réassigné sur PP' Éligible quand toutes les palettes (réassignations incluses) dans ASRS
13 Rupture de stock (ATTENTE CLIENT) SOR1 prêt, SOR2 avec 1 ligne en rupture À trancher : option A (RUT bloqué) ou option B (défrag partielle)
14 Modification quantité (bouton Problème) OnStockAdjust recalcule Si stock suffisant → PF revient, RUT éligible. Si réassignation → attendre PP'/PF'
15 RUT libéré, aucune PP partie (figé) Pas de PK disponible NON éligible (picking pas déclenché ≠ prêt). Pas de MAX_DEFRAG_ATTEMPT
16 Ajout SOR à un RUT déjà éligible Nouveau SOR avec lignes picking non traitées Redevient NON éligible jusqu'à fin du nouveau SOR

Pause et reprise

Le processus peut être mis en pause et repris ultérieurement (par exemple si l'activité reprend la nuit).

Points d'attention

⚠️ Les tâches de défragmentation ont une priorité basse — elles ne perturbent pas l'activité normale mais peuvent être longues.

⚠️ MECALUX conseille une présence sur site lors de la défragmentation en cas de défaut sur les transstockeurs (non obligatoire).

⚠️ L'avancée des tâches est consultable sur la vue des tâches.

⚠️ L'éligibilité est « tout-ou-rien » au niveau tournée. Un seul OS non prêt bloque toute la défrag du RUT.

Questions ouvertes

  • Rupture de stock CT-13 : option A (RUT bloqué tant que rupture non résolue) ou option B (défrag sur les palettes dispo) ? (@Justine)
  • MAX_DEFRAG_ATTEMPT : scope défrag client seul ou aussi défrag par rotation ? Impact sur la valeur à configurer (@Nicolas)

Historique des modifications

Date Auteur Modification
2026-05-05 Arthur Création initiale depuis AF V1.5
2026-05-12 Arthur Refonte : ajout custom défrag client par tournée (LIM-87), mécanisme filtre éligibilité, ordonnancement STOP, 16 cas de tests
2026-05-13 Arthur Restauration contenu tronqué (caractéristiques, config, custom, cas de tests, points d'attention)

Références

Source Type Date
FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5 Analyse fonctionnelle 28/11/2025
LIM-85 Ticket Jira (stratégies défrag) 2026
LIM-87 Ticket Jira (défrag client quai non assigné) 2026