196 lines
8.0 KiB
Markdown
196 lines
8.0 KiB
Markdown
---
|
|
title: "Flux ERP inbound — Messages réception"
|
|
tags: [inbound, ERP, ASN, ROR, ROF, REF, ITM, interface]
|
|
status: draft
|
|
standard_ref: architecture/erp-integration.md
|
|
jira_refs: []
|
|
confluence_refs: []
|
|
sources: [FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5.docx, "CR CONSOLIDES REU ERP LIMAGRAIN V1 - CR.md"]
|
|
last_updated: 2026-05-06
|
|
author: Arthur
|
|
---
|
|
|
|
# Flux ERP inbound — Messages réception
|
|
|
|
> **Résumé** : catalogue des messages ERP liés aux processus de réception
|
|
> chez Limagrain, avec direction, déclencheur et contenu principal.
|
|
|
|
> **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 ERP se fait via **XML + Webservice** entre SAP EWM et
|
|
EasyWMS (service GNA). Tous les messages de réception sont documentés ici.
|
|
Pour les messages d'expédition, voir
|
|
[Flux ERP outbound](../04-outbound/flux-erp-outbound.md).
|
|
|
|
## Messages entrants (SAP → EasyWMS)
|
|
|
|
### ITM — Item Master
|
|
|
|
| Champ | Description |
|
|
|-------|-------------|
|
|
| Direction | ERP → WMS |
|
|
| Déclencheur | Création/modification article dans SAP |
|
|
| Contenu | Code lot SAP, description, propriétaire, UdM, poids brut, conversions, profils, type conteneur, quantité complète, type article (FERT/ZSIZ) |
|
|
| [CUSTOM] | Espèce, génération, marque, variété, traitement commercial, packing unit, code GTIN, semences essais, size, field production area |
|
|
|
|
> ⚠️ Chez Limagrain, les **lots SAP** sont gérés comme des articles (descendus
|
|
> via ITM). L'article Limagrain est un attribut du lot SAP.
|
|
|
|
### ASN — Advanced Shipping Notice
|
|
|
|
| Champ | Description |
|
|
|-------|-------------|
|
|
| Direction | ERP → WMS |
|
|
| Déclencheur | Création HU avec code SSCC en production |
|
|
| Architecture | **1 ASN = 1 palette de production** (pas d'agrégation — permet suppression individuelle en cas d'annulation) |
|
|
| Contenu | Numéro HU, article, lot SAP, [CUSTOM] propriétaire Limagrain, statut de stock, quantité (unités de vente) |
|
|
| Timing | Envoyé dès création de la HU avec code SSCC |
|
|
|
|
**Attributs logistiques dans les lignes ASN** :
|
|
|
|
| Attribut logistique | Champ SAP | Usage |
|
|
|---------------------|-----------|-------|
|
|
| LotCode | Code produit SAP | Différencie produits pour même lot SAP |
|
|
| Color | Propriétaire réel SAP | ≠ "MECALUX" technique |
|
|
| Source | Description produit | Désignation courte SAP |
|
|
| Size | Destination (Pays) | Peut changer |
|
|
|
|
**Statuts de stock** : gérés dès l'ASN. Si stock OK : ne PAS envoyer de
|
|
statut (champ vide ou absent du JSON).
|
|
|
|
**Champs NON utilisés** : DivisionType, ReceiptOrderCode, IsSlave,
|
|
Height/Volume (recalculé au pesage PIE), dates fabrication/expiration,
|
|
numéro de série.
|
|
|
|
### ROR — Reception Order Request
|
|
|
|
| Champ | Description |
|
|
|-------|-------------|
|
|
| Direction | ERP → WMS |
|
|
| Déclencheur | Planification réception dans SAP (extérieures, intersites, retours) |
|
|
| Contenu | Numéro de réception, articles, lots SAP, quantités (unités de vente) |
|
|
| Structure | 1 ROR = 1 livraison SAP (un camion peut contenir plusieurs livraisons) |
|
|
|
|
**Types de réception (InboundType)** :
|
|
|
|
| InboundType | Usage | AccountCode/SupplierCode | Tolérance |
|
|
|-------------|-------|--------------------------|-----------|
|
|
| 0 (Fournisseur) | Livraisons DESADV | SupplierCode = "FOURNISSEUR" | Précisée par SAP (override profil) |
|
|
| 1 (Retour) | Retours clients ORDRSP | AccountCode = "CLIENT" | Illimitée (ReceiveLessAllowed=true) |
|
|
| 3 (Transfert) | Transferts inter-sites | — | 0% (palettes identifiées) |
|
|
|
|
**Paramètres clés** : SingleReceipt = true (pas de reliquat WMS),
|
|
FreeQuantity non nécessaire. Pas de SSCC dans le ROR (récupéré au scan
|
|
RFID en réception).
|
|
|
|
### [CUSTOM] API Lot SAP (retours clients uniquement)
|
|
|
|
| Champ | Description |
|
|
|-------|-------------|
|
|
| Direction | WMS → ERP (requête) puis ERP → WMS (réponse) |
|
|
| Déclencheur | Scan lot officiel inconnu sur poste de travail |
|
|
| Requête | Lot officiel |
|
|
| Réponse OK | Lot SAP, articles possibles, descriptions, destinations + déclenchement ITM |
|
|
| Réponse NOK | Message erreur ("lot n'existe pas" ou "lot non vendu") |
|
|
|
|
## Messages sortants (EasyWMS → SAP)
|
|
|
|
### REF — Reception Fulfilled
|
|
|
|
| Champ | Description |
|
|
|-------|-------------|
|
|
| Direction | WMS → ERP |
|
|
| Déclencheur | **Clôture manuelle** de la réception (action opérateur) |
|
|
| Contenu | Conteneurs réceptionnés, lignes de stock, [CUSTOM] zone de stockage pour chaque palette, 4 attributs logistiques + lot SAP |
|
|
| Structure | Un seul REF par réception (pas de progressif, car SingleReceipt=true). Le ReceiptCode (en-tête) = code réception WMS. Le code de l'ordre d'entrée est au niveau de la **ligne** (`LneRecOrdersPotential`) |
|
|
| Contrainte | L'emplacement de rangement n'est connu qu'après le stockage en ASRS → attendre que toutes les palettes soient stockées avant d'envoyer le REF |
|
|
| Données | S'appuie sur les données **réelles** (pas théoriques) |
|
|
|
|
### ROF — Reception Order Fulfilled
|
|
|
|
| Champ | Description |
|
|
|-------|-------------|
|
|
| Direction | WMS → ERP |
|
|
| Déclencheur | Validation/clôture de l'ordre d'entrée |
|
|
| Rôle | Récapitulatif de l'ensemble des stocks reçus. Signale à l'ERP que l'ordre est fermé (même partiellement). Sans ROF, l'ERP ne clôturerait jamais la commande d'achat |
|
|
| Reliquats | Pas de gestion de reliquats par EasyWMS. Si réception incomplète, c'est SAP qui gère le reliquat |
|
|
| Hors tolérance | ROF bloqué jusqu'à régularisation par le manager dans SAP (customisation requise) |
|
|
|
|
### [CUSTOM] LOC — Location
|
|
|
|
| Champ | Description |
|
|
|-------|-------------|
|
|
| Direction | WMS → ERP |
|
|
| Déclencheur | Palette stockée dans l'ASRS (rangement effectif) |
|
|
| Contenu | Numéro HU, station départ, station arrivée, workzone arrivée, emplacement arrivée |
|
|
| Condition | Généré uniquement si stations départ et arrivée sont différentes |
|
|
|
|
## Diagramme de séquence — Réception production
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
participant SAP
|
|
participant WMS as EasyWMS
|
|
participant GAL as Galileo/PIE
|
|
|
|
SAP->>WMS: ITM (article/lot)
|
|
Note over SAP,WMS: En amont
|
|
SAP->>WMS: ASN (pré-notif HU)
|
|
Note over SAP,WMS: À l'expédition source
|
|
GAL->>WMS: Event PIE (RFID + poids)
|
|
WMS->>WMS: Contrôle poids + rangement
|
|
WMS->>GAL: Tâche stockage
|
|
GAL->>WMS: End (palette stockée)
|
|
WMS->>SAP: LOC (emplacement)
|
|
```
|
|
|
|
## Diagramme de séquence — Réception extérieure
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
participant SAP
|
|
participant WMS as EasyWMS
|
|
participant PK as Poste travail
|
|
participant GAL as Galileo/PIE
|
|
|
|
SAP->>WMS: ROR (ordre réception)
|
|
WMS->>PK: Palette sur poste
|
|
PK->>WMS: Déclaration contenu
|
|
WMS->>GAL: Tâche évacuation → PIE
|
|
GAL->>WMS: Event PIE
|
|
WMS->>WMS: Contrôle + rangement
|
|
GAL->>WMS: End (stockée)
|
|
WMS->>SAP: LOC
|
|
PK->>WMS: Clôture réception
|
|
WMS->>SAP: REF (avec emplacements)
|
|
WMS->>SAP: ROF
|
|
```
|
|
|
|
## Points d'attention
|
|
|
|
⚠️ Le message REF est retardé jusqu'à validation PIE de tous les conteneurs
|
|
(peut prendre du temps si file d'attente PIE longue).
|
|
|
|
⚠️ Le message LOC n'est pas standard — c'est un [CUSTOM] spécifique
|
|
Limagrain pour traçabilité emplacement dans SAP.
|
|
|
|
⚠️ Les modifications dans les master data ne doivent **pas** être faites
|
|
directement dans EasyWMS (risque d'écrasement par prochain ITM).
|
|
|
|
## Historique des modifications
|
|
|
|
| Date | Auteur | Modification |
|
|
|------|--------|--------------|
|
|
| 2026-05-05 | Arthur | Création initiale depuis AF V1.5 |
|
|
| 2026-05-06 | Arthur | Enrichissement ASN (1 par palette, attributs logistiques, champs non utilisés), ROR (InboundType, tolérances, SingleReceipt), REF (clôture manuelle, zone stockage, contrainte rangement), ROF (rôle, reliquats, hors tolérance) — depuis CR consolidé ERP |
|
|
|
|
## 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 | 23/02/2026 |
|