lint(limagrain): corrections completes Phase 1+2

- 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
This commit is contained in:
2026-07-20 12:56:42 +02:00
parent 23eb3f3c84
commit 7496aafe64
59 changed files with 6457 additions and 2023 deletions
+120 -25
View File
@@ -1,16 +1,16 @@
---
title: "Échantillonnage Processus de contrôle qualité"
tags: [picking, échantillonnage, inventaire, qualité, poste, custom]
title: "Échantillonnage - Processus de contrôle qualité"
tags: [picking, échantillonnage, inventaire, qualité, poste, custom, cor, cof]
status: draft
standard_ref: concepts/inventory.md
jira_refs: []
standard_ref: concepts/count.md
jira_refs: [LIM-107, LIM-112]
confluence_refs: []
sources: [FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5.docx]
last_updated: 2026-05-05
sources: [FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5.docx, "Jira LIM-107 (lecture directe 2026-07-20)", "Jira LIM-112 (lecture directe 2026-07-20)"]
last_updated: 2026-07-20
author: Arthur
---
# Échantillonnage Processus de contrôle qualité
# Échantillonnage - Processus de contrôle qualité
> **Résumé** : processus [CUSTOM] d'échantillonnage pour contrôle qualité,
> assimilé à un inventaire dans EasyWMS, avec prélèvement sur poste de travail.
@@ -18,6 +18,11 @@ author: Arthur
> **Standard EasyWMS** : → voir [Inventory](../../concepts/count.md)
> Ce qui suit documente les **spécificités Limagrain** par rapport au standard.
> **Statut (LIM-112)** : Ouvert. Cette page décrit le **flux complet**
> (message COR → ordre d'inventaire → assignation stock/poste → process
> opérateur → COF). Le **contenu de l'étiquette** relève de LIM-107 (cette
> tâche ne fait que déclencher l'impression au poste).
## Contexte projet
L'échantillonnage sert au contrôle qualité sur une partie des lots
@@ -34,11 +39,30 @@ Deux modes de création :
| Mode | Origine | Détail |
|------|---------|--------|
| Interface ERP | Message de l'ERP (COR) | Spécifie un lot à inventorier |
| Interface ERP | Message **COR** | Spécifie un lot à échantillonner |
| Manuel | Interface EasyWMS | Choix d'un lot par l'opérateur |
[CUSTOM] Un champ texte est disponible pour donner des **consignes**
rattachées à l'ordre d'inventaire.
L'ordre d'inventaire est créé avec une **priorité 3 (basse)**.
[CUSTOM] Un champ texte libre est disponible pour des **consignes**
rattachées à l'ordre (porté par `CstAtt02` de la ligne d'inventaire - voir
[AD Customs](../07-admin/ad-customs.md#cstatt-ligne-dordre-dinventaire)).
### Mapping du message COR (SAP → WMS)
| Balise | Valeur |
|--------|--------|
| `Code` | Numéro du lot d'inspection SAP |
| `Description` | `ECHANTILLONNAGE` (déclencheur de création de l'ordre) |
| `Priority` | 3 (basse) |
| `CstAtt01` | Nombre de palettes à inventorier (toujours 4 d'après SAP) |
| `CstAtt02` | Texte libre de consignes rattaché à l'ordre |
| `ProductCode` | Code **lot** SAP |
| `LotCode` | Code **produit** SAP |
| `Color` / `Source` / `Size` | Propriétaire réel SAP / Description produit / Destination (pays) |
> ⚠️ Mapping **inversé** `ProductCode` / `LotCode` : côté SAP,
> `ProductCode` porte le code **lot** et `LotCode` le code **produit**.
## [CUSTOM] Assignation du stock
@@ -46,22 +70,36 @@ L'assignation diffère selon le mode de création :
### Création par interface ERP
- Maximum **4 palettes** échantillonnées :
- Si stock global < 4 → toutes les palettes
- Si stock global ≥ 4 → 4 palettes sélectionnées
- Maximum **`CstAtt01` palettes** échantillonnées (valeur du COR, toujours
4 d'après SAP) ; moins si le stock total n'atteint pas `CstAtt01`.
- [CUSTOM] Les palettes avec un verrou d'écart de poids (« Production »)
sont **prioritaires** pour permettre une vérification simultanée
sont **prioritaires** (vérification simultanée au recomptage).
- **Prérequis** de chaque palette assignée : allée non bloquée, palette
rangée, non client, aucune tâche associée au support.
- **Ordre de sélection** (`OrderByDesc`) : palette bloquée d'abord, puis
par profondeur (la **moins profonde** en premier).
### Création manuelle
- Nombre de palettes choisi par l'opérateur
- Nombre de palettes choisi par l'opérateur (input custom). `CstAtt01` est
saisissable/éditable après la création de l'inventaire manuel, mais
**plus une fois l'inventaire lancé**.
> **Règle transverse** : un article en cours d'échantillonnage **n'est plus
> disponible** pour les ordres de sortie (comportement standard d'un
> inventaire).
## Assignation poste de travail
- Automatique, à condition que le poste soit ouvert et autorise le
mode « échantillonnage »
- Si aucun poste paramétré en mode échantillonnage → tâches en attente
- Une fois le poste assigné → création des tâches de mouvement
mode « échantillonnage » (= mode **Inventaire** EasyWMS).
- L'orchestration passe par le **Mega Job d'assignation PK** (LIM-70), qui
appelle un sous-workflow dédié (développé dans LIM-112) pour trouver et
assigner le bon PK. Si le support est un **Big-bag**, sélection d'un PK
qui l'autorise. Voir
[Mini jobs d'assignation au PK](job-assignation-pk.md).
- Si aucun poste paramétré en mode échantillonnage → tâches en attente.
- Une fois le poste assigné → création des tâches de mouvement.
## Processus sur poste de travail
@@ -90,14 +128,45 @@ Le processus est démarré et effectué sur **une seule palette à la fois**.
### Séquence opérateur
1. [CUSTOM] Si verrou « Réception » → recomptage avant échantillonnage
(à développer en **standalone**, car réutilisé dans plusieurs process)
2. Prendre une pochette d'échantillonnage vide (hors EasyWMS)
3. Effectuer un prélèvement dans un des sacs (~200g, hors EasyWMS)
4. Déposer le prélèvement dans la pochette (hors EasyWMS)
5. Éditer et imprimer une **étiquette d'échantillonnage**
5. Éditer et imprimer une **étiquette d'échantillonnage** (LIM-107)
6. Coller l'étiquette sur la pochette (hors EasyWMS)
7. Scotcher le sac ouvert sur la palette (hors EasyWMS)
8. [CUSTOM] Choix filmage depuis vue spécifique (programme à définir)
9. Évacuer la palette vers le stockage
8. [CUSTOM] Choix du programme de filmage depuis une vue spécifique
9. **Valider la ligne d'inventaire**
10. Évacuer la palette vers le stockage : l'AGV déplace le conteneur du
poste vers la table d'entrée ; la palette est filmée ou non avant de
passer le PIE
## Étiquette d'échantillonnage (LIM-107)
> **Statut (LIM-107)** : en revue de code.
L'étiquette d'échantillonnage (étape 5 ci-dessus) est imprimée au **format
A5** sur l'**étiqueteuse du poste de travail** (et non sur les étiqueteuses
automatiques d'expédition), via le **flux inventaire COR/COF** (report
`CST_RPT_ECHANTILLONAGE`). Voir aussi
[Flux expédition - Étiquettes par type](../04-outbound/flux-expedition.md#contenu-des-étiquettes-dexpédition-par-type-lim-107).
Contenu de l'étiquette :
| # | Champ |
|---|-------|
| 1 | `ITM.CstAtt01` |
| 2 | `ITM.CstAtt03` |
| 3 | `ITM.CstAtt07` |
| 4 | `ITM.CstAtt08` |
| 5 | `ITM` - Famille de l'article |
| 6 | `ProductCode` de la ligne d'inventaire |
| 7 | `ITM.CstAtt10` |
| 8 | `Stock` - Attribut taille |
| 9 | « `_ / _` » laissé vide (complété au stylo par l'opérateur) |
| 10 | `ITM` - Premier alias différent du code article |
| 11 | `COR.Code` encodé en 128 |
| 12 | `COR.Code` |
## Passage PIE post-échantillonnage
@@ -114,10 +183,23 @@ Contrôle identique aux autres processus :
Si PIE NOK → rejet vers poste d'origine. Possibilité de forcer le
passage en cas d'excédent de poids non corrigeable.
## Clôture et émission du COF (LIM-112)
À la clôture de l'ordre d'inventaire (ou en cas d'**annulation**), le WMS
émet le message **COF** (WMS → SAP) :
| Balise | Description |
|--------|-------------|
| `CountCode` | Numéro du lot d'inspection |
| `Status` | `Closed` (effectué) ou `Cancelled` (annulé) |
| `UpdateDate` | Date/heure du changement d'état |
Le traitement du COF côté SAP est **hors périmètre** (équipes IT Limagrain).
## Points d'attention
⚠️ L'échantillonnage est un processus d'**inventaire** dans EasyWMS,
pas un processus de picking important pour le paramétrage des modes
pas un processus de picking - important pour le paramétrage des modes
de poste.
⚠️ Les palettes avec verrou « Production » (écart poids) sont traitées
@@ -126,20 +208,33 @@ en priorité pour optimiser le recomptage.
⚠️ La quantité prélevée (~200g) n'est pas déduite du stock dans EasyWMS
(négligeable par rapport au poids total).
⚠️ Des **big-bags** peuvent être présents dans ce process (LIM-112) → le
poste assigné doit autoriser les big-bags.
## Questions ouvertes
- [ ] Le prélèvement de 200g est-il déduit du stock ou négligé ? (@Nicolas)
- [ ] Programme de filmage exact (@Théo)
- [ ] Format de l'étiquette d'échantillonnage validé ? (@Justine)
- [x] ~~Le prélèvement de 200g est-il déduit du stock ou négligé ? (@Nicolas)~~**Résolu** (LIM-112) : négligé, non déduit du stock
- Programme de filmage exact (@Théo)
- [x] ~~Format de l'étiquette d'échantillonnage - validé ? (@Justine)~~ → Résolu (LIM-107) : format **A5**, contenu défini (12 champs), report `CST_RPT_ECHANTILLONAGE`, imprimé sur l'étiqueteuse du poste de travail
- Consignes d'échantillonnage : le mapping COR porte les consignes sur
`CstAtt02`, mais le commentaire du ticket évoque `CstAtt01` → point à
confirmer avec le client (mail à faire, @Arthur)
- Dépendance `CstAtt10` (Stage) côté ITM : requis pour l'étiquette
d'échantillonnage (LIM-107) ; à vérifier en préprod (@Nicolas) → voir
[Questions ouvertes](../08-transverse/questions-ouvertes.md)
## Historique des modifications
| Date | Auteur | Modification |
|------|--------|--------------|
| 2026-05-05 | Arthur | Création initiale depuis AF V1.5 |
| 2026-07-20 | Arthur | LIM-107 (lecture directe) : section « Étiquette d'échantillonnage » (format A5, 12 champs, report `CST_RPT_ECHANTILLONAGE`, impression étiqueteuse poste via flux COR/COF) ; question format d'étiquette résolue ; front matter jira_refs/sources/last_updated |
| 2026-07-20 | Arthur | LIM-112 (lecture directe, Ouvert) : flux complet - mapping COR (Code/Description/Priority 3/CstAtt01 nb pal/CstAtt02 consignes/ProductCode-LotCode inversés/Color-Source-Size) ; assignation stock refondue (CstAtt01, prérequis palette, OrderByDesc bloquée puis profondeur, éditabilité CstAtt01 manuel) ; règle transverse indisponibilité stock ; orchestration Mega Job PK LIM-70 + sous-workflow + big-bag ; séquence opérateur (recomptage standalone, validation ligne inventaire, AGV→table entrée→PIE) ; nouvelle section « Clôture et émission du COF » ; big-bag confirmé ; 200g non déduit résolu ; 2 questions ouvertes (consignes CstAtt01/02, dépendance CstAtt10 Stage) ; front matter jira_refs +LIM-112/sources/tags |
## Références
| Source | Type | Date |
|--------|------|------|
| FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5 | Analyse fonctionnelle | 28/11/2025 |
| [LIM-107](https://easywmsfrance.atlassian.net/browse/LIM-107) | Ticket Jira (étiquettes expédition/échantillonnage, en revue de code) | 2026 |
| [LIM-112](https://easywmsfrance.atlassian.net/browse/LIM-112) | Ticket Jira (process échantillonnage complet COR→COF, Ouvert) | 2026 |