--- title: "Échantillonnage - Processus de contrôle qualité" tags: [picking, échantillonnage, inventaire, qualité, poste, custom, cor, cof] status: draft standard_ref: concepts/count.md jira_refs: [LIM-107, LIM-112] confluence_refs: [] 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é > **Résumé** : processus [CUSTOM] d'échantillonnage pour contrôle qualité, > assimilé à un inventaire dans EasyWMS, avec prélèvement sur poste de travail. > **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 produits. Il consiste à prélever environ 200 grammes dans une partie du stock sélectionné. Le prélèvement est ensuite analysé pour valider la qualité du produit fini. Dans EasyWMS, ce processus est assimilé à un **inventaire** (ordre d'inventaire). ## Création de l'ordre d'échantillonnage Deux modes de création : | Mode | Origine | Détail | |------|---------|--------| | Interface ERP | Message **COR** | Spécifie un lot à échantillonner | | Manuel | Interface EasyWMS | Choix d'un lot par l'opérateur | 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 L'assignation diffère selon le mode de création : ### Création par interface ERP - 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** (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 (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 » (= 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 ```mermaid flowchart TD ORDRE[Ordre échantillonnage] --> ASSIGN[Assignation stock] ASSIGN --> POSTE[Assignation poste auto] POSTE --> TACHE[Tâches mouvement créées] TACHE --> ARRIVE[Palette arrive sur TP] ARRIVE --> VERROU{Verrou « Réception » ?} VERROU -->|Oui| RECOUNT[Recomptage] VERROU -->|Non| PRELEV[Prélèvement ~200g] RECOUNT --> PRELEV PRELEV --> ETIQ[Impression étiquette échantillonnage] ETIQ --> SCOTCH[Scotch sac ouvert] SCOTCH --> FILM[Choix filmage] FILM --> EVAC[Évacuation → PIE → stockage] EVAC --> NEXT{Palette suivante ?} NEXT -->|Oui| ARRIVE NEXT -->|Non| FIN[Fin ordre] ``` Les 3 tables de préparation peuvent être occupées simultanément. 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** (LIM-107) 6. Coller l'étiquette sur la pochette (hors EasyWMS) 7. Scotcher le sac ouvert sur la palette (hors EasyWMS) 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 Contrôle identique aux autres processus : - Dimensions max : 1300 × 1100 × 1900 mm - Poids max : 1250 kg - Étiquette RFID connue - État palette bois correct [CUSTOM] Poids de référence recalculé + vérification avec tolérance (voir [Contrôle qualité réception](../01-inbound/controle-qualite-reception.md)). 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 de poste. ⚠️ Les palettes avec verrou « Production » (écart poids) sont traitées 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 - [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 |