COmmon Business Oriented Language : langage courant orienté métier.

Besoin

Définir un langage commun pour les applications commerciales

Analyse

Un programme COBOL est divisé en 4 parties appelées divisions, à savoir :

Notes

Limitations

Exemples

Un exemple de programme COBOL est :

001010 IDENTIFICATION DIVISION.
001020 PROGRAM-ID. EXEMPLE COBOL.
001030 AUTHOR. JAVAROME.
001040 DATE-WRITTEN. 12 AOUT 1972.
001050 DATE-COMPILED.
001060 ENVIRONMENT DIVISION.
001070 SOURCE-COMPUTER. B-3500.
001080 OBJECT-COMPUTER. B-3500.
001090 INPUT-OUTPUT SECTION.
001100 FILE CONTROL.
001110 SELECT FIPAYE ASSIGN TO TAPE.
001120 SELECT FIPRIM ASSIGN TO TAPE.
001130 SELECT FILIST ASSIGN TO PRINTER.
001140 DATA DIVISION.
001150 FILE SECTION.
001160 FD FIPAYE
001170 LABEL RECORD STANDARD VA OF ID "FICHPA"
001180 DATA RECORD PAYE.
001190 01 PAYE.
001200 02 INDICATIF.
001210 03 MATRICULE PC X(10).
001220 03 NOM PC X(15).
001230 03 PRENOM PC X(10).
001240 02 ADRESSE PC X(30).
001250 02 ANCIENNETE PC 99.
002010 02 FILLER PC X(24).
002020 FD FIPRIM
002030 LABEL RECORD STANDARD VA OF ID "FICHPR"
002040 DATA RECORD PRIME.
002050 01 PRIME.
002060 02 PRENOM-P. PC X(10).
002070 02 NOM-P PC X(15).
002080 02 ADRESSE-P PC X(30).
002090 02 MONTANT-P PC 999.
002100 FD FILIST
002110 DATA RECORDS ARE LISTE LIGN1 LIGN2.
002120 01 LISTE.
002130 02 FILLER PC X(47).
002140 02 INDICATIF-L PC X(35).
002150 02 MONTANT-L PC 999.
002160 02 FILLER PC X(47).
002170 01 LIGN1.
002180 02 FILLER PC X(50).
002190 02 TEXT1 PC X(32).
002200 02 FILLER PC X(50).
002210 01 LIGN2.
002220 02 FILLER PC X(50).
002230 02 TEXT2 PC X(47).
002240 02 FILLER PC X(50).

003010 WORKING-STORAGE SECTION.
003020 01 LIBELLE1.
003030 02 TITRE1 PC X(27) VA "TOTAL DES PLUS DE 10 ANS = ".
003040 02 COMPTEUR1 PC 9(5) VA 0.
003050 01 LIBELLE2.
003060 02 TITRE1 PC X(42) VA "TOTAL DES 10 ANS ET DES MOINS DE 10
003070 "ANS = ".
003080 02 COMPTEUR2 PC 9(5) VA 0.
003090
003100 PROCEDURE DIVISION.
003110 DEBUT.
003120 OPEN INPUT FIPAYE OUTPUT FIPRIM FILIST.
003130 A.
003140 READ FIPAYE AT END GO TO FIN.
003150 MOVE INDICATIF TO INDICATIF-L
003160 MOVE PRENOM TO PRENOM-P
003170 MOVE NOM TO NOM-P
003180 MOVE ADRESSE TO ADRESSE-P.
003190 IF ANCIENNETE GREATER 10 PERFORM PRIM THRU PRIMF.
003200 MOVE 500 TO MONTANT-L MONTANT-P ADD 1 TO COMPTEUR2.
003210 WRITE PRIME WRITE LIST GO TO A.
003220 PRIM.
003230 MOVE 750 TO MONTANT-L MONTANT-P ADD 1 TO COMPTEUR1.
003240 FIN.
003250 MOVE LIBELLE1 TO TEXT1 WRITE LIGN1.

003235 PRIMF.
003237 EXIT.
004010 MOVE LIBELLE2 TO TEXT2 WRITE LIGN2.
004020 CLOSE FIPAYE FIPRIM FILIST
004030 STOP RUN.
004040 END-OF-JOB.

Voir