Aller au contenu

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

  • DEV Unité écran
  • RCDFMT Format d'enregistrement
  • OPNID ID ouverture fichier

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)
Compatible multitâche : Non

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.

Paramètres

Mot-clé Description Valeurs possibles Remarques
DEV Unité écran Nom, *FILE Facultatif, positionnel 1
RCDFMT Format d'enregistrement Nom, *FILE Facultatif, positionnel 2
OPNID ID ouverture fichier Nom simple, *NONE Facultatif

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.