Accueil Cours

La WORKING-STORAGE SECTION : La Mémoire du Programmeur COBOL

La WORKING-STORAGE SECTION est l'endroit où vous définissez les variables et les structures de données internes à votre programme COBOL. Cliquez sur le bloc ci-dessous pour découvrir comment elle est organisée !

WORKING-STORAGE SECTION.

Dans la WORKING-STORAGE SECTION, les données sont organisées hiérarchiquement à l'aide de niveaux numériques. Les niveaux les plus courants sont 01, 77 et 88.

Niveau 01 : Structurer les données complexes

Le niveau 01 est utilisé pour définir un groupe de données principal ou un élément de donnée indépendant. Il est souvent le point de départ pour des structures de données complexes, permettant d'imbriquer d'autres éléments.


01 MonEnregistrement.
   05 NomClient PIC X(30).
   05 AdresseClient.
      10 Rue PIC X(50).
      10 Ville PIC X(30).
                        

Niveau 77 : Variables Simples Indépendantes

Le niveau 77 est réservé aux variables de travail indépendantes, c'est-à-dire des variables qui ne font pas partie d'une structure de données plus grande. Elles sont souvent utilisées pour des compteurs, des indicateurs ou des valeurs temporaires.


77 Compteur PIC 9(5) VALUE ZEROS.
77 TauxInteret PIC 9V99.
                        

Niveau 88 : Noms de Condition (Condition-Names)

Les niveaux 88 ne sont pas des variables à proprement parler, mais des "noms de condition" associés à une variable de niveau inférieur. Ils permettent d'attribuer un nom significatif à une valeur spécifique de cette variable, rendant le code plus lisible et maintenable.


01 StatutCommande PIC X VALUE "P".
   88 EnPreparation VALUE "P".
   88 Expediee VALUE "E".
   88 Annulee VALUE "A".
                        

Grâce aux niveaux 88, au lieu d'écrire IF StatutCommande = "P", vous pouvez simplement écrire IF EnPreparation, ce qui est beaucoup plus clair !

Toutes les variables définies dans la WORKING-STORAGE SECTION sont disponibles et conservent leur valeur pendant toute l'exécution du programme. C'est votre espace de travail principal !