7496aafe64
- 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
615 lines
29 KiB
Markdown
615 lines
29 KiB
Markdown
---
|
|
title: "Flux expédition - Processus complet"
|
|
tags: [outbound, expédition, défragmentation, étiquetage, chargement, recertification, messagerie, litiges, AGV]
|
|
status: draft
|
|
standard_ref: concepts/shipping.md
|
|
jira_refs: [LIM-105, LIM-107, LIM-111]
|
|
confluence_refs: ["Expédition - LIMAGRAIN - DEV"]
|
|
sources: [FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5.docx, "Expédition - LIMAGRAIN - DEV - Confluence.md", "Jira LIM-105 (lecture directe 2026-07-20)", "Jira LIM-107 (lecture directe 2026-07-20)", "Jira LIM-111 (lecture directe 2026-07-20)"]
|
|
last_updated: 2026-07-20
|
|
author: Arthur
|
|
---
|
|
|
|
# Flux expédition - Processus complet
|
|
|
|
> **Résumé** : processus d'expédition de bout en bout en 12 étapes, de la
|
|
> réception de l'OS jusqu'à la libération du quai, incluant les flux
|
|
> spécifiques (re-certification, messagerie carton, consommation OF, litiges).
|
|
|
|
> **Standard EasyWMS** : → voir [Shipping](../../concepts/shipping.md)
|
|
> Ce qui suit documente les **spécificités Limagrain** par rapport au standard.
|
|
|
|
## Contexte projet
|
|
|
|
Le processus d'expédition est composé de 12 étapes. Les palettes passent
|
|
par une zone de défragmentation client dans l'ASRS avant d'être sorties
|
|
vers les poumons. Un custom clé gère l'ordonnancement : la défragmentation
|
|
ne se déclenche que quand toutes les palettes de picking sont terminées.
|
|
|
|
## Processus global
|
|
|
|
```mermaid
|
|
flowchart TD
|
|
SOR["1. Réception SOR/RUT"] --> LIB["2. Libération auto/manuelle"]
|
|
LIB --> ASSIGN["3. Assignation stock"]
|
|
ASSIGN --> GEN["4. Génération tâches"]
|
|
GEN -->|Picking requis| PK["5. Assignation poste travail"]
|
|
GEN -->|Palettes complètes| DEFRAG["CUSTOM: Défrag → zone client"]
|
|
PK --> PICK["6. Préparation au poste"]
|
|
PICK --> CADENCE["7. Cadencement tâches"]
|
|
CADENCE --> POUMON["8. Assignation poumon/quai"]
|
|
DEFRAG --> POUMON
|
|
POUMON --> SORT["9. Déplacement + étiquetage auto"]
|
|
SORT --> AGV["AGV → dépose poumon"]
|
|
AGV --> CHARG["10. Chargement camion"]
|
|
CHARG --> SOF["11. Clôture → SOF + LOF"]
|
|
SOF --> LIBRE["12. Libération quai/poumon"]
|
|
```
|
|
|
|
## Étapes détaillées
|
|
|
|
### 1. Réception de l'ordre de sortie
|
|
|
|
L'ERP envoie une commande d'expédition vers EasyWMS : un **SOR** (commande
|
|
de sortie) ou un **RUT** (image camion pouvant contenir plusieurs SOR
|
|
ordonnancés par n° de STOP). Voir [Ordres de sortie](shipping-orders.md).
|
|
|
|
### 2. Libération de l'ordre de sortie
|
|
|
|
| Mode | Description |
|
|
|------|-------------|
|
|
| Automatique | Date/heure de libération définie dans le SOR/RUT (mode principal). Par défaut `PlannedShippingDate - 48h`. |
|
|
| Manuelle | Depuis l'écran des ordres de sortie dans EasyWMS |
|
|
|
|
### 3. Assignation du stock
|
|
|
|
Voir [Ordres de sortie - Assignation](shipping-orders.md#assignation-de-stock)
|
|
pour les stratégies détaillées (FIFO 24h, économie de mouvement, pas de
|
|
FEFO, max palettes complètes).
|
|
|
|
### 4. Génération des tâches
|
|
|
|
| Type de palette | Action |
|
|
|-----------------|--------|
|
|
| Palettes complètes / picking terminées | [CUSTOM] Tâche de défragmentation (reloc) vers zone d'expédition ASRS. Ne se déclenche que si **toutes** les palettes clientes sont « terminées » et qu'aucun quai n'est associé à l'OS. Voir [Défragmentation custom](../02-stockage/defragmentation.md#custom-défrag-client-par-tournée---quai-non-assigné-lim-87). |
|
|
| Palettes picking | Aucune tâche tant qu'un poste de travail n'est pas assigné |
|
|
|
|
> **Règle générale** : on n'envoie aucune palette sur l'image de quai tant
|
|
> que le picking n'est pas terminé (et que les palettes sont revenues à
|
|
> l'ASRS) - sauf si le stop précédent est fini.
|
|
>
|
|
> **Deux customs complémentaires** gèrent l'ordonnancement par STOP :
|
|
> quai non assigné → [Défragmentation custom](../02-stockage/defragmentation.md),
|
|
> quai assigné → [Séquençage shipping par STOP](sequencage-shipping-stop.md).
|
|
|
|
> **Note** : l'information du passage en conteneur client est disponible
|
|
> dans le LOC envoyé périodiquement à SAP.
|
|
|
|
### 5. Assignation du poste de travail
|
|
|
|
Assignation **automatique** depuis EasyWMS. Modes possibles par poste :
|
|
Picking, Réception, Regroupement, Échantillonnage, Recertification, Tous.
|
|
|
|
**Contrainte** : seuls les postes **P5 et P6** (équipés palan) peuvent
|
|
être assignés pour les processus comportant au moins une palette Big-Bag.
|
|
|
|
**Priorité** : WS PK picking rob en priorité, et si trop limité, utiliser
|
|
le **process RF** comme fallback (plus robuste pour picking négatif,
|
|
multi-tables, etc.). Le process de réception est déjà plugué au mode
|
|
Automatic tasks de la WS (custom) → même mode pour le picking.
|
|
|
|
Voir [Stations picking](../03-picking/stations-picking.md).
|
|
|
|
### 6. Préparation au poste de travail
|
|
|
|
#### Arrivée des palettes (toujours un poste 3 TP)
|
|
|
|
- Première palette au **centre** si picking négatif proposé, sinon sur un côté
|
|
- Si une palette est sur un côté et qu'on propose du picking négatif →
|
|
prévenir l'opérateur de déplacer la palette au centre
|
|
- La palette client revient **toujours** au centre
|
|
- Pas de prépa sur 6 TP en simultané
|
|
|
|
#### Ordonnancement des prélèvements
|
|
|
|
1. **Espèce Maïs** toujours en premier (pas la variété)
|
|
2. Puis espèce avec la **plus grande quantité** dans la commande
|
|
3. Si égalité : **article/lot le plus lourd** en base de palette
|
|
|
|
**Mapping Espèce → stack (gerbabilité)** : maïs = stack 0 (le plus
|
|
lourd/stable, en base). [CUSTOM] Gestion en async sur l'ITM pour calculer
|
|
la gerbabilité automatiquement à la création de l'article. Tri via
|
|
workflow `StackerCrane_SortTasks_PR`.
|
|
|
|
#### Règles de picking
|
|
|
|
| Règle | Détail |
|
|
|-------|--------|
|
|
| Picking négatif | **Deux conditions cumulatives** (réu. 11/05/2026) : seuil fiche article (défaut **55%**, pas 50%) ET poids unitaire sac **≥ 7 kg**. Si l'une des deux n'est pas remplie → picking direct classique. Voir [Picking combinatoire](../03-picking/picking-combinatoire.md#custom-règle-du-picking-négatif). |
|
|
| ~~Traitement commercial~~ | ~~Articles avec/sans traitement sur palettes filles séparées~~ - **SUPPRIMÉ** (réu. 11/05/2026, `CONTROLE_TRAITEMENT_COMMERCIAL = false`). L'entrepôt ne fait pas de bio. |
|
|
| Verrou « HORS TOLERANCE » | Si présent → recomptage avant picking. Si stock restant suffisant après inventaire → assignation maintenue. Sinon → réassignation ailleurs + retrait verrou. |
|
|
|
|
#### Algorithme de répartition des palettes sur les TP
|
|
|
|
[CUSTOM] Logique combinatoire complète gérant : picking négatif et
|
|
enchaînements, ordonnancement par espèce, terminer une palette pleine
|
|
avant d'en entamer une autre, cadencement des buffers, pas de mélange
|
|
traitement commercial, contrainte opérateur (pas de déplacement de sacs
|
|
d'une table à l'autre - sacs lourds).
|
|
|
|
**Table du milieu** : toujours occupée soit par une palette de picking
|
|
négatif, soit par une palette vide de dépôt. Palette vide remise
|
|
manuellement sur pile quand vidée.
|
|
|
|
#### Étiquetage au picking
|
|
|
|
**Palettes MII et multi-lots** : 1 étiquette HU RFID pour la palette
|
|
physique (HU mère) + 1 étiquette HU sans RFID par ligne de stock
|
|
(HU fille / intercalaire). Impression auto à chaque nouvelle palette
|
|
(RFID) et à chaque article (intercalaire).
|
|
|
|
**Autres palettes** : 1 étiquette HU RFID uniquement. Basé sur la
|
|
classe de commande.
|
|
|
|
#### Message MOV
|
|
|
|
~~À chaque déplacement de stock durant le picking, un message MOV est
|
|
envoyé à SAP.~~ **ANNULÉ** - vu en réunion client, jugé inutile.
|
|
|
|
#### Filmage
|
|
|
|
Avant chaque évacuation, l'opérateur choisit le programme de filmage
|
|
(stocké dans `CstAtt05`, transmis à Galileo). Possibilité de choisir « pas
|
|
de filmage ». Le mécanisme de transmission (event `MovementCreated` sur
|
|
source PIE_02 → CustomData de la tâche) est décrit dans
|
|
[Configuration Galileo - Transmission du filmage](../02-stockage/galileo-config.md#transmission-du-programme-de-filmage-à-la-filmeuse-lim-115)
|
|
(LIM-115).
|
|
|
|
**Programmes de filmage disponibles** :
|
|
|
|
| Code | Espèce | Contenant | Mode |
|
|
|------|--------|-----------|------|
|
|
| A | Tournesol | Sacs | Complet |
|
|
| B | Tournesol | Sacs | Réduit |
|
|
| C | Tournesol | Big Bag | Complet |
|
|
| D | Tournesol | Big Bag | Réduit |
|
|
| E | Maïs & Blé | Sacs | Complet |
|
|
| F | Maïs & Blé | Sacs | Réduit |
|
|
| G | Maïs & Blé | Big Bag | Complet |
|
|
| H | Maïs & Blé | Big Bag | Réduit |
|
|
|
|
Voir [Picking combinatoire](../03-picking/picking-combinatoire.md) pour
|
|
les détails du processus de préparation.
|
|
|
|
### 7. Cadencement des tâches
|
|
|
|
Séquence pour une commande « classique » :
|
|
|
|
1. Lancement de la commande (quelques heures/jours avant la prépa réelle)
|
|
2. Les tâches de shipping **ne se déclenchent pas** tant que le poumon/quai
|
|
n'est pas assigné
|
|
3. Les palettes deviennent « client » → information dans le LOC
|
|
4. Si la commande n'a pas de poumon assigné, ou si TK dispo (tâche prio
|
|
très basse), l'ASRS déplace les palettes de shipping vers une **zone
|
|
tampon** du magasin proche des sorties (via défrag en tâche de fond)
|
|
5. Si un PK est dispo, les tâches de picking se génèrent → palettes
|
|
vont aux PK
|
|
6. À chaque palette pickée et terminée :
|
|
- Selon classe de commande → retour TK ou non
|
|
- Si retour ASRS : tâche AGV (PK → Entrée TK)
|
|
- Si messagerie : tâche vers le poumon d'expédition choisi manuellement
|
|
- Si aucun poumon choisi → prompt
|
|
7. La palette de picking **re-rentre dans le TK directement au bon
|
|
endroit** (zone client) avec si possible canal dédié à la route. Pas
|
|
de stockage temporaire puis défrag la nuit.
|
|
8. Assignation du poumon → génération des tâches de shipping
|
|
|
|
### 8. Assignation quai / poumon
|
|
|
|
**Par défaut** : un quai « QUAI_TEMPORAIRE » est assigné, accessible par
|
|
toutes les images de quai. Simplement assigner un poumon pour lancer la
|
|
livraison.
|
|
|
|
**À la libération** : le stock va jusqu'à l'image de quai (poumon exp).
|
|
Le vrai quai est précisé ultérieurement (affichage chauffeur). Association
|
|
commande ↔ quai pour le chargement, camion ↔ quai dans une vue dédiée.
|
|
|
|
**Dès qu'un poumon est assigné** : les tâches de mouvement vers ce poumon
|
|
sont générées, même si aucun quai n'est encore assigné.
|
|
|
|
Voir [Quais et poumons](consolidation-chargement.md).
|
|
|
|
### 9. Déplacement et étiquetage automatique
|
|
|
|
Palettes sortent de la zone défrag → poste de sortie ASRS.
|
|
|
|
**Étiqueteuse automatique** : deux étiqueteuses au niveau des 2 postes de
|
|
sortie TK.
|
|
|
|
Voir la section [Étiqueteuse automatique](#étiqueteuse-automatique)
|
|
ci-dessous pour le fonctionnement détaillé.
|
|
|
|
Ordonnancement des palettes sur le poumon par **n° STOP** (ordre de
|
|
livraison). Les AGV déposent en respectant l'ordre des arrêts.
|
|
|
|
### 10. Chargement camion
|
|
|
|
Le chargement camion est créé par le RUT.
|
|
|
|
1. Vérification que la palette a été étiquetée automatiquement. Si échec :
|
|
impression manuelle via imprimante sur les quais.
|
|
2. Scan de l'étiquette pour confirmer la prise en charge
|
|
3. Dépose de la palette dans le camion
|
|
4. Palette suivante jusqu'à fin de chargement
|
|
|
|
**Fermeture auto** si chargement complet : possibilité de lancer un
|
|
CloseCommand sur l'OS pour expédier ce qui est chargé.
|
|
|
|
### 11. Clôture de l'ordre de sortie
|
|
|
|
- **Automatique** lorsque tous les conteneurs sont chargés
|
|
- Messages **SOF + LOF** envoyés vers SAP
|
|
|
|
Dans un SOF, les lignes sans quantité expédiée **n'apparaissent pas**
|
|
(pas de ligne à 0).
|
|
|
|
Si un premier chargement est clôturé partiellement → vérifier si un
|
|
deuxième chargement est recréé automatiquement pour le reliquat.
|
|
|
|
> ⚠️ À paramétrer et tester : comportement du reliquat chargement
|
|
> camion, notamment avec fichier RUT.
|
|
|
|
- Le LOF représente l'image exacte du camion (palettes physiquement
|
|
chargées)
|
|
- Si une commande est expédiée sur 2 camions → 2 LOF distincts
|
|
- X SOF par commande si expédition partielle
|
|
|
|
### 12. Libération quai / image de quai
|
|
|
|
| Élément | Mode de libération |
|
|
|---------|-------------------|
|
|
| Image de quai | **Automatique** - dernière palette chargée |
|
|
| Quai | **Manuel** - départ du camion |
|
|
|
|
## Étiqueteuse automatique
|
|
|
|
> **Statut** : le **mécanisme d'intégration Galileo** est spécifié dans
|
|
> **LIM-111** (Ouvert) ; le **contenu des rapports** relève de **LIM-107** ;
|
|
> la **pose initiale du flag `CstAtt14` au PK** relève de **LIM-91**. Cette
|
|
> section documente le fonctionnement au poste de sortie TK.
|
|
|
|
### Principe
|
|
|
|
Deux étiqueteuses automatiques, **LBLM_01** et **LBLM_02** (stations de type
|
|
**ET**), équipent les deux postes de sortie de l'ASRS, sur les convoyeurs
|
|
allant vers les images de quai. Elles servent **uniquement** aux supports
|
|
qui sortent de l'ASRS pour aller **directement sur une image de quai** dans
|
|
un flux d'expédition. Elles peuvent poser une ou deux étiquettes selon le
|
|
processus. Le WMS envoie un *print command* avec l'un des rapports (mono ou
|
|
multiréférence) - voir
|
|
[Étiquette support RFID](../01-inbound/etiquette-rfid.md).
|
|
|
|
Positionnement dans la chaîne : sortie TK (ordonnancée par n° STOP, voir
|
|
[Séquençage shipping par STOP](sequencage-shipping-stop.md)) → table de
|
|
sortie TK → **étiqueteuse ET** → poste de sortie PS → AGV Still → image de
|
|
quai → chargement camion.
|
|
|
|
### Étiquetage au picking (étiqueteuse auto)
|
|
|
|
100% des palettes passant par le picking sont étiquetées (étiquette de
|
|
picking HU RFID) directement au PK. Le flag `CstAtt14` est positionné à
|
|
`true` sur la palette (LIM-91) pour indiquer qu'elle a déjà été étiquetée.
|
|
|
|
### Comportement à la sortie TK - décision d'impression (LIM-111)
|
|
|
|
Deux étiquettes **distinctes** peuvent être posées, avec des règles
|
|
**séparées**. Le flag **`CstAtt14`** (Container, String - voir
|
|
[AD Customs](../07-admin/ad-customs.md#cstatt-support-container--palette)) ne conditionne
|
|
que la **2e** (étiquette de picking), pas l'étiquette d'expédition.
|
|
|
|
| Étiquette | Rapport | Condition d'impression |
|
|
|-----------|---------|------------------------|
|
|
| Expédition (client / production) | LIM-107 | **Toujours**, sauf palette trop basse (PLC Height Type = 1). Indépendante de `CstAtt14`. |
|
|
| Picking (HU RFID mono/multiréférence) | LIM-68 | Uniquement si `CstAtt14` = `false`/vide **et** PLC Height Type ≠ 1. Non imprimée si `CstAtt14` = `true` (déjà étiquetée au PK) ou palette trop basse. |
|
|
|
|
**Cas d'usage de la 2e étiquette** : une palette complète sortie
|
|
directement de l'ASRS vers l'image de quai **sans passer par un poste de
|
|
picking** n'a pas ses étiquettes HU RFID → `CstAtt14` vide → l'étiqueteuse
|
|
les pose (monoref ou multiref RFID selon le nombre de lignes de stock).
|
|
|
|
**Mise à jour du flag** après passage à l'étiqueteuse :
|
|
|
|
- Impression OK → `CstAtt14` passe à `true`
|
|
- Impression échouée → `CstAtt14` passe à `error` (voir Gestion des pannes)
|
|
|
|
> ⚠️ La condition « PLC Height Type ≠ 1 » sur l'étiquette d'expédition
|
|
> reste **à vérifier** avec le fournisseur (LIM-111 §4.2).
|
|
|
|
### Mode dégradé - Chargement camion
|
|
|
|
Si l'opérateur scanne une palette sans étiquette (`CstAtt14` = `false` ou
|
|
`error`, PLC height type ≠ 1) au chargement camion → le WMS propose de
|
|
réimprimer le rapport d'expédition (LIM-107), avec prompt du code
|
|
imprimante. Réimpression via imprimante proche du quai (menu TRF dédié).
|
|
|
|
### Communication Galileo (LIM-111)
|
|
|
|
Pilotage **par custom data**, sans changement de destination ni de route
|
|
(un seul chemin physique). Même principe que le filmage (CstAtt05 → custom
|
|
data, voir LIM-91).
|
|
|
|
Points d'insertion :
|
|
|
|
- **Subscription sur l'event `MovementCreated`** : si la destination est
|
|
une étiqueteuse (`LBLM_01`/`LBLM_02`), le WMS met à jour le **CustomData
|
|
de la tâche** avec le **nombre d'étiquettes** à imprimer. Ce nombre est
|
|
essentiel : il indique au **bras articulé** s'il y a une ou deux
|
|
positions de collage.
|
|
- Galileo, en recevant le custom data avec le bon tracking de palette,
|
|
**arrête les rouleaux**.
|
|
- À la **fin d'ordre** (event = palette arrivée à l'étiqueteuse), le WMS
|
|
lance le **`printerCommand`**. Le contenu du rapport est envoyé
|
|
directement à l'imprimante par EasyWMS via le **`printerService`**.
|
|
- Galileo gère l'impression et le **collage**, puis la **relance des
|
|
rouleaux**.
|
|
|
|
### Multi-étiquettes (2 étiquettes)
|
|
|
|
2 rapports différents → **2 docs de 1 page** (= 2 demandes d'impression
|
|
simultanées). L'étiqueteuse articulée colle à 2 endroits différents sur
|
|
la palette (positions à définir avec Théo).
|
|
|
|
### Gestion des pannes
|
|
|
|
- Imprimante en échec → erreur envoyée à Galileo → Galileo met en
|
|
**défaut la ET (station)** correspondante
|
|
- Si une des deux étiqueteuses est HS → Galileo reroute automatiquement
|
|
vers l'autre poste de sortie
|
|
- [CUSTOM Galileo] Communication HS imprimante → mise en défaut ET à
|
|
documenter dans le document TMS
|
|
|
|
### Contenu des étiquettes d'expédition par type (LIM-107)
|
|
|
|
> **Statut (LIM-107)** : en revue de code.
|
|
|
|
Dès qu'une palette sort de l'installation pour expédition, un rapport est
|
|
imprimé **selon le type d'expédition** (classe de l'OS). Format **A5**. Le
|
|
type est déterminé par la classe de l'OS via les paramètres
|
|
`EXPEDITION_CLASSE_CLIENT` / `EXPEDITION_CLASSE_PRODUCTION` (voir
|
|
[Paramètres projet](../07-admin/parametres-projet.md)).
|
|
|
|
Où l'étiquette est imprimée (arbitrage Justine 02/07/2026) :
|
|
|
|
- **Client** et **Production** → sur les **étiqueteuses automatiques**
|
|
d'expédition (sortie TK).
|
|
- **Échantillonnage** → sur les **étiqueteuses des postes de travail**, via
|
|
le flux inventaire COR/COF. Contenu détaillé dans
|
|
[Échantillonnage - Étiquette d'échantillonnage](../03-picking/echantillonnage.md#étiquette-déchantillonnage-lim-107).
|
|
|
|
Étiquette **CLIENT** (report `CST_RPT_OUTBOUND_CLIENT`) :
|
|
|
|
| # | Champ |
|
|
|---|-------|
|
|
| 1 | Code de la tournée |
|
|
| 2 | Code de l'OS |
|
|
| 3 | Code du transporteur de l'OS |
|
|
| 4 | Adresse de livraison de l'OS |
|
|
|
|
Étiquette **PRODUCTION** (report `CST_RPT_OUTBOUND_PRODUCTION`) :
|
|
|
|
| # | Champ |
|
|
|---|-------|
|
|
| 1 | Code de l'OS |
|
|
| 2 | Code-barre 128 du code de l'OS |
|
|
| 3 | `SOR.Document` |
|
|
|
|
Une **impression manuelle** est aussi disponible depuis la vue conteneurs
|
|
(`ContainerVList`) via deux boutons (« Imprimer étiquette d'expédition
|
|
client / production »), affichés sous condition que le conteneur soit un
|
|
conteneur client ou d'expédition de la bonne classe d'OS.
|
|
|
|
| Élément AD | Type | Rôle |
|
|
|------------|------|------|
|
|
| `EXPEDITION_CLASSE_CLIENT` / `EXPEDITION_CLASSE_PRODUCTION` | Paramètre | Classe d'OS identifiant le type d'expédition (client / production). |
|
|
| `CST_RPT_OUTBOUND_CLIENT` | Report | Étiquette d'expédition client. |
|
|
| `CST_RPT_OUTBOUND_PRODUCTION` | Report | Étiquette d'expédition production. |
|
|
| `CST_RPT_ECHANTILLONAGE` | Report | Étiquette d'échantillonnage (voir [Échantillonnage](../03-picking/echantillonnage.md)). |
|
|
| `CST_VSearchPrintShippingClientContainerLabel` | Vue | Génération de l'étiquette d'expédition client. |
|
|
| `CST_VSearchPrintShippingProductionContainerLabel` | Vue | Génération de l'étiquette d'expédition production. |
|
|
| `ContainerVList` | Vue | Ajout des 2 boutons de génération d'étiquette (sous condition de classe d'OS). |
|
|
| `CST_ContainerVList_Action_PrintShippingClientLabel` / `...ProductionLabel` | Ressource i18n | Libellés des boutons d'impression. |
|
|
| `CST_ShippingClientContainerLabel` (client + production) | Ressource i18n | Libellés « Générer étiquette expédition client / production ». |
|
|
|
|
## Flux spécifiques
|
|
|
|
### Re-certification
|
|
|
|
> **Workstation LIM-105** : le **process opérateur détaillé au poste de
|
|
> picking** (scan ancienne/nouvelle étiquette, vérification ASN via
|
|
> `SAP_ATH111_*`, échange de conteneur, filmage, éléments AD) est documenté
|
|
> dans [Recertification - Workstation au poste de picking](../03-picking/recertification.md).
|
|
> La section ci-dessous décrit le **flux outbound** de bout en bout.
|
|
|
|
La re-certification consiste à ré-étiqueter une palette existante pour
|
|
lui donner une nouvelle identité (nouvelle HU) sans déplacer physiquement
|
|
le stock. C'est une **sortie administrative** suivie d'une **réception
|
|
administrative**.
|
|
|
|
**Pré-requis** : le PK doit être passé en **mode recertif** (par le
|
|
manager), ce qui bloque le PK pour les autres types de tâches.
|
|
|
|
**Flux détaillé :**
|
|
|
|
1. L'ERP envoie un SOR de type « Recertification »
|
|
2. Le WMS crée une tâche vers QUAI_RECERTIF. La route passe par le PK
|
|
(seul chemin possible)
|
|
3. L'AGV amène la palette au PK assigné
|
|
4. [CUSTOM] **Event à l'arrivée sur le PK** : on stocke le code du PK
|
|
(ex: PK02) dans un CstAtt de la palette
|
|
5. **Route virtuelle** : la palette est déplacée informatiquement du PK
|
|
vers QUAI_RECERTIF
|
|
6. [CUSTOM] **Event sur le déplacement vers QUAI_RECERTIF** - 3 actions :
|
|
- Récupération du CstAtt (code PK d'origine)
|
|
- Fermeture de la commande → expédition du stock → génération du SOF
|
|
- Création d'une **palette vide** sur le PK d'origine (pour maintenir
|
|
la capacité correcte et empêcher le WMS d'envoyer de nouvelles
|
|
palettes sur un PK physiquement occupé)
|
|
7. L'ERP reçoit le SOF → mise à jour avec son MII en interne
|
|
8. L'opérateur recertifie physiquement la palette, ré-étiquette (hors WMS)
|
|
9. L'ERP renvoie un **ASN** avec la nouvelle identité palette
|
|
10. [CUSTOM] L'opérateur scanne la palette recertifiée au PK → le WMS
|
|
propose de choisir la table (prompt position PK). La palette passe
|
|
de ASN au bon emplacement PK. La **palette vide est supprimée**
|
|
automatiquement.
|
|
11. L'opérateur appuie sur « Ranger support » → AGV vient la chercher →
|
|
passage au PIE de réception (standard)
|
|
|
|
> ⚠️ **Risque** : si l'ASN n'est pas encore arrivé au moment du scan →
|
|
> erreur, réessayer plus tard.
|
|
|
|
> ⚠️ **3 mini-customs identifiés** : event de stockage CstAtt + event
|
|
> de fermeture/création palette vide + suppression palette vide au scan ASN.
|
|
|
|
### Messagerie carton
|
|
|
|
**Solution recommandée** : **Pick and Pack** (module transporteur). Plus
|
|
simple, pas de colisage séparé, impression étiquette directe. **Nécessite
|
|
le module transporteur.** Plan B : fusion des lignes comme alternative.
|
|
|
|
**Sans module transporteur** : custom le picking PK avec un mode
|
|
« messagerie carton » :
|
|
|
|
1. Commandes descendues dans un RUT de type « Messagerie carton » (classe
|
|
d'expédition)
|
|
2. Tous les OS préparés en simultané sur un seul poste de travail
|
|
3. Tri par transporteur (l'opérateur ne peut déposer que sur une seule
|
|
palette). Via modèle d'expédition à créer avec le client.
|
|
4. Impression étiquette colis à la première tâche de picking
|
|
(SOR.Code, SOR.Account, SOR.Delivery, SSCC colis 128)
|
|
5. Consolidation sur palette unique
|
|
6. Prélèvement dans un carton (support identifié) puis sur palette
|
|
7. Indicateur à l'opérateur quand un carton ne recevra plus de stock →
|
|
fermer le carton
|
|
8. Bouton « Palette pleine » sur la WS :
|
|
- Impression SSCC
|
|
- Collage par l'opérateur
|
|
- Prompt du code
|
|
- Remontage des supports « colis » sur la palette
|
|
9. Fermeture auto aussi possible si palette n'attend plus de stock
|
|
10. AGV récupère la palette vers le quai
|
|
|
|
**Assignation poumon** : [CUSTOM] à l'import du SOR, vérification combo
|
|
shipping class code + transporteur → si OK, poumon associé automatiquement.
|
|
L'idée retenue est de **ne pas** utiliser d'image de quai classique (sinon
|
|
perte de 25 places) mais un **emplacement au sol par transporteur**
|
|
(ex: emplacement « Colissimo », « Chronopost »).
|
|
|
|
> ⚠️ Custom à prévoir pour que la fermeture fonctionne dans le cas d'un
|
|
> support non client possédant des supports clients.
|
|
|
|
### Consommation OF hors recertification
|
|
|
|
**Prérequis** :
|
|
|
|
- `AllowAssignStockExcess` à `true` dans la SOR.Line
|
|
- Modèle d'expédition avec une stratégie d'assignation de stock
|
|
- [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
|
|
- Pas de passage par un poste de travail
|
|
|
|
Pour les SOR de classe Production, les ruptures de stock ne bloquent pas
|
|
l'expédition. Le client utilise `isCritical` / `isRequired` au niveau
|
|
SOR.Line si besoin.
|
|
|
|
### Gestion des litiges (sac endommagé)
|
|
|
|
1. La palette arrive au PK
|
|
2. Problème constaté par l'opérateur sur un stock à picker :
|
|
- Bouton « Problème » → « Modif quantité »
|
|
- S'il reste du stock dispo : assignation maintenue (workflow
|
|
`OnStockAdjust` recalcule uniquement si nécessaire)
|
|
- Si plus assez de stock → réassignation ailleurs
|
|
3. Autre problème - le support n'est pas ok (90% du stock a un problème) :
|
|
- **Verrou de support** interdisant le picking (bouton « mettre sous
|
|
révision » en standard, à configurer)
|
|
- Tâche créée pour que l'AGV dépose la palette sur un **emplacement
|
|
au sol buffer litige** (à valider avec le client)
|
|
4. Retour au flux classique
|
|
|
|
## Modes opératoires
|
|
|
|
Tous les process doivent être pensés en **3 modes** :
|
|
|
|
| Mode | Description |
|
|
|------|-------------|
|
|
| Full AGV | Fonctionnement nominal |
|
|
| Mixte | AGV + caristes (cas probable en montée en charge) |
|
|
| Full TRF (caristes) | Mode dégradé sans AGV |
|
|
|
|
Le module AGV standard permet la finalisation manuelle (simulation AGV).
|
|
4 TRF disponibles sur site. Réunion dédiée à planifier pour les modes
|
|
dégradés.
|
|
|
|
## Points d'attention
|
|
|
|
⚠️ L'ordonnancement des palettes sur le poumon respecte le n° STOP.
|
|
|
|
⚠️ Le custom de défragmentation est le développement clé : il attend que
|
|
toutes les palettes de picking soient terminées avant de lancer les relocs.
|
|
|
|
⚠️ La clôture est automatique pour les OS complets mais **manuelle** en
|
|
cas d'expédition partielle.
|
|
|
|
⚠️ Le message MOV est **annulé** (décision réunion client).
|
|
|
|
⚠️ Les 3 modes opératoires (Full AGV / Mixte / Full TRF) doivent être
|
|
documentés pour chaque process.
|
|
|
|
## Questions ouvertes
|
|
|
|
- ❓ Ordonnancement des palettes dans le canal du poumon d'expé du
|
|
magasin automatique - géré par le WMS ou naturellement via l'ordre
|
|
de stockage ? (@Nicolas)
|
|
- ❓ Fermeture auto OS si chargement complet - standard ou custom ?
|
|
(@Nicolas)
|
|
- ❓ Comportement du reliquat chargement camion avec fichier RUT -
|
|
à paramétrer et tester (@Fabien)
|
|
- ❓ Positions des 2 étiquettes articulées sur la palette (@Théo)
|
|
- ❓ Custom Galileo : communication HS imprimante → mise en défaut ET
|
|
- à documenter dans le TMS (@Théo)
|
|
- Étiqueteuse auto (LIM-111) : mécanisme de remontée d'une erreur
|
|
d'impression par les automates au WMS à définir - nécessaire pour que
|
|
le mode dégradé TRF sache si l'impression a réussi (@Vincent)
|
|
- Étiqueteuse auto (LIM-111) : palette à l'arrêt en cas de problème
|
|
d'impression - intervention opérateur (laquelle ?) et procédure de
|
|
redémarrage de la palette à définir (@Théo / @Vincent)
|
|
- ❓ Combien de commandes messagerie en parallèle sur un poste ? (@Justine)
|
|
- ❓ Emplacement au sol buffer litige - localisation exacte (@Théo)
|
|
- ❓ Emplacement au sol messagerie carton par transporteur (@Théo)
|
|
- ❓ Réunion technique avec Still pour valider le problème de dépose
|
|
AGV sur image de quai (@Théo)
|
|
|
|
## Historique des modifications
|
|
|
|
| Date | Auteur | Modification |
|
|
|------|--------|--------------|
|
|
| 2026-05-05 | Arthur | Création initiale depuis AF V1.5 |
|
|
| 2026-05-05 | Arthur | Réécriture complète depuis ateliers DEV expédition |
|
|
| 2026-05-13 | Arthur | Correction seuil picking négatif 50% → 55% + poids ≥ 7 kg, suppression règle traitement commercial |
|
|
| 2026-07-20 | Arthur | Renvoi vers la nouvelle page [Recertification workstation](../03-picking/recertification.md) (LIM-105) depuis la section Re-certification ; front matter jira_refs/sources/last_updated |
|
|
| 2026-07-20 | Arthur | LIM-107 (lecture directe, en revue de code) : sous-section « Contenu des étiquettes d'expédition par type » sous Étiqueteuse automatique (format A5 ; Client/Production sur étiqueteuses auto, Échantillonnage sur poste via COR/COF ; contenu étiquettes Client 4 champs + Production 3 champs ; params EXPEDITION_CLASSE_CLIENT/PRODUCTION ; reports/vues/ContainerVList/ressources ; impression manuelle via 2 boutons ContainerVList) ; front matter jira_refs +LIM-107/sources |
|
|
| 2026-07-20 | Arthur | LIM-111 (lecture directe, Ouvert) : formalisation de l'intégration Galileo de l'étiqueteuse (noms de stations LBLM_01/LBLM_02 type ET ; refonte « Comportement à la sortie TK » en logique 2 étiquettes distinctes - expédition LIM-107 toujours sauf palette basse, picking LIM-68 conditionnée par CstAtt14 ; mécanisme Galileo subscription MovementCreated → CustomData nombre d'étiquettes → printerCommand/printerService ; CstAtt14 nommé) ; front matter jira_refs +LIM-111/sources ; 2 questions ouvertes (remontée erreur impression, palette à l'arrêt) |
|
|
| 2026-07-20 | Arthur | Lint : ajout section Références ; correction ancres et liens |
|
|
|
|
## Références
|
|
|
|
| Source | Type | Date |
|
|
|--------|------|------|
|
|
| FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5 | AF (docx) | 2026 |
|
|
| "Expédition - LIMAGRAIN - DEV" Confluence | Page | 2026 |
|
|
| [LIM-105](https://easywmsfrance.atlassian.net/browse/LIM-105) | Ticket Jira (lecture directe) | 2026-07-20 |
|
|
| [LIM-107](https://easywmsfrance.atlassian.net/browse/LIM-107) | Ticket Jira (lecture directe) | 2026-07-20 |
|
|
| [LIM-111](https://easywmsfrance.atlassian.net/browse/LIM-111) | Ticket Jira (lecture directe) | 2026-07-20 |
|