Action d'annulation de fabrication
Action d’annulation
En standard, les informations suivantes sont récupérées de Tempo par Diapason :
Référence de l’élément à déclarer :
Si déclaration déclenchée via la liste à fabriquer = Référence de l’élément correspondant à la ligne de la liste à partir de laquelle l’action a été lancée
Si déclaration déclenchée via l’écran de déclaration = Référence affichée sur l’écran de déclaration Tempo dans le champ « Référence » (Rq : valeur qui peut être différente de la valeur flashée si modifiée par REB !)
Etape sur laquelle l’élément est en cours de fabrication :
Si déclaration déclenchée via la liste à fabriquer = Etape associée à la ligne de la liste à partir de laquelle l’action a été lancée
Si déclaration déclenchée via l’écran de déclaration = Etape associée à l’élément en cours de fabrication via le paramètre « ETAPE » de la fonction DIALOG « INIT-FABRICATION »
Quantité à déclarer :
Quantité à déclarer indiquée à l’écran, que ce soit pour la liste à fabriquer ou pour l’écran de déclaration
Type de déclaration associée au poste de travail en cours
Type de déclaration associée au poste de travail lors de l’alimentation de la liste des postes de travail
Remarque : Dans l’interface Tempo, le lancement de l’action d’annulation est bloqué dans le cas où le statut de l’élément ne permet pas d’annuler de fabrication (« En attente »).
Action standard d’annulation de fabrication
Si le type de déclaration du poste de travail est l’OF
On commence toujours par annuler la totalité des quantités de l’OF
Recherche de la quantité maximale possible à annuler
Recherche du premier OF à annuler dans la table LAFAtFab avec les conditions :
Table concernée = LAFAtFab
Conditions :
Société RefSocApp = [société de l’utilisateur]
Etape de gamme GamEtaRef = [Etape renvoyée par Tempo]
LanSerFabOF = [Référence envoyée pas Tempo]
Si l’élément à annuler est bien trouvé dans la table LAFAtFab, on recherche l’OF dans la table LASerFab :
Table concernée = LASerFab
Conditions :
Société RefSocApp = [société de l’utilisateur]
Mode de lancement LanModTyp = « L »
LanSerFabOF = [Référence envoyée pas Tempo]
Si l’élément à annuler est bien trouvé dans la table LASerFab , on recherche la première CT rattachée dans la table LAFAtCT :
Table concernée = LAFAtCT
Conditions :
Société RefSocApp = [société de l’utilisateur]
LanSerFabOF = [Référence envoyée pas Tempo]
Calcul de la quantité maximale possible à annuler:
Quantité = LAFAtCT.LanSerCTQteRes / LAFAtCT.LanSerCTQteLan * LASerFab.LanSerFabQteLan
QuantitéMax = LAFAtFab.LanSerFabQteRes
QtéMaxAannuler = QuantitéMax – Quantité
Annulation de la quantité maximale possible à annuler
Si la quantité maximale possible à annuler est supérieure à 0, annulation de fabrication (ENR-ACT-FAB) avec :
Liste WfFabAct :
Action = « FA-DE »
EntTen = « *EVT-FA-DE »
ActCle = [Clé unique]
Liste WfFabDec :
LanSerFabOF = [Référence envoyée par Tempo]
LanSerFabDecCtx = « ANN »
LanSerFabDecMod = « »
GamEtaRef = [Etape envoyée par Tempo]
ActCle = [Clé unique]
Une fois la quantité maximale possible annulée, on redéclare la différence avec la quantité demandée en annulation (cas d’annulation partielles)
Re-déclaration dans le cas d’annulations partielles
Dans le cas d’annulation partielles, après avoir annulé la totalité des quantités de l’OF, il faut redéclarer la quantité qui ne devait pas être annulée. Pour cela, la quantité à redéclarer est calculée par:
QtéAredéclarer = QtéMaxAannuler – [Quantité à annuler envoyée par Tempo]
Et cette quantité est déclarée sur l’OF :
Recherche de l’OF à annuler dans la table LASerFab avec les conditions :
Table concernée = LASerFab
Conditions :
Société RefSocApp = [société de l’utilisateur]
Mode de lancement LanModTyp = « L »
LanSerFabOF = [Référence envoyée pas Tempo]
Si l’élément à annuler est bien trouvé dans la table LASerFab, on recherche la première CT dans la table LAFAtCT :
Table concernée = LAFAtCT
Conditions :
Société RefSocApp = [société de l’utilisateur]
Etape de gamme GamEtaRef = [Gamme envoyée par Tempo]
LanSerFabOF = [Référence envoyée pas Tempo]
Calcul de la quantité à déclarer :
QtéARedecCT = LAFAtCT. LanSerCTQteLan / LASerFab.LanSerCTQteLan * QtéAredéclarer
Enfin, déclaration de fabrication (ENR-ACT-FAB) avec :
Liste WfFabAct :
Action = « FA-DE »
EntTen = « *EVT-FA-DE »
ActCle = [Clé unique]
Liste WfFabDec :
LanSerCTRef = LAFAtCT.LanSerCTRef
LanSerFabOF = [Référence envoyée par Tempo]
LanSerFabDecCtx = « DEC »
LanSerFabDecMod = « FCT »
GamEtaRef = [Etape envoyée par Tempo]
LanSerFabQteTyp = « Q »
LanSerFabQteDec = QtéARedecCT
LanSerReeDecHeu = [Heure au moment de l’exécution]
LanSerReeDecDat = [Date au moment de l’exécution]
ActCle = [Clé unique]
Si le type de déclaration du poste de travail est la CT
On commence toujours par annuler la totalité des quantités de la CT
Recherche de la quantité maximale possible à annuler
On recherche la première CT rattachée dans la table LAFAtCT :
Table concernée = LAFAtCT
Conditions :
Société RefSocApp = [société de l’utilisateur]
Etape de gamme = [Etape envoyée par Tempo]
LanSerCTRef = [Référence envoyée pas Tempo]
Calcul de la quantité maximale possible à annuler:
QtéMaxAannuler = LAFAtCT.LanSerCTQteLan- LAFAtCT.LanSerCTQteRes
Annulation de la quantité maximale possible à annuler
Annulation de fabrication (ENR-ACT-FAB) avec :
Liste WfFabAct :
Action = « FA-DE »
EntTen = « *EVT-FA-DE »
ActCle = [Clé unique]
Liste WfFabDec :
LanSerFabOF = LAFAtCT.LanSerFabOF
LanSerCTRef = [Référence envoyée pas Tempo]
LanSerFabDecCtx = « ANN »
LanSerFabDecMod = « »
GamEtaRef = [Etape envoyée par Tempo]
ActCle = [Clé unique]
Une fois la quantité maximale possible annulée, on redéclare la différence avec la quantité demandée en annulation (cas d’annulation partielles)
Re-déclaration dans le cas d’annulations partielles
Dans le cas d’annulation partielles, après avoir annulé la totalité des quantités de la CT, il faut redéclarer la quantité qui ne devait pas être annulée. Pour cela, la quantité à redéclarer est calculée par :
QtéARedecCT = QtéMaxAannuler – [Quantité à annuler envoyée par Tempo]
Et cette quantité est déclarée sur la CT :
Recherche de la CT dans la table LAFAtCT :
Table concernée = LAFAtCT
Conditions :
Société RefSocApp = [société de l’utilisateur]
Etape de gamme GamEtaRef = [Gamme envoyée par Tempo]
LanSerCTRef = [Référence envoyée pas Tempo]
Enfin, déclaration de fabrication (ENR-ACT-FAB) avec :
Liste WfFabAct :
Action = « FA-DE »
EntTen = « *EVT-FA-DE »
ActCle = [Clé unique]
Liste WfFabDec :
LanSerCTRef = [Référence envoyée par Tempo]
LanSerFabOF = LAFAtCT.LanSerFabOF
LanSerFabDecCtx = « DEC »
LanSerFabDecMod = « FCT »
GamEtaRef = [Etape envoyée par Tempo]
LanSerFabQteTyp = « Q »
LanSerFabQteDec = QtéARedecCT
LanSerReeDecHeu = [Heure au moment de l’exécution]
LanSerReeDecDat = [Date au moment de l’exécution]
ActCle = [Clé unique]
Si le type de déclaration du poste de travail est la Série
Recherche des OFs de la série dans la table LAFAtFab
Table concernée = LAFAtFab
Conditions :
Société RefSocApp = [société de l’utilisateur]
Etape de gamme GamEtaRef = [Etape envoyée par Tempo]
LanSerRef = [Référence envoyée pas Tempo]
Annulation de fabrication (ENR-ACT-FAB) sur chaque OF avec :
Liste WfFabAct :
Action = « FA-DE »
EntTen = « *EVT-FA-DE »
ActCle = [Clé unique]
Liste WfFabDec :
LanSerFabOF = LAFAtFab.LanSerFabOF
LanSerFabDecCtx = « ANN »
LanSerFabDecMod = « »
GamEtaRef = [Etape envoyée par Tempo]
ActCle = [Clé unique]
Si le type de déclaration du poste de travail est le RL
Recherche des CT contenus dans le RL à annuler dans la table LAFAtCT avec les conditions :
Table concernée = LAFAtCT
Conditions :
Société RefSocApp = [société de l’utilisateur]
Etape de gamme GamEtaRef = [Etape envoyée par Tempo]
Annulation de fabrication (ENR-ACT-FAB) sur chaque CT qui respecte la condition :
LAFAtCT.LanSerRLRef = [Référence envoyée par Tempo]
Annulation :
Liste WfFabAct :
Action = « FA-DE »
EntTen = « *EVT-FA-DE »
ActCle = [Clé unique]
Liste WfFabDec :
LanSerCTRef = LAFAtCT.LanSerCTref
LanSerFabOF = LAFAtCT.LanSerFabOF
LanSerFabDecCtx = « ANN »
LanSerFabDecMod = « »
GamEtaRef = [Etape envoyée par Tempo]
ActCle = [Clé unique]
Possibilités de paramétrage spécifique
Si une requête REB est définie dans le champ « Annulation» des paramètres généraux du paramétrage des écrans de fabrication, le comportement standard est intégralement remplacé par le comportement défini dans la REB.
La requête REB qui sera exécutée permet de récupérer en entrée les données de contexte fournies par TEMPO via la fonction DIALOG SW-DIAPASON, d’exécuter du paramétrage DIALOG usuel pour obtenir les données nécessaires et réaliser les actions souhaitées.
Le contexte d’entrée contient les paramètres:
UTILISATEUR = [Identifiant de l’utilisateur Tempo]
POSTE = [Poste de travail]
TYPECODEBARRE = [Type de déclaration (OF, CT, Série, RL)]
REFERENCE = [Référence de l'élément à fabriquer]
ETAPE = [Etape de fabrication spécifiée dans la fonction INIT-FABRICATION]
QUANTITE = [Quantité à déclarer]