136 lines
11 KiB
Markdown
136 lines
11 KiB
Markdown
# Contexte
|
||
|
||
Dans le flux de réception production, les palettes arrivent de la production (ou de l'ancien magasin) et vont **directement dans l'ASRS** sans passer par un poste de travail. Elles sont déchargées par un cariste sur une image de quai puis déclarées via le TRF en type "Production".
|
||
|
||
Ce job périodique crée les tâches de déplacement AGV depuis les images de quai vers le buffer d'entrée production (qui alimente le PIE de l'ASRS). Ce buffer a une route virtuelle vers une table d’entrée du convoyeur.
|
||
|
||
> **Note** : Ce job ne concerne **que** les réceptions de type Production (supports avec CstAtt04 = "ASN"). Les réceptions fournisseur/intersite/retour client sont gérées par [https://easywmsfrance.atlassian.net/browse/LIM-70](https://easywmsfrance.atlassian.net/browse/LIM-70)
|
||
|
||
Le passage du statut "en attente" à "créé" est géré par le WMS standard (Task_GenerateMovementJob_PR). Le module AGV process et GNA qui "l'écoute" (LIM-XXX) envoie ensuite les tâches à la flotte iGo qui gère la file d'attente des AGV.
|
||
|
||
Résumé du process complet de réception production :
|
||
|
||
1. Déclaration sur l'image de quai : [https://easywmsfrance.atlassian.net/browse/LIM-64](https://easywmsfrance.atlassian.net/browse/LIM-64)
|
||
|
||
2. **[Déplacement AGV → Entrée production] ← cette tâche**
|
||
|
||
3. Passage PIE (suppression support virtuel + création palette ASN) : [https://easywmsfrance.atlassian.net/browse/LIM-66](https://easywmsfrance.atlassian.net/browse/LIM-66)
|
||
|
||
4. Stockage ou rejet
|
||
|
||
5. Libération quai / image de quai
|
||
|
||
|
||
**Redirection si PIE saturé** : Gérée en standard par le système de routes et distances configuré dans EasyS (route principale distance 1, routes secondaires distance 2). On ferme le PIE de prod → le WMS redirige automatiquement vers les autres entrées disponibles. Ce job envoie toujours vers la même destination ; c'est le WMS qui reroute si nécessaire.
|
||
|
||
A vérifier si faisable avec plusieurs poumons, plusieurs PIE et si la config EasyS actuelle est prête pour ce mode dégradé.
|
||
|
||
---
|
||
|
||
# Développement
|
||
|
||
### 1. Configuration du job
|
||
|
||
Job périodique. Fréquence : **toutes les 30 secondes.**
|
||
|
||
### 2. Logique principale
|
||
|
||
`POUR CHAQUE support fictif sur une image de quai : │ ├─ 2.1 ÉLIGIBILITÉ DU SUPPORT │ ├─ Séquence commence par 8000* (support fictif) ? │ ├─ CstAtt04 = "ASN" (support de production) ? │ ├─ CstAtt06 est vide (pas encore traité par ce job) ? │ ├─ Aucune tâche active ciblant ce support ? │ │ Statuts actifs = Bloqué, Créé, En attente, │ │ En attente d'annulation, En cours │ │ Statuts historiques (ignorés) = Annulé, Terminé │ └─ Si l'une des conditions NON → passer au support suivant │ ├─ 2.2 MARQUAGE DU SUPPORT │ └─ Setter CstAtt06 = valeur du paramètre DESTINATION_PRODUCTION │ (ex : "ENTREE_PRODUCTION") │ └─ 2.3 CRÉATION DE LA TÂCHE ├─ Origine : sous-emplacement de l'image de quai ├─ Destination : buffer d'entrée production (paramètre DESTINATION_PRODUCTION) └─ Statut initial : "en attente"`
|
||
|
||
### 3. Détails des étapes
|
||
|
||
#### 2.1 Éligibilité du support
|
||
|
||
Le job parcourt tous les supports positionnés sur des images de quai.
|
||
|
||
Un support est éligible si **toutes** les conditions suivantes sont réunies :
|
||
|
||
- **Séquence 800*** : Le support est un support fictif créé lors de la déclaration image de quai ([LIM-64](https://easywmsfrance.atlassian.net/browse/LIM-64))
|
||
|
||
- **CstAtt04 = "ASN"** : Le support est de type production
|
||
|
||
- **Aucune tâche active** : Le support n'est l'objet d'aucune tâche dans un statut actif
|
||
|
||
|
||
La double vérification CstAtt06 + absence de tâche active est une sécurité supplémentaire pour éviter toute création de tâche en doublon.
|
||
|
||
#### Le WMS devra appliquer la stratégie de rangement configurée pour envoyer la palette vers la MU d’entrée à l’est ou à l’ouest (Est par défaut)
|
||
|
||
Le WMS gère ensuite le passage "en attente" → "créé" au fil de l'eau, et le module AGV envoie les tâches à la flotte iGo.
|
||
|
||
---
|
||
|
||
## Paramètres
|
||
|
||
| | | |
|
||
|---|---|---|
|
||
|Paramètre|Description|Valeur par défaut|
|
||
|DESTINATION_PRODUCTION|Code du buffer d'entrée production (destination des tâches AGV)|ENTREE_PRODUCTION|
|
||
|
||
---
|
||
|
||
# Cas de tests
|
||
|
||
### 1. Éligibilité du support
|
||
|
||
| | | | | | | |
|
||
|---|---|---|---|---|---|---|
|
||
|ID|Description|Préconditions|Actions|Résultat attendu|Dév|CDP|
|
||
|1|Support éligible — toutes conditions OK|Support séquence 800*, CstAtt04 = "ASN", CstAtt06 vide, aucune tâche active|Exécution du job|Une tâche est créée pour ce support|||
|
||
|2|Support non ASN → ignoré|Support séquence 800*, CstAtt04 ≠ "ASN" (fournisseur), CstAtt06 vide|Exécution du job|Aucune tâche créée (support géré par [https://easywmsfrance.atlassian.net/browse/LIM-70](https://easywmsfrance.atlassian.net/browse/LIM-70))|||
|
||
|3|Support déjà marqué (CstAtt06 renseigné) → ignoré|Support ASN, CstAtt06 = "ENTREE_PRODUCTION"|Exécution du job|Aucune tâche créée (déjà traité)|Plus utilisé||
|
||
|4|Support avec tâche active "En attente" → ignoré|Support ASN, CstAtt06 vide, 1 tâche en statut "En attente"|Exécution du job|Aucune tâche créée (sécurité doublon via tâche active)|||
|
||
|5|Support avec tâche active "Créé" → ignoré|Support ASN, CstAtt06 vide, 1 tâche en statut "Créé"|Exécution du job|Aucune tâche créée|||
|
||
|6|Support avec tâche active "En cours" → ignoré|Support ASN, CstAtt06 vide, 1 tâche en statut "En cours"|Exécution du job|Aucune tâche créée|||
|
||
|7|Support avec tâche active "Bloqué" → ignoré|Support ASN, CstAtt06 vide, 1 tâche en statut "Bloqué"|Exécution du job|Aucune tâche créée|||
|
||
|8|Support avec tâche active "En attente d'annulation" → ignoré|Support ASN, CstAtt06 vide, 1 tâche en statut "En attente d'annulation"|Exécution du job|Aucune tâche créée|||
|
||
|9|Support avec tâche "Terminé" uniquement → éligible|Support ASN, CstAtt06 vide, tâches uniquement en statut "Terminé"|Exécution du job|Une tâche est créée (tâches terminées = historique)|||
|
||
|10|Support avec tâche "Annulé" uniquement → éligible|Support ASN, CstAtt06 vide, tâches uniquement en statut "Annulé"|Exécution du job|Une tâche est créée (tâches annulées = historique)|||
|
||
|11|Support non fictif (séquence ≠ 800*) → ignoré|Support réel sur image de quai, CstAtt04 = "ASN"|Exécution du job|Aucune tâche créée|||
|
||
|12|Aucun support éligible|Aucun support ASN avec CstAtt06 vide sur les images de quai|Exécution du job|Le job ne fait rien, pas d'erreur|||
|
||
|
||
---
|
||
|
||
### 2. Marquage du support (CstAtt06)
|
||
|
||
| | | | | | | |
|
||
|---|---|---|---|---|---|---|
|
||
|ID|Description|Préconditions|Actions|Résultat attendu|Dév|CDP|
|
||
|13|CstAtt06 mis à jour avec la destination|Support éligible, paramètre DESTINATION_PRODUCTION = "ENTREE_PRODUCTION"|Exécution du job|CstAtt06 du support = "ENTREE_PRODUCTION"|Plus utilisé||
|
||
|14|Marquage de tous les supports éligibles|5 supports ASN éligibles sur une image de quai|Exécution du job|Les 5 supports ont CstAtt06 = "ENTREE_PRODUCTION"|Plus utilisé||
|
||
|15|Supports non ASN non impactés|3 supports ASN + 4 supports fournisseur sur la même image de quai|Exécution du job|Seuls les 3 supports ASN ont leur CstAtt06 mis à jour|Plus utilisé||
|
||
|
||
---
|
||
|
||
### 3. Création des tâches
|
||
|
||
| | | | | | | |
|
||
|---|---|---|---|---|---|---|
|
||
|ID|Description|Préconditions|Actions|Résultat attendu|Dév|CDP|
|
||
|16|1 tâche par support éligible|8 supports ASN éligibles|Exécution du job|8 tâches créées, ni plus ni moins|||
|
||
|17|Statut initial = "En attente"|Support ASN éligible|Exécution du job|Tâche créée en statut "En attente"|Une d’entre elle passe “en cours” car route virtuelle||
|
||
|18|Origine = sous-emplacement image de quai|Support sur sous-emplacement 3 de l'image de quai|Exécution du job|La tâche a pour origine le sous-emplacement 3|||
|
||
|19|Destination = paramètre DESTINATION_PRODUCTION|Paramètre = "ENTREE_PRODUCTION"|Exécution du job|La destination de la tâche est "ENTREE_PRODUCTION"|Plus utilisé, le choix est fait via les stratégies de rangement||
|
||
|20|Destination mise à jour si paramètre modifié|Paramètre changé de "ENTREE_PRODUCTION" à "ENTREE_PROD_2"|Exécution du job avec nouveau support|La tâche pointe vers "ENTREE_PROD_2"|Plus utilisé||
|
||
|
||
---
|
||
|
||
### 4. Double sécurité anti-doublon
|
||
|
||
| | | | | | | |
|
||
|---|---|---|---|---|---|---|
|
||
|ID|Description|Préconditions|Actions|Résultat attendu|Dév|CDP|
|
||
|21|CstAtt06 renseigné mais tâche annulée → pas de recréation|Support ASN, CstAtt06 = "ENTREE_PRODUCTION", tâche existante en "Annulé"|Exécution du job|Aucune tâche créée (bloqué par CstAtt06 déjà renseigné, même si la tâche est en historique)|Plus utilisé||
|
||
|22|CstAtt06 vide mais tâche active → pas de recréation|Support ASN, CstAtt06 vide (cas anormal), 1 tâche en "En cours"|Exécution du job|Aucune tâche créée (bloqué par la tâche active, même si CstAtt06 est vide)|Plus utilisé||
|
||
|23|Les deux conditions vides → tâche créée|Support ASN, CstAtt06 vide, aucune tâche active|Exécution du job|Une tâche est créée et CstAtt06 est renseigné|Plus utilisé||
|
||
|
||
---
|
||
|
||
### 5. Exécutions successives du job
|
||
|
||
| | | | | | | |
|
||
| --- | --------------------------------------------- | --------------------------------------------------------------------------- | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --- | --- |
|
||
| ID | Description | Préconditions | Actions | Résultat attendu | Dév | CDP |
|
||
| 24 | Nouveaux supports traités au prochain cycle | 3 supports ASN traités au cycle précédent, 2 nouveaux supports ASN déclarés | Exécution du job | Seuls les 2 nouveaux supports génèrent des tâches | | |
|
||
| 25 | Pas de doublon sur exécution consécutive | 5 supports ASN traités au cycle précédent, aucun nouveau support | Exécution du job | Aucune tâche créée, pas d'erreur | | |
|
||
| 26 | Mix ASN et fournisseur sur même image de quai | 3 supports ASN + 4 supports fournisseur (CstAtt04 ≠ "ASN") | Exécution du job | Seuls les 3 supports ASN génèrent des tâches. Les 4 supports fournisseur sont ignorés (gérés par [https://easywmsfrance.atlassian.net/browse/LIM-70](https://easywmsfrance.atlassian.net/browse/LIM-70)) | | | |