SNDF
Envoyer fichier écran
En bref
La commande SNDF (Envoyer un fichier écran) permet à un programme CL ou à une procédure CL ILE d'envoyer un format vers une unité-écran.
Syntaxe minimale
SNDF
Paramètres
Astuce : dans une session 5250, tapez SNDF puis F4 pour
l'invite de saisie, et F1 sur un paramètre pour son aide.
Aide IBM i de la commande
Texte du F1, IBM i 7.5 en français
(bibliothèque QSYS)
Où s'exécute :
- Programme batch (*BPGM)
- Programme interactif (*IPGM)
La commande SNDF (Envoyer un fichier écran) permet à un programme CL ou à une procédure CL ILE d'envoyer un format vers une unité-écran. Il peut s'agir de tout clavier-écran, y compris la console. La commande envoie les données à partir des variables CL du programme vers le fichier écran dans le format d'enregistrement indiqué. Ces variables ont été automatiquement déclarées (une par zone du format d'enregistrement) dans le programme source CL lors de sa compilation lorsqu'une commande DCLF (Déclarer un fichier) a été traitée.
Un seul des formats d'enregistrement indiqués par la commande DCLF peut être défini avec chaque commande SNDF. Si le fichier d'unité n'a pas été ouvert, il l'est par cette commande. Le fichier et le format d'enregistrement indiqués par cette commande peuvent être remplacés à l'aide d'une commande OVRDSPF (Substituer un fichier écran) si celle-ci est émise avant l'ouverture du fichier. Cependant, vérifiez que les zones du format d'enregistrement de substitution correspondent bien aux variables CL déclarées dans le programme.
Restrictions :
- Cette commande est valide uniquement dans un programme CL ou une procédure CL ILE.
- Elle n'est admise que pour un fichier écran.
- Elle n'est pas admise pour un fichier base de données.
Unité écran (DEV)
Indique le nom de l'unité-écran devant recevoir les données des variables CL pour le format d'enregistrement indiqué.
- *FILE
- Les données du programme doivent être envoyées vers l'unité associée au fichier unité (lequel a été déclaré dans le paramètre FILE de la commande DCLF). Si plusieurs noms d'unité figurent dans le fichier d'unité, vous ne pouvez pas indiquer *FILE.
- nom
- Indiquez le nom de l'unité ou celui de la variable CL contenant le nom de l'unité vers laquelle les données du programme doivent être envoyées.
Format d'enregistrement (RCDFMT)
Indique le nom du format d'enregistrement à utiliser pour envoyer les données au fichier. Ce format contient toutes les zones de l'enregistrement. Si le fichier unité contient plusieurs formats d'enregistrement, ce paramètre doit figurer avec le nom de l'un d'entre eux. Dans ce cas, vous ne pouvez pas indiquer *FILE. Si le format d'enregistrement contient le mot clé DDS INVITE, la commande SNDF fonctionne comme si la valeur SNDRCVF WAIT(*NO) était spécifiée.
- *FILE
- Le fichier unité contient un seul format d'enregistrement : le format dans lequel les données du programme doivent être envoyées au fichier.
- nom
- Indiquez le nom du format d'enregistrement à utiliser pour envoyer les données du programme au fichier. Vous ne pouvez pas utiliser ici une variable CL pour indiquer le nom du format d'enregistrement.
ID ouverture fichier (OPNID)
Indique l'ID d'ouverture de fichier déclaré dans une commande DCLF (Déclarer un fichier) précédente dans le même programme CL ou la même procédure CL ILE. Vous ne pouvez pas indiquer une variable CL comme valeur de ce paramètre.
- *NONE
- Aucun ID d'ouverture de fichier n'est fourni. Cette commande utilise le fichier associé à la commande DCLF ayant *NONE indiqué au paramètre OPNID. Un seul fichier peut être déclaré dans un programme CL ou une procédure CL ILE ayant *NONE comme ID d'ouverture de fichier.
- nom-simple
- Indiquez le nom correspondant à la valeur du paramètre OPNID indiqué dans une commande DCLF précédente dans le même programme CL ou la même procédure CL ILE.
Exemples
Exemple 1 : Utilisation d'un fichier écran avec un seul format d'enregistrement
DCLF FILE(MENU1) : SNDF
Le format d'enregistrement dans le fichier d'unité MENU1 est envoyé à l'unité indiquée dans ce fichier. Il n'existe qu'un seul format d'enregistrement dans le fichier.
Exemple 2 : Utilisation d'un fichier écran avec plusieurs formats d'enregistrement
DCLF FILE(SCREEN1) RCDFMT(REC1 REC2) : SNDF DEV(DISP3) RCDFMT(REC1)
Le fichier d'unité nommé SCREEN1 entraîne l'affichage des données envoyées par le programme CL ou la procédure CL ILE sur le clavier-écran. Les données apparaissent au format d'enregistrement REC1 indiqué.
Exemple 3 : Utilisation de l'ID d'ouverture de fichier
DCLF FILE(SCREEN1) RCDFMT(REC1 REC2) OPNID(OUTDSP1) DCLF FILE(SCREEN2) RCDFMT(REC3 REC4) OPNID(OUTDSP2) : SNDF DEV(*FILE) RCDFMT(REC2) OPNID(OUTDSP1)
Le fichier d'unité SCREEN1 est utilisé pour envoyer les données à l'unité-écran nommée dans ce même fichier d'unité. Les données sont présentées à l'utilisateur au format d'enregistrement REC2 indiqué. La commande SNDF est associée au fichier d'unité SCREEN1 car l'ID d'ouverture de fichier indiqué dans cette commande correspond à celui indiqué dans la commande DCLF pour le fichier écran SCREEN1.
Messages d'erreur
Messages *ESCAPE
- CPF0859
- Dépassement de la mémoire tampon E/S dû à une substitution de fichier.
- CPF0861
- Le fichier &1 de &2 n'est pas un fichier écran.
- CPF0864
- Fin du fichier &1 de &2.
- CPF0883
- *FILE incorrect pour le paramètre DEV, dans le fichier &1.
- CPF0887
- Données disponibles consécutivement à la demande d'entrée précédente.
- CPF4101
- Fichier &2 de &3 non trouvé ou fichier spoule en entrée manquant.
- CPF5068
- Unité-programme &4 non trouvée dans fichier &2 de &3.
- CPF5070
- Aucune unité-programme acquise au fichier &2 de &3.
© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.