Cobol ANS 74/Divisions, sections, paragraphes

IDENTIFICATION DIVISION

modifier

Identification du programme, n'est formé que de paragraphes.

78   |                 
 IDENTIFICATION DIVISION
*-----------------------
  PROGRAM-ID. EXEMPLE.
  AUTHOR. NOM.

ENVIRONMENT DIVISION

modifier

CONFIGURATION SECTION. (obligatoire) [INPUT-OUTPUT SECTION] (facultatif)

 78    |                                          
  ENVIRONMENT DIVISION
 *--------------------
   CONFIGURATION SECTION.
    OBJECT-COMPUTER. MINTA.
    SOURCE-COMPUTER. MINTA.
    INPUT-OUTPUT SECTION.
     FILE-CONTROL.
      SELECT (F1) ASSIGN TO DISK;
                         FILE STATUS IS FS.
      SELECT (F2) ASSIGN TO PRINTER.

DATA DIVISION

modifier

WORKING STORAGE SECTION.

modifier
 78    |
  DATA DIVISION
 *-------------
   WORKING STORAGE SECTION.


Les champs

modifier

Reçoit les vars

nombre_niveau {nom   } [clause] ...
              {FILLER}
  • nombre_niveau : niveau en pallier hiérarchique. En cobol tout est organisé en Enreg dont l'info principale est de niveau 1.
  • FILLER : ligne DUMMY
  • clause : taille/type/val. initiale

? Soit le champ article divisé en description et code article qui est divisé en code magasin et numéro couleur.

ARTICLE
DESCRIPTION
CODE ARTICLE
CODE MAGASIN NUMERO COULEUR
  • ici 3 Niveaux
  • Champs de groupes avec (.) contient :
  • des champs élémentaires.
78   |
 DATA DIVISION
*-------------------------
  WORKING STORAGE SECTION.
   01 ARTICLE.
      02 DESCRIPTION PIC X(10).
      02 CODE-ARTICLE. 
         03 CODE-MAGASIN PIC ---.
         03 NUMERO-COULEUR PIC 99.
   77 CPT PIC 99.
  • CARACTERES PICTURES (type de contenu de variable)

Les champs élémentaires reçoivent PIC :

  • 9 [0-9] ,v (donne position de virgule)
ex. : PIC 99v999 (trois chiffres après la virgule)
  • - alphanumérique
ex. : PIC -(6) = PIC - - - - - - (- alphanumériques)

PROCEDURE DIVISION

modifier
  • Reçoit les instructions de PROG.
  • Reçoit toujours un paragraphe avant la premiére instruction.
  • Toutes les instructions vont en marge B.
 78   |
  PROCEDURE DIVISION
 *------------------
   PROG.
       ADD...
       MOVE...