ADELIA |
|
|
|
|
(I/B) |
|
|
|
|
Paragraphe d'utilisation
Tous
Syntaxe
APPELER NomPgmOuIdVarAlpha SuiteParamètres
NomPgmOuIdVarAlpha |
→
|
SuiteParamètres Paramètre | Rien |
SuiteParamètres |
→ |
SuiteParamètres Paramètre | Rien |
Description
Cet ordre permet de donner la main au programme dont le nom Adélia est NomPgm ou au programme dont le nom IBM est contenu dans la variable alphanumérique IdVarAlpha.
Le programme doit être référencé dans le glossaire des programmes Adélia.
NomPgm doit être le mot directeur du programme dans le glossaire. Si le nom du programme est placé dans une variable (&W_NOMPROG par exemple), Adélia ne vérifie pas son existence dans le glossaire des programmes.
Le nom du programme est suivi des variables paramètres SuiteParamètres (maximum 99).
Ces paramètres doivent correspondre à la description indiquée dans le glossaire des programmes (type, longueur et nombre de décimales).
L'association des variables entre le programme appelant et le programme appelé se fait par leur position dans les ordres APPELER et RECEVOIR.
Remarques :
Avec le générateur C, on emploie la syntaxe :
APPELER NomPgmOuIdVarAlpha SuiteParamètres *SERVEUR(nom)
où nom est une entrée du fichier de configuration client-serveur permettant de diriger la commande sur le bon serveur.
- Lorsque la commande est utilisée sans paramètre *SERVEUR, l'appel se fait en local sur le micro.
- Lorsque le paramètre *SERVEUR est indiqué, l'appel du programme se fait sur le serveur AS/400 (Remote Procedure Call) identifié par l'entrée nom.
Pour cette entrée, il faut indiquer le nom d'une bibliothèque de travail dans laquelle Adélia créera (s'il n'existe pas déjà) un programme CLP de même nom que votre programme. Ce programme CLP gèrera les paramètres d'appel de votre programme. La bibliothèque spécifiée ne doit pas faire partie du contexte d'exécution du profil AS/400 servant à la connexion de votre serveur AS/400. En cas de modification des paramètres d'appel de votre programme, il faut supprimer le programme lui correspondant de la bibliothèque de travail.
Avec le générateur RPG, le paramètre *SERVEUR est ignoré.
Par exemple
* appel du programme de contrôle de date
SI DATE_SELECTION <> 0
APPELER CONTROLE_DATE DATE_SELECTION CODE_RETOUR
SI CODE_RETOUR <> *BLANK
PREPARER_MSG 0035 DATE_SELECTION
ANOMALIE
FIN
FIN
* appel du programme batch de liste des clients
SI *F21
APPELER LISTE_CLIENTS
FIN
* au prochain appel, NOM_PGM est chargé soit par DMC010, soit par DMC020
* en fonction d'une touche de fonction
SI *F15 OU *F16
SI *F15
NOM_PGM = 'DMC010'
SINON
NOM_PGM = 'DMC020'
FIN
APPELER &NOM_PGM CODE_SOCIETE CODE_AGENCE
ENVOYER_MSG MSG0002 NOM_PGM
FIN
* Fonctions guide
*
TRT_GUIDE 02
GUIDE ZZ_CODE_CLIENT
APPELER FEN_CLIENT ZZ_CODE_CLIENT
FIN_GUIDE
*
GUIDE ZZ_CODE_CLIENT 01
W_NOM_MEMBRE = 'CODECLI'
APPELER AIDE_SUR_ZONE W_NOM_MEMBRE
FIN_GUIDE
FIN_TRT_GUIDE
*
* Exemple en mode client-serveur
* Le programme appelant est généré en C pour micro ;
* le programme appelé est en RPG sur un AS/400 du réseau.
*
SI *F21
APPELER LISTE_CLIENTS *SERVEUR(AS400_GRENOBLE)
FIN
Voir aussi la liste des ordres L4G par thème