- Bloquants: mermaid 03-picking/_index reconstitue (archive 11-05), 13 liens vers pages squelette retires, 2 liens recibles (anoxie, application-dictionary) - Conventions: 910 em dashes -> tirets simples, 145 checklists -> puces question, 13 questions resolues barrees - Liens: 9 ancres reparees (slugs GitHub) - Delta: 12 standard_ref remappes, blocs Standard EasyWMS + sections References ajoutes, front matter complete - Glossaire: 15 termes standard deplaces en section rappel avec renvoi - Rapport: limagrain/_lint_report.md (Phase 1 + Phase 2 + re-scan final) - Inclut les pages des sessions precedentes non commitees + CLAUDE.md et consume.log en l'etat
16 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 | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Ordres de sortie - Types et libération |
|
draft | concepts/order-outbound.md |
|
|
|
2026-07-20 | Arthur |
Ordres de sortie - Types et libération
Résumé : 4 types d'ordres de sortie chez Limagrain, avec des comportements de libération, d'assignation et de préparation distincts.
Standard EasyWMS : → voir Order Outbound Ce qui suit documente les spécificités Limagrain par rapport au standard.
Contexte projet
L'expédition chez Limagrain couvre des flux variés : commandes clients (palettes et messagerie), approvisionnement production (OF), et re-certification. Le message d'entrée diffère selon le type.
Types d'ordres de sortie
| Type | Message ERP | Passage poste travail | Destination |
|---|---|---|---|
| Commande client | RUT « Client » | Si picking nécessaire | Image de quai |
| Messagerie palette | RUT « Client » | Si picking nécessaire | Image de quai |
| Conso OF hors recertification | SOR « Production » | Non | Image de quai direct |
| Conso OF avec recertification | SOR « Recertification » | Oui | Route virtuelle → réception ASN |
| Messagerie carton | RUT « Messagerie » | Oui | Emplacement au sol dédié |
Classification (OutboundClassCode)
| OutboundClassCode | Usage | AccountCode |
|---|---|---|
| PRODUCTION | Flux vers l'ancien magasin / M2I | PRODUCTION |
| RECERTIFICATION | Flux vers postes de travail SRS | PRODUCTION |
| CLIENT | Commandes clients | CLIENT |
Structure RUT / SOR
- RUT = image camion, peut contenir plusieurs OS (même camion). Un seul message contenant : Route → SorList → Lignes (pas de fichiers RUT + SOR séparés)
- SOR = commande de sortie de marchandise (1 ou plusieurs palettes)
- Chaque OS peut avoir plusieurs lignes (article + quantité)
- Chaque palette est étiquetée et ordonnancée par n° STOP
[CUSTOM] Lot obligatoire sur les lignes d'OS (LIM-109)
Statut (LIM-109) : dev terminé, en attente de déploiement pour test. Revue de code validée (Maxime, 29/06/2026).
La création d'un ordre de sortie ou d'une ligne d'OS est interdite si l'attribut logistique lot n'est pas renseigné. Le lot est indispensable à l'assignation de stock (critère « article/lot SAP », voir Assignation de stock) : une ligne sans lot ne pourrait jamais être servie.
Le contrôle est posé par une subscription en Preview sur l'event de
création de ligne d'OS, qui lève une exception si le lot est vide. Combiné
à TransactionalLineList = true (voir
Paramètres ERP), le refus est total : tout
l'import de l'OS est rejeté.
| Élément AD | Type | Rôle |
|---|---|---|
CST_OutboundOrderLineCreated_CheckLotRequired_PRE |
Subscription | En Preview sur l'event de création de ligne d'OS ; appelle le WF de contrôle. |
CST_OutboundOrderLineCreated_CheckLotRequired_PRE_PR |
Workflow | Lève une exception si le lot n'est pas renseigné sur la ligne. |
CST_OutboundOrderLineCreation_MissingLot |
Ressource i18n | Message d'erreur « lot manquant ». |
Paramètres ERP des SOR/RUT
| Paramètre | Valeur | Commentaire |
|---|---|---|
| OutboundType | 0 (Customer) | Même pour production |
| Priorité par défaut | 3 (Basse) | Échelle : 0=Urgente → 4=Très basse |
| AutoReleaseDate | PlannedShippingDate - 48h | Si < 48h → date passée = libération immédiate |
| TransactionalLineList | true | Tout ou rien (refus total si erreur) |
| CompleteSorList (RUT) | true | SOR absents de la RUT = supprimés |
| AllowAssignStockExcess | true | Palettes pleines, jamais de picking partiel |
| Limite d'annulation | Statut "Chargé" | Avant = OK, après = refusé |
| IgnoreNulls (RUT) | false | - |
Gestion des ruptures SOR Production
SAP ne connaît pas la répartition stock entre ASRS et autres entrepôts. Beaucoup de lignes seront en rupture (affichage rouge = normal et attendu). Le WMS prépare ce qu'il peut, SAP supprime le résiduel 3-4 jours plus tard via un DELETE complet du SOR.
Pas de SOF en phase 1 pour la production. Détection des manquants = mode manuel.
Quai recertification
Statut (LIM-110) : en cours de test client (pré-production). Revue de code validée (Maxime, 03/07/2026).
Le quai de recertification (QUAI_RECERTIFICATION, code porté par le
paramètre RECERTIFICATION_CODE_QUAI) est assigné automatiquement par le
WMS :
- à la création d'un OS de classe RECERTIFICATION
(
OutboundOrder_OutboundOrderCreatedEventHandler_PR) ; - à l'édition d'un OS auquel on ajoute la classe RECERTIFICATION (ajout Vincent 09/07/2026).
Ce quai est réservé à ce process. Le changement manuel du quai
(assignation ou dé-assignation) est empêché : les boutons correspondants
sont masqués dans la vue OutboundOrderVList pour les OS de recertification.
Évolution vs V1 : le quai fictif
QUAI_RECERTIFICATIONétait auparavant renseigné par Limagrain dans le SOR. Il est désormais posé automatiquement par le WMS (LIM-110).
Ce quai n'est pas géré par le job d'assignation des images de quai X_EXP (LIM-94), qui exclut la classe Recertification (voir Assignation image de quai).
Stratégie d'assignation de stock RECERTIFICATION (LIM-110)
Une stratégie d'assignation de stock spécifique, « expédition uniquement des supports complets », est forcée pour les OS de classe RECERTIFICATION :
- La stratégie (code
RECERTIFICATION) est toujours désactivée en configuration : elle n'est jamais choisie par le mécanisme standard. - Lors de l'assignation de stock d'un OS de recertification, le choix est
forcé sur cette stratégie
(
StockAssignProcess_GetStockAssignStrategies_PR). - Le flag
AllowPickest forcé àfalse(StockAssignProcess_GetStockToAssignForStrategy_PR) : supports complets uniquement, pas de picking. - La stratégie est identifiée par une balise
[XXX]dans son code, avecXXX = RECERTIFICATION_CODE_QUAI; la queryCST_StockAssignStrategyV2_Recertificationrécupère les stratégies portant ce tag.
⚠️ La description du ticket indique que
RECERTIFICATION_CODE_QUAIsert aussi à identifier les OS de classe recertification ; à relier au paramètreRECERTIFICATION_CODE_CLASSE(LIM-105) qui porte déjà ce rôle - voir questions ouvertes.
| Élément AD | Type | Rôle |
|---|---|---|
OutboundOrder_OutboundOrderCreatedEventHandler_PR |
Workflow | À la création d'un OS de recertification, assigne automatiquement le quai (paramètre RECERTIFICATION_CODE_QUAI). |
StockAssignProcess_GetStockAssignStrategies_PR |
Workflow | Filtre les stratégies d'assignation de stock à appliquer pour les OS de recertification. |
StockAssignProcess_GetLockAndUpdateDetail_PR |
Workflow | Récupère l'OutboundClassCode. |
StockAssignProcess_GetStockToAssignForStrategy_PR |
Workflow | Force AllowPick = false pour les ordres de recertification. |
OutboundOrderVList |
Vue | Masque les boutons d'assignation / dé-assignation de quai pour les OS de recertification. |
CST_StockAssignStrategyV2_Recertification |
Query | Récupère les stratégies dont le code contient le tag [code classe recertification]. |
OutboundOrder_CreatedEvent |
Subscription | Ajout du paramètre OutboundClassCode. |
RECERTIFICATION_CODE_QUAI |
Paramètre | Code du quai recertification / balise [XXX] de la stratégie. Voir Paramètres projet. |
Libération
Libération automatique (mode principal)
La date/heure de libération est descendue dans l'interface SOR ou RUT. EasyWMS vérifie périodiquement et libère quand la date est atteinte.
Séquence :
- Vérification date → date atteinte
- Statut → « Libéré »
- Assignation stock par ligne
- Génération tâches expédition/prélèvement
- Statut → « En préparation » ou « En rupture de stock »
Libération manuelle
Depuis l'écran « Ordres de sortie » → sélection → « Libérer ». Possible uniquement si statut « En attente », « En préparation » ou « En rupture ».
Priorité
- Priorité définie à la création (dans le SOR/RUT)
- Modifiable dans EasyWMS avant libération (si libération manuelle)
- Par défaut : ordre de réception (FIFO de création)
Assignation de stock
Sélection du stock valide
Filtres appliqués :
- Article (lot SAP) + attributs logistiques (article Limagrain, propriétaire Limagrain, statut de stock) correspondent à la ligne demandée
- Stock et conteneur sans verrou empêchant l'expédition
- Stock pas dans une allée bloquée
- Emplacement sans erreur d'extraction/dépose
- Stock non déjà assigné à un autre OS
- Stock sans tâche d'un autre processus
Stratégie d'assignation
Dans l'ordre de priorité :
- Article/lot SAP + attributs logistiques spécifiés dans le SOR/RUT
- Économie de mouvement (minimum de mouvements) - prioritaire
- FIFO sur 24h : standard confirmé. Les palettes reçues le même jour ont le même FIFO (heures/minutes ignorées), ce qui permet de prendre la palette la plus accessible dans un canal. Pas de FIFO strict infra-journalier.
- Pas de FEFO - la proposition initiale de faire du FEFO sur du stock sans DLC est abandonnée. Il n'y a pas de date d'expiration sur les produits. Le FIFO journalier est retenu.
- Maximum palettes complètes puis palettes incomplètes (avec picking)
⚠️ Attention unités : certains semi-finis calibrés (ZSIZ) sont gérés en kilos, d'autres en big bags. Vérifier que la quantité complète est cohérente avec l'unité de réception. À valider avec le client.
Comportement post-assignation par type
Commande client / Messagerie palette
- Palettes complètes / picking terminées → [CUSTOM] tâche de défragmentation vers zone de stockage d'expédition dans l'ASRS. Ne se déclenche que si toutes les palettes clientes sont « terminées » (palettes de picking retournées dans l'ASRS) ET qu'aucun quai n'est associé à l'OS.
- Palettes picking → pas de tâche tant qu'un poste de travail n'est pas assigné
- Voir Zones stockage
Explication du CUSTOM défrag : en standard, le mode « Expédition uniquement » ne reloc pas les palettes de picking (ordonnancement STOP faux). Le mode « Picking et expédition » reloc toutes les palettes y compris celles à picker, ce qui casse l'ordonnancement quand on les ressort. Le custom attend que toutes les palettes de picking soient pickées et rangées dans l'ASRS avant de lancer les relocs par STOP.
Note
: si un quai est déjà assigné et l'OS libéré, le WMS peut sortir les palettes dans le bon ordre des STOP sans défragmentation préalable, via de la reloc standard.
Consommation OF hors recertification
AllowAssignStockExcessàtruedans la SOR.Line- [CUSTOM] Stratégie d'assignation excluant les supports multi-lignes (= mono-ref uniquement). Combiné avec AllowAssignStockExcess → shipping sans picking.
- Stock assigné directement déposé sur l'image de quai - aucun passage poste de travail
- Ruptures de stock ne bloquent pas l'expédition. Le client utilise
isCritical/isRequiredau niveau SOR.Line si besoin. - Voir Flux spécifiques expédition
Consommation OF avec recertification
- Stock assigné mais aucune tâche tant que poste de travail non assigné
- Le PK doit être passé en mode recertif (par le manager)
- Flux détaillé en 11 étapes - voir Re-certification
Messagerie carton
- Stock assigné mais aucune tâche tant que poste non assigné
- Tous les OS de la RUT préparés simultanément sur un seul poste
- Tri par transporteur (l'opérateur ne dépose que sur une seule palette)
- Consolidation sur palette unique avec supports carton identifiés
- Pas d'image de quai - emplacement au sol dédié par transporteur
- [CUSTOM] À l'import du SOR, vérification combo shipping class code + transporteur → si OK, poumon associé automatiquement
- Voir Messagerie carton
Gestion des reliquats
Si stock insuffisant pour une ligne :
- Ligne → statut « rupture de stock » (affichage rouge)
- Reste de la commande peut être expédié (expédition partielle)
- Clôture manuelle de la commande obligatoire
- Si stock redevient disponible avant clôture → peut être préparé
Création manuelle d'OS
Possible depuis EasyWMS avec choix de destination :
- Table de préparation sur un poste de travail
- Image de quai
Points d'attention
⚠️ La libération automatique est le mode principal - la date est dans le message ERP.
⚠️ L'assignation spécifie toujours les 4 critères (article, lot SAP, propriétaire, statut) - pas d'assignation « ouverte ».
⚠️ Le FIFO est à la journée (palettes du même jour = même rang FIFO), avec l'économie de mouvement prioritaire sur le FIFO. Pas de FEFO.
⚠️ Les palettes d'expédition sont stockées dans la zone défrag avec si possible un canal dédié par route/STOP.
⚠️ Le custom de défragmentation attend que toutes les palettes de picking soient terminées et retournées dans l'ASRS avant de lancer les relocs - c'est le développement clé du flux outbound.
Historique des modifications
| Date | Auteur | Modification |
|---|---|---|
| 2026-05-05 | Arthur | Création initiale depuis AF V1.5 |
| 2026-05-05 | Arthur | Enrichissement : 5 types OS, FIFO 24h, pas de FEFO, custom défrag, conso OF détaillé, messagerie carton |
| 2026-05-06 | Arthur | Ajout classifications, paramètres ERP, ruptures production, quai recertif (CR consolidé) |
| 2026-07-20 | Arthur | LIM-109 (lecture directe, attente déploiement test, revue validée 29/06) : section [CUSTOM] Lot obligatoire sur les lignes d'OS (subscription Preview CST_OutboundOrderLineCreated_CheckLotRequired_PRE → WF exception si lot vide, ressource CST_OutboundOrderLineCreation_MissingLot, refus total via TransactionalLineList) ; front matter jira_refs/sources/last_updated |
| 2026-07-20 | Arthur | LIM-110 (lecture directe, pré-production, revue validée 03/07) : refonte section Quai recertification (assignation auto du quai à la création ET à l'édition d'un OS recertif, blocage du changement manuel via OutboundOrderVList, param RECERTIFICATION_CODE_QUAI, évolution vs V1 renseigné dans le SOR, exclusion LIM-94) + sous-section Stratégie d'assignation de stock RECERTIFICATION (supports complets uniquement, forcée, toujours désactivée, AllowPick=false, tag [XXX], query CST_StockAssignStrategyV2_Recertification) ; table AD ; caveat param QUAI vs CLASSE |
Références
| Source | Type | Date |
|---|---|---|
| FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5 | Analyse fonctionnelle | 28/11/2025 |
| Expédition - LIMAGRAIN - DEV - Confluence | Page ateliers DEV | 2026 |
| CR CONSOLIDES REU ERP LIMAGRAIN V1 | CR ateliers interfaçage | 23/02/2026 |
| LIM-109 | Ticket Jira (interdire lignes d'OS sans lot - attente déploiement test) | 2026 |
| LIM-110 | Ticket Jira (quai recertification auto + stratégie assignation stock - pré-production) | 2026 |