ADELIA |
|
|
|
|
(I/B) |
|
|
|
|
Attention : cet ordre n'est valable que pour Adélia/400.
Paragraphe d'utilisation
Tous
Syntaxe
INSERER ModuleSpécifique
Description
Cet ordre permet d'insérer des modules externes écrits dans le même langage que le L3G à générer (RPG).
Lors de leur définition, ces modules peuvent être stockés de deux manières différentes :
-
accessibles par tous les modèles,
directement associés au modèle.
HA£DC3 |
Modules d'insertion par modèle |
Modèle à traiter . . . . . ______
Afficher à partir de . . . ______
Indiquez vos options, puis appuyez sur ENTREE.
1=Choisir
Opt |
Code |
Désignation |
_ |
EDICA |
Edition de la liste du chiffre d'affaires client |
_ |
EDICAT |
Edition pour essai table à 2 dimensions |
_ |
EDICA2 |
Edition chiffre d'affaires pour un client |
_ |
EXEMP4 |
exemple 4: Matching (lectures parallèles, rupture) |
_ |
EXPAID |
Explication aide sur zone |
_ |
GESPER |
Mise à jour personnel gestion curseur |
_ |
INTART |
Interrogation des articles |
_ |
INTCLI |
Interro. Clients par mot dir. + SFLDROP |
_ |
INTCL2 |
Visu Clients et prospect mot dir. + SFLDROP |
_ |
INTFAM |
Interrogation famille article + |
F3=Exit F12=Précédent
Modules d'insertion par modèle
Le nom du module (facultatif) fait 8 caractères maximum. Il est précédé par une spécification de type : /MOD NomModule. Le "/" est en position 1.
Cas de génération RPG
Le nom du fichier source contenant les modules est QRPGSRCX.
Il existe des points d'insertion standard que l'on peut associer directement au modèle et pour lesquels l'ordre INSERER n'a pas besoin d'être utilisé.
/MOD PGMFILE |
Spécifications de fichiers. |
/MOD PGMTABC |
Tables chargées à la compilation (valeurs). |
/MOD PGMI |
Spécifications E et I (dans cet ordre). |
/MOD PGMDS |
Spécifications de Data Structures (DS). |
/MOD PGMO |
Spécifications de sortie. |
Par exemple
Voici un module RPG (modules d'insertion généraux) :
/MOD TESTN
C* |
Module de contrôle par l'instruction RPG TESTN |
C* |
ENTREE : Une variable alpha à tester de 30 caractères àTEST |
C* |
SORTIE : Une variable alpha de 1 caractère WàCR |
C* |
qui peut prendre 4 valeurs- |
C* |
A Si chiffres précédés d'espaces |
C* |
B Si tout à blanc |
C* |
C Si que des chiffres |
C* |
E Si pas numérique |
C* |
Remise à blanc de variables pour sauvegarde des indicateurs |
C |
MOVE ' ' Wà30 1 |
C |
MOVE ' ' Wà31 1 |
C |
MOVE ' ' Wà32 1 |
|
|
C* |
Remise à blanc du code retour |
C |
MOVE ' ' WàCR 1 |
C* |
Mise à '1' de la variable correspondant à l'indicateur |
C |
30 MOVE '1' Wà30 1 |
C |
31 MOVE '1' Wà31 1 |
C |
32 MOVE '1' Wà32 1 |
C* |
Mise OFF des trois indicateurs |
C |
SETOF 303132 |
C* |
Test à blanc de la variable |
C |
àTEST IFEQ *BLANK |
C |
SETON 32 |
C |
ELSE |
C* |
Test à blanc du premier octet de la variable |
C |
MOVELàTEST WààT1 1 |
C |
WààT1 COMP ' ' 31 |
C* |
Transfert de la variable dans une zone de 30 caractères |
C |
MOVEL*ZEROS WààT 30 |
C |
MOVELàTEST WààT |
C* |
Test numérique de la variable |
C |
TESTN WààT 30 |
C |
END |
C* |
Les trois indicateurs OFF alors erreur |
C |
N30N31N32 MOVE 'E' WàCR |
C* |
30 est ON alors la zone ne contient que des chiffres |
C |
30 MOVE 'C' WàCR |
C* |
31 est ON alors la zone commence par des espaces |
C |
31 MOVE 'A' WàCR |
C* |
32 est ON alors la zone ne contient que des espaces |
C |
32 MOVE 'B' WàCR |
C* |
Réactivation de la bonne valeur des indicateurs |
C |
Wà30 COMP '1' 30 |
C |
Wà31 COMP '1' 31 |
C |
Wà32 COMP '1' 32 |
Dans le prototype Adélia :
* Test numérique du n° téléphone
VARIABLE_TESTN = Z_CODE_TELEPHONE
INSERER TESTN
* Si code retour = 'E', envoyer le message 0011
*
PREPARER_MSG 0011 Z_CODE_TELEPHONE
SI CODE_RET_TESTN = 'E'
ERREUR
FIN
Les variables sont définies comme suit :
àTEST |
VARIABLE_TESTN |
30 |
*NODEF |
WàCR |
CODE_RET_TESTN |
1 |
*NODEF |