Sommaire | ||
---|---|---|
|
...
En migration, il faut donc reprendre les localisations déjà existantes dans Weavy et les intégrer dans Infinity. Pour cela, il faut lancer un export.
Il est fortement conseillé de faire une sauvegarde de la base de données avant de lancer le traitement.
Voici les différentes étapes :
...
Il permet aux clients qui utilisent des surcharges à la génération d’OF de continuer à fonctionner normalement en attendant de reporter les surcharges.
Ouvertures distributeur et correspondances avec le moteur historique
Les Le nouveau moteur n’utilise plus aucun enregistrement publique (G6, BA, BB ...)
Les appels des ouvertures pour les distributeurs du nouveau moteur de décomposition sont centralisées dans le module ggtm600_sql.dhsp
Le parcours des nomenclatures est réalisé en itératif (pas d’appel récursif)
Ce type de parcours implique de faire un traitement en 2 étapes pour générer les OF dans le même ordre que le moteur historique (qui faisait directement le parcourt des éléments fils).
.
Chaque ouverture est appelée avec les paramètres qui sont nécessaires.
Chaque paramètre de la procédure est placée dans le tunnel local via des appels PingLocal
.
La procédure appelle Xmt_Call
pour le code de surcharge dans les modules TT
de chaque programme
Exemple de la procédure ggtm600_sql / Composant_Chargement_Av
Bloc de code | ||
---|---|---|
| ||
public Procedure Composant_Chargement_Av (G6, G6T2_pere, &G6T1, Niveau, NiveauReel)
; Avant
Record GTFDD.dhsd G6
Record GTFDD.dhsd G6T2 G6T2_pere ; Le BA père du composé qui est en cours de traitement
Record GTFDD.dhsd G6T1 ; le composant qui est traité
1 Niveau > GTFDD.dhsd Niv ; Niveau de l'en-tête de production
1 NiveauReel > GTFDD.dhsd Niv ; Niveau en tenant compte des fictifs
beginp
; envoyer les données en ping
PingLocal("PM600_SQL_G6", G6)
PingLocal("PM600_SQL_G6T2_PERE", G6T2_pere)
PingLocal("PM600_SQL_G6T1", G6T1)
PingLocal("PM600_SQL_NIVEAU", Niveau)
PingLocal("PM600_SQL_NIVEAUREEL", NiveauReel)
; Appel de la procédure dans le TT
G3_Xmt_Call ("Composant_Utilisation_Av")
; recupérer les records modifiés par l'ouverture
PingLocalReceiveAndDelete("PM600_SQL_G6T1", G6T1)
endp |
Ouverture pour la génération des OF ggttfab100.dhsp / Composant_Chargement_Av
Bloc de code | ||
---|---|---|
| ||
;*
procedure Composant_Utilisation_Av
; Ouverture pour le moteur de Composant_Utilisation_Av
Record GTFDD.dhsd G6
Record GTFDD.dhsd BB ; Le composant
Record GTFDD.dhsd BA BA_composant ; Si le composant est aussi un composé
1 Niveau > GTFDD.dhsd Niv ; Niveau de l'en-tête de production (y compris fictif)
1 NiveauReel > GTFDD.dhsd Niv ; Niveau en tenant compte des fictifs
beginp
; Lire les enregistrements transmis par la procedure [ggtm600_sql.dhsp / Composant_Utilisation_Av]
PingLocalReceive("PM600_SQL_G6", G6)
PingLocalReceive("PM600_SQL_BB", BB)
PingLocalReceive("PM600_SQL_BA_composant", BA_composant)
PingLocalReceive("PM600_SQL_NIVEAU", Niveau)
PingLocalReceive("PM600_SQL_NIVEAUREEL", NiveauReel)
; Modifier les données de BB et BA_Composant ici
; retourner les enregistrements modifiés à [ggtm600_sql.dhsp / Composant_Utilisation_Av]
PingLocal("PM600_SQL_BB", BB)
PingLocal("PM600_SQL_BA_composant", BA_composant)
endp |
Le parcours des nomenclatures est réalisé en itératif (pas d’appel récursif) pour limiter les instructions SQL.
Ce type de parcours implique de faire un traitement en 2 étapes E1 + E2 afin de conserver l’ordre de génération des OF.
Les 2 étapes sont :
E1 : Le parcours de construction pour → il sert essentiellement à alimenter les listes
BA
, +BB
et réaliser les appels de des ouverturesxxx_av
qui permettent d’agir sur lesBA
+BB
E2 : le parcours d'ouverture → il sert à refaire le parcours des listes
BA
+BB
en explorant les fils et à réaliser les appels des ouverturesxxx_ap
Moteur X.12 |
---|
Appel
Rôle et prototype
(ggtm600_sql) | Appel | Rôle et prototype | Moteur historique (tt) |
---|---|---|---|
| INIT | Permet de débrayer le test des boucles infinies
|
|
| E1 | L’appel est fait avant d’utiliser le composé
|
|
| |
| E1 | L’appel est fait avant de stocker l’enregistrement lié au composé
|
|
|
| |
| E2 | L’appel est fait après le traitement du composé
|
|
|
|
|
| |
| E1 | L’appel est fait avant de stocker l’enregistrement lié au composant
|
|
| |
| E1 | L’appel est fait avant d’utiliser le composant |
ou son
|
|
| |
| E2 | L’appel est fait après le traitement du composant
|
|
|
|
| |
| E1 | Permet de valider le test de stock d’un composant
|
|
|
| |
| E1 | Le parcours des composants du composé est terminé
|
|
|
|
Decomposition_avec_test_boucle_infinie
E1
public function char Decomposition_avec_test_boucle_infinie()
Decomposition_avec_test_boucle_infinie
| E1 | Règle de découpage des lots
|
|
| E1 |
Permet d’initialiser la quantité du composé secondaire dans la ventilation
|
|
|