Aller au contenu

CLOSE

Fermer fichier base de données

En bref

La commande CLOSE (Fermer le fichier de base de données) ferme explicitement un fichier de base de données qui a été ouvert implicitement par une commande RCVF (Recevoir le fichier) dans le même programme CL ou la même procédure CL ILE.

CLOSE se lit CLO (Fermer) + SE. Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.

Syntaxe minimale

CLOSE

Paramètres

  • OPNID ID ouverture fichier

Astuce : dans une session 5250, tapez CLOSE 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 : Oui

La commande CLOSE (Fermer le fichier de base de données) ferme explicitement un fichier de base de données qui a été ouvert implicitement par une commande RCVF (Recevoir le fichier) dans le même programme CL ou la même procédure CL ILE. Un fichier avec le même identificateur d'ouverture doit avoir été déclaré par une commande DCLF (Déclarer un fichier) dans le même programme CL o la même procédure CL ILE.

Une fois que la commande CLOSE est exécutée, la commande RCVF suivante pour ce fichier ouvre implicitement le fichier et lit un enregistrement à partir du fichier.

Vous pouvez utiliser CLOSE pour un fichier de base de données qui est déjà fermé ou n'a jamais été ouvert. Aucun message d'erreur n'est envoyé.

Restrictions :

  • Cette commande est valide uniquement pour les fichiers de base de données dans un programme CL ou une procédure CL ILE. Elle ne peut pas être utilisée avec les fichiers écran.

Paramètres

Mot-clé Description Valeurs possibles Remarques
OPNID ID ouverture fichier Nom simple, *NONE Facultatif

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 : Fermeture d'un fichier de base de données déclaré sans identificateur d'ouverture

DCLF   FILE(MYLIB/MYFILE1)
  :
RCVF
  :
CLOSE
RCVF

Cette commande CLOSE ferme explicitement le fichier de base de données MYFILE1, qui se trouve dans la bibliothèque MYLIB. Les commandes DCLF, RCVF et CLOSE n'ont pas indiqué d'identificateur d'ouverture (paramètre OPNID), ainsi l'identificateur d'ouverture par défaut *NONE va être utilisé. La première commande RCVF (Recevoir le fichier) a ouvert implicitement le fichier MYFILE1. En considérant que la commande CLOSE réussit à fermer le fichier, la deuxième commande RCVF ouvre le fichier et lit un enregistrement dans le fichier.

Exemple 2 : Fermeture d'un fichier de base de données en indiquant un identificateur d'ouverture

DCLF   FILE(*LIBL/MYFILE2)  OPNID(FILE2)
  :
RCVF   OPNID(FILE2)
  :
CLOSE   OPNID(FILE2)
RCVF   OPNID(FILE2)

Cette commande CLOSE ferme explicitement le fichier de base de données MYFILE2, qui se trouve dans la liste des bibliothèques pour le travail. Les commandes DCLF, RCVF et CLOSE qui fonctionnent dans ce fichier doivent toutes indiquer la même valeur d'identificateur d'ouverture (paramètre OPNID). La première commande RCVF (Recevoir le fichier) a ouvert implicitement le fichier MYFILE2. En considérant que la commande CLOSE réussit à fermer le fichier, la deuxième commande RCVF ouvre le fichier et lit un enregistrement dans le fichier MYFILE2.

Messages d'erreur

Messages *ESCAPE

CPF0777
Le fichier &1 de la bibliothèque &2 avec l'identificateur d'ouverture &3 n'est pas fermé.

© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.