Créer un fichier et écrire des données depuis un paragraphe
En COBOL, les paragraphes sont des blocs d’instructions qui portent un nom. Ils peuvent être exécutés à l’aide du verbe
PERFORM. Un paragraphe se termine soit lorsqu’un autre commence, soit en fin de programme. Cette section illustre comment écrire plusieurs enregistrements dans un fichier en définissant un paragraphe dédié.
1. Comment se termine un paragraphe ?
- ✔ Il peut se terminer naturellement lorsqu’un autre paragraphe commence.
- ✔ S’il est le dernier du programme, il se termine avec l’exécution du
STOP RUN.
En COBOL, vous n'avez pas besoin d’un mot-clé spécifique pour indiquer la fin d’un paragraphe. Il suffit qu’un autre commence ou que le programme s'arrête.
2. Exemple vivant : écrire plusieurs lignes dans un fichier
Voici un programme qui crée un fichier appelé FichierProduits, puis y écrit plusieurs enregistrements contenant un nom de produit et une quantité en stock.
IDENTIFICATION DIVISION.
PROGRAM-ID. Enregistreur.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT FichierProduits ASSIGN TO "produits.txt"
ORGANIZATION IS SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD FichierProduits.
01 EnregistrementProduit.
05 NomProduit PIC X(20).
05 Quantite PIC 9(4).
PROCEDURE DIVISION.
Debut.
PERFORM RemplirFichier
STOP RUN.
RemplirFichier.
OPEN OUTPUT FichierProduits
MOVE "Pommes" TO NomProduit
MOVE 150 TO Quantite
WRITE EnregistrementProduit
MOVE "Bananes" TO NomProduit
MOVE 200 TO Quantite
WRITE EnregistrementProduit
MOVE "Cerises" TO NomProduit
MOVE 90 TO Quantite
WRITE EnregistrementProduit
CLOSE FichierProduits.
3. Étapes de fonctionnement
| Instruction | Fonction |
|---|---|
OPEN OUTPUT |
Crée un nouveau fichier (ou écrase l’existant) et le prépare à l’écriture. |
MOVE ... TO |
Place une valeur dans un champ de l’enregistrement. |
WRITE |
Écrit l’enregistrement actuel dans le fichier. |
CLOSE |
Ferme le fichier proprement une fois l’écriture terminée. |
4. Visualisation du flux d’écriture
5. À retenir
- Un paragraphe COBOL commence par un nom suivi d’un point (
Paragraphe.). - Il peut se terminer implicitement lorsqu’un nouveau paragraphe commence.
- Le verbe
OPEN OUTPUTprépare un fichier à l’écriture. - Le couple
MOVE / WRITEpermet de remplir et écrire un enregistrement. - Le verbe
CLOSElibère le fichier après traitement.
Téléchargez le code source : 🔍 Voir dans un nouvel onglet | 📥 Télécharger le fichier