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
337 lines
15 KiB
Markdown
337 lines
15 KiB
Markdown
---
|
|
title: "Catalogue des messages ERP - Référence complète"
|
|
tags: [ERP, messages, interface, SAP, catalogue, ITM, ASN, ROR, ROF, REF, SOR, RUT, SOF, LOF, PCK, MOV, STV, STR, STC, SCR, WSC, COR, COF, LOC, ERR, CHG]
|
|
status: draft
|
|
standard_ref: concepts/erp-interface.md
|
|
jira_refs: [LIM-113, LIM-117]
|
|
confluence_refs: []
|
|
sources: [FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5.docx, "Expédition - LIMAGRAIN - DEV - Confluence.md", "CR CONSOLIDES REU ERP LIMAGRAIN V1 - CR.md", "Jira LIM-113 (lecture directe 2026-07-20)"]
|
|
last_updated: 2026-07-20
|
|
author: Arthur
|
|
---
|
|
|
|
# Catalogue des messages ERP - Référence complète
|
|
|
|
> **Résumé** : tableau de référence de tous les messages d'interface entre
|
|
> SAP EWM et EasyWMS chez Limagrain, classés par domaine fonctionnel.
|
|
|
|
> **Standard EasyWMS** : → voir [ERP Integration](../../concepts/erp-interface.md)
|
|
> Ce qui suit documente les **spécificités Limagrain** par rapport au standard.
|
|
|
|
## Contexte projet
|
|
|
|
La communication entre SAP EWM et EasyWMS utilise XML + Webservice.
|
|
Le détail des champs est dans le document « Liste Interfaces LIMAGRAIN »
|
|
(fichier séparé). Cette page référence la typologie et le rôle de chaque
|
|
message.
|
|
|
|
## Tableau synthétique
|
|
|
|
### SAP → EasyWMS (flux entrants)
|
|
|
|
| Domaine | Message | Standard/Custom | Description | Statut |
|
|
|---------|---------|-----------------|-------------|--------|
|
|
| Master Data | ITM | Standard | Fiche article (Lot SAP) | ✅ Validé |
|
|
| Réception | ASN | Standard | Réception production (1 par palette) | ✅ Validé |
|
|
| Réception | ROR | Standard | Réceptions externes + retours clients | ✅ Validé |
|
|
| Expédition | SOR | Standard | Ordres de sortie (prod/recertif) | ✅ Validé |
|
|
| Expédition | RUT | Standard | Routes / tournées client | ✅ Validé |
|
|
| Stock | STR | Standard | Demande changement de stock (article, statut) | ✅ Validé |
|
|
| Inventaire | COR | Standard | Demande d'échantillonnage | ✅ Validé |
|
|
| Inventaire | SCR | Standard | Demande image de stock de l'entrepôt | ✅ Validé |
|
|
|
|
### EasyWMS → SAP (flux sortants)
|
|
|
|
| Domaine | Message | Standard/Custom | Description | Statut |
|
|
|---------|---------|-----------------|-------------|--------|
|
|
| Réception | REF | Standard | Finalisation de réception (+ zone stockage) | ✅ Validé |
|
|
| Réception | ROF | Standard | Clôture d'ordre d'entrée | ✅ Validé |
|
|
| Expédition | SOF | Standard | Finalisation ordre de sortie | 🟡 Phase 2 |
|
|
| Expédition | LOF | Standard | Finalisation de chargement | ✅ Validé |
|
|
| Stock | STV | Standard | Variation de stock | ⚠️ **DÉSACTIVÉ** (remplacé par LOC) |
|
|
| Stock | STC | Standard | Notification changement de statut | ⚠️ **DÉSACTIVÉ** (remplacé par LOC) |
|
|
| Stock | LOC | [CUSTOM] | Message périodique delta 5 min | ✅ Validé |
|
|
| Stock | WSC | Standard | Image de stock journalière | 🟡 Volumétrie à vérifier |
|
|
| Inventaire | COF | Standard | Confirmation d'échantillonnage | 🟡 Traitement à confirmer |
|
|
| Expédition | PCK | [CUSTOM] | Passage conteneur client | ⚠️ **REMPLACÉ** par LOC |
|
|
| Erreur | ERR | Standard | Erreur d'importation de message | ✅ Validé |
|
|
|
|
### Flux supprimés ou non retenus
|
|
|
|
| Message | Statut | Raison |
|
|
|---------|--------|--------|
|
|
| MOV | **Supprimé** | Redondant avec LOC + STR combinés |
|
|
| PCK | **Remplacé** par LOC | Le LOC périodique couvre le besoin |
|
|
| STV | **Désactivé** | Le LOC devient le seul canal stock (décision 30/04/2026) |
|
|
| STC | **Désactivé** | Statuts hors retour = B6 uniquement via LOC |
|
|
| ACC/SUP | **Non transmis** par l'ERP | Base client/fournisseur non interfacée |
|
|
| ROC | **Non utilisé** a priori | À confirmer côté Limagrain |
|
|
|
|
### Messages bidirectionnels / custom
|
|
|
|
| Domaine | Message | Direction | Standard/Custom | Description |
|
|
|---------|---------|-----------|-----------------|-------------|
|
|
| Réception | API Lot | WMS ↔ ERP | [CUSTOM] | Demande/réponse lot SAP pour retours clients |
|
|
| Stock | CHG | ERP → WMS | [CUSTOM] | Changement article et/ou propriétaire |
|
|
|
|
## Messages custom détaillés
|
|
|
|
### PCK - Passage Conteneur Client
|
|
|
|
- **Déclencheur** : stock préparé, passage en conteneur client EasyWMS
|
|
- **Contenu** : information passage conteneur client
|
|
- **Envoyé pour** : commande client, consommation OF hors recert, messagerie
|
|
- **Voir** : [Flux ERP outbound](../04-outbound/flux-erp-outbound.md)
|
|
|
|
### ~~MOV - Movement~~ ANNULÉ
|
|
|
|
> **ANNULÉ** - décision réunion client, jugé inutile.
|
|
|
|
- ~~**Déclencheur** : déplacement de stock entre palettes~~
|
|
- ~~**Contenu** : palette d'origine, palette de destination, quantité~~
|
|
|
|
### LOC - Message périodique (détaillé)
|
|
|
|
- **Déclencheur** : Job toutes les 5 min → WF → transaction `LOC.SEND` → GNA
|
|
(script BOO) → POST SAP-CPI
|
|
- **Remplace** : PCK, MOVE, STV, STC
|
|
- **Actions** : B (déplacement), U/R (statut B6), S (suppression), T (transfert
|
|
inter-HU), C (correction quantité), **P (assignation client)**
|
|
- **Quantités** : valeurs absolues (pas des écarts) sauf ACTION=S et T
|
|
- **Exclusion** : palettes dont la réception n'est pas fermée (pas de REF)
|
|
- **Approche technique** : fork du WSC avec filtre temporel sur CreationDate
|
|
- **Transport** : via GNA → SAP-CPI (OAuth 2.0 client_credentials) -
|
|
code CPI : **ATH201**
|
|
- **Voir** : [Spécification complète LOC](loc-message-periodique.md),
|
|
[Intégration GNA → SAP-CPI](gna-sap-cpi.md),
|
|
[Flux ERP outbound](../04-outbound/flux-erp-outbound.md)
|
|
|
|
### STV - Variation de Stock (⚠️ DÉSACTIVÉ)
|
|
|
|
> ⚠️ **Décision 30/04/2026** : le STV est désactivé (post-processing coupé).
|
|
> Le LOC devient le seul canal de notification des mouvements de stock vers SAP.
|
|
|
|
- **Direction** : WMS → SAP
|
|
- **Rôle initial** : notifier les ajustements de quantités manuels (hors flux
|
|
standards réception/expédition)
|
|
- **Mapping clé** :
|
|
|
|
| Balise | Utilisation |
|
|
|--------|-------------|
|
|
| Operation | C (positif) / D (négatif) |
|
|
| Site | WF02 |
|
|
| ItemCode | Code lot SAP |
|
|
| OwnerCode | MECALUX |
|
|
| ContainerCode | Numéro HU |
|
|
| FilterAttributes | Attributs du stock existant modifié |
|
|
| Attributes | Attributs du stock nouvellement créé |
|
|
| ReasonCode | AJUSTEMENT MANUEL |
|
|
| ERPReasonCode | ZSC1 |
|
|
| Comment | Facultatif (opérateur) |
|
|
|
|
- **Point ouvert** : Limagrain doit définir comment gérer côté ERP un STV de
|
|
type "création de stock" (l'ERP n'autorise pas la création de stock par ce
|
|
biais aujourd'hui)
|
|
- **Raison désactivation** : Limagrain préfère des quantités absolues (LOC)
|
|
plutôt que des écarts +/- (STV) - si un message se perd, l'écart est
|
|
définitivement perdu
|
|
|
|
### STR - Demande de Changement de Stock
|
|
|
|
- **Direction** : ERP → WMS
|
|
- **Cas d'usage** : changement de code article (produit SAP + description),
|
|
changement de propriétaire, blocage/déblocage de lot
|
|
- **Règles d'acceptation** :
|
|
- **Accepté** si la palette n'est pas assignée à une commande ou en cours
|
|
de mouvement
|
|
- **Refusé** si palette "client" ou en préparation (code erreur API explicite)
|
|
- **Interaction avec STV** : ajustement avec motif "STR" → le middleware (GNA)
|
|
ne traite pas les STV avec ce motif pour éviter les doublons
|
|
- **Monitoring** : Limagrain mettra en place un monitoring des erreurs pour
|
|
les cas de refus
|
|
- **Voir** : [Mapping ERP-WMS](mapping-erp-wms.md)
|
|
|
|
### COR - Demande d'Échantillonnage
|
|
|
|
- **Direction** : ERP → WMS
|
|
- **Usage** : **uniquement** pour les demandes d'échantillonnage (pas pour les
|
|
inventaires physiques classiques, gérés dans EasyWMS en phase 1)
|
|
- **Mapping** :
|
|
|
|
| Balise | Valeur |
|
|
|--------|--------|
|
|
| Description | "ECHANTILLONNAGE" (en dur, discriminant WMS) |
|
|
| Code | Numéro du lot d'inspection SAP |
|
|
| Priority | 3 (basse) |
|
|
| ProductCode | Code lot SAP |
|
|
| LotCode | Code produit SAP |
|
|
| Color, Source, Size | Attributs logistiques standards |
|
|
|
|
- **Flux** : COR envoyé → WMS fait venir la palette sur un poste de travail →
|
|
opérateur prélève → palette repart en stockage → COF envoyé
|
|
- **Règle** : un article en cours d'échantillonnage **n'est pas disponible**
|
|
pour les ordres de sortie
|
|
- **Voir** : [Échantillonnage](../03-picking/echantillonnage.md)
|
|
|
|
### COF - Confirmation d'Échantillonnage
|
|
|
|
- **Direction** : WMS → ERP
|
|
- **Mapping** :
|
|
|
|
| Balise | Description |
|
|
|--------|-------------|
|
|
| CountCode | Numéro du lot d'inspection |
|
|
| Status | Closed (effectué) ou Cancelled (annulé) |
|
|
| UpdateDate | Date/heure de changement |
|
|
|
|
- **Point ouvert** : Limagrain doit confirmer si le COF sera traité côté ERP.
|
|
Si non traité, risque de demandes en double.
|
|
|
|
### WSC - Image de Stock Journalière
|
|
|
|
- **Direction** : WMS → ERP
|
|
- **Rôle** : image de stock complète pour vérification de cohérence. Contient
|
|
l'ensemble du stock : code OS, statut palette, toutes les informations
|
|
disponibles
|
|
- **Démarrage** : export manuel EasyWMS + export SAP + comparaison.
|
|
Automatisation possible ultérieurement (quotidien à heure fixe)
|
|
- **Point d'attention** : Limagrain doit vérifier sa capacité à traiter ce
|
|
fichier (volumétrie potentiellement élevée pour CPI)
|
|
- **Déclenchement** : transaction `SCR.REQ` ou `STOCKSYNC.ASKED`
|
|
|
|
### STC - Notification Changement de Statut (⚠️ DÉSACTIVÉ)
|
|
|
|
> ⚠️ **Décision 30/04/2026** : le STC est désactivé. Les changements de statut
|
|
> hors retour sont limités au B6 (blocage logistique standard) et sont couverts
|
|
> par le LOC (action R/U). Les statuts des retours sont remontés dans le REF.
|
|
|
|
### CHG - Changement article / propriétaire (LIM-113)
|
|
|
|
- **Déclencheur** : modification article / propriétaire / destination dans SAP
|
|
(cas principal : bascule de propriétaire en clôture fiscale, ex. FR10→FR02),
|
|
sans mouvement physique de la palette
|
|
- **Mécanisme** : `StartWorkflowCommand` → WF custom `CST_CHG_WF` sur
|
|
`CustomApplication` ; SAP envoie l'identité complète de la HU (9 champs :
|
|
containerCode, ContainerTypeCode, productCode, Quantity, UnitOfMeasureCode,
|
|
LotCode, Color=propriétaire, Source=description, Size=destination)
|
|
- **Contrainte** : modification seulement si la HU et ses lignes ne sont
|
|
engagées dans **aucun** flux (refus tout ou rien). **Statut de stock exclu**
|
|
(passe par STR, appel séparé)
|
|
- **Acquittement** : **200** en succès, **500** (throw exception) en refus/erreur
|
|
- **Voir** : [Mapping ERP-WMS](mapping-erp-wms.md#message-chg---changement-article--propriétaire-lim-113)
|
|
|
|
### API Lot SAP - Retours clients
|
|
|
|
- **Déclencheur** : lot officiel inconnu lors d'un retour client
|
|
- **Contenu (demande)** : lot officiel à vérifier
|
|
- **Contenu (réponse)** : lot SAP correspondant + attributs logistiques
|
|
- **Parallèle** : un ITM est descendu avec les infos article
|
|
- **Voir** : [Réception retour](../01-inbound/reception-retour.md)
|
|
|
|
## Flux par processus
|
|
|
|
### Réception production (ASN)
|
|
|
|
```
|
|
SAP → ASN → EasyWMS → (réception + stockage) → REF → SAP
|
|
→ ROF → SAP
|
|
→ LOC (delta 5 min) → SAP
|
|
```
|
|
|
|
### Réception extérieure / retour (ROR)
|
|
|
|
```
|
|
SAP → ROR → EasyWMS → (réception + contrôle) → REF → SAP
|
|
→ ROF → SAP
|
|
→ LOC (delta 5 min) → SAP
|
|
```
|
|
|
|
### Expédition client (RUT)
|
|
|
|
```
|
|
SAP → RUT → EasyWMS → (picking + chargement) → LOC (delta 5 min) → SAP
|
|
→ LOF → SAP
|
|
→ SOF → SAP (phase 2)
|
|
```
|
|
|
|
> **Adresse de livraison (LIM-117)** : la liste de SOR d'un RUT n'expose pas
|
|
> les champs d'adresse standard ; SAP la transmet dans le `CustomAttribute`
|
|
> (Attribute1-7) de chaque SOR, mappé sur l'OS par un post-subscription WMS.
|
|
> Détail : [Flux ERP outbound - Adresse de livraison](../04-outbound/flux-erp-outbound.md#custom-adresse-de-livraison-des-sor-de-tournée-lim-117).
|
|
|
|
### Consommation OF (SOR)
|
|
|
|
```
|
|
SAP → SOR → EasyWMS → (sortie) → LOC (delta 5 min) → SAP
|
|
→ SOF → SAP (phase 2)
|
|
```
|
|
|
|
### Échantillonnage
|
|
|
|
```
|
|
SAP → COR → EasyWMS → (prélèvement poste) → COF → SAP
|
|
```
|
|
|
|
### Image stock (vérification cohérence)
|
|
|
|
```
|
|
SAP → SCR → EasyWMS → WSC → SAP (image complète)
|
|
```
|
|
|
|
### Changement de stock
|
|
|
|
```
|
|
SAP → STR → EasyWMS → (MAJ stock) → LOC (delta 5 min) → SAP
|
|
OU → ERR → SAP (si stock assigné)
|
|
```
|
|
|
|
## Points d'attention
|
|
|
|
⚠️ **STV et STC désactivés** (décision 30/04/2026) - le LOC est le seul canal
|
|
de notification des mouvements de stock vers SAP.
|
|
|
|
⚠️ Le message CHG (WF `CST_CHG_WF`) est **refusé** si la HU ou une de ses
|
|
lignes est engagée dans un flux : refus **tout ou rien**, remonté en **500**
|
|
(throw exception) avec le motif - pas un plantage mais un refus métier (LIM-113).
|
|
|
|
⚠️ MOV, PCK sont **supprimés/remplacés** - le LOC couvre tous ces besoins.
|
|
|
|
⚠️ L'ASN envoie 1 palette par message (pas d'agrégation - permet suppression
|
|
individuelle en cas d'annulation).
|
|
|
|
⚠️ Le STR est refusé si la palette est assignée "client" ou en préparation.
|
|
Le middleware GNA filtre les STV avec motif "STR" pour éviter les doublons
|
|
(caduc si STV globalement désactivé).
|
|
|
|
⚠️ Le COF n'est utile que si SAP le traite - sinon risque de demandes
|
|
d'échantillonnage en double.
|
|
|
|
## Questions ouvertes
|
|
|
|
- ❓ Détail champ par champ de chaque message - document séparé à intégrer (@Arthur)
|
|
- [x] ~~Format exact du message CHG (@Nicolas)~~ → **Résolu** (LIM-113) : `StartWorkflowCommand` / `CST_CHG_WF`, 9 champs JSON (voir [Mapping ERP-WMS](mapping-erp-wms.md#message-chg---changement-article--propriétaire-lim-113))
|
|
- ❓ Confirmer si le COF sera traité côté ERP (@Limagrain)
|
|
- ❓ Vérifier capacité de traitement du WSC quotidien - volumétrie (@Limagrain)
|
|
- ❓ Confirmer retour fournisseur : SOR simple ou RUT ? (@Limagrain)
|
|
- ❓ Effets de bord désactivation STV - lister toutes les transactions
|
|
STK.ADJ et vérifier couverture LOC (@Mecalux)
|
|
- ❓ Effets de bord désactivation STC - idem pour CST.STK (@Mecalux)
|
|
|
|
## Historique des modifications
|
|
|
|
| Date | Auteur | Modification |
|
|
|------|--------|--------------|
|
|
| 2026-05-05 | Arthur | Création initiale depuis AF V1.5 |
|
|
| 2026-05-05 | Arthur | MOV annulé, LOC détaillé (5 min, delta, structure JSON, flag client) |
|
|
| 2026-05-06 | Arthur | Enrichissement complet depuis CR consolidé ERP (STV, STR, COR/COF, WSC, flux supprimés, désactivation STV/STC) |
|
|
| 2026-07-20 | Arthur | LIM-113 : refonte entrée CHG (mécanisme `StartWorkflowCommand`/`CST_CHG_WF`, 9 champs, refus tout ou rien, statut exclu, acquittement 200/500) ; point d'attention CHG mis à jour ; question « format CHG » résolue ; front matter jira_refs/sources/last_updated |
|
|
| 2026-07-20 | Arthur | LIM-117 (LOT 2.1, Ouvert) : note « Adresse de livraison » sur le flux RUT (adresse dans `CustomAttribute` des SOR, mapping post-subscription vers l'OS) + renvoi vers flux-erp-outbound.md ; jira_refs +LIM-117 |
|
|
|
|
## Références
|
|
|
|
| Source | Type | Date |
|
|
|--------|------|------|
|
|
| FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5 | Analyse fonctionnelle | 28/11/2025 |
|
|
| CR CONSOLIDES REU ERP LIMAGRAIN V1 | CR ateliers interfaçage | 05/01 → 23/02/2026 |
|
|
| Expédition - LIMAGRAIN - DEV | Page ateliers DEV | 2026 |
|