Bien maintenant que l'on sait se servir un peu mieux de cette
fabuleuse machine qu'est l'AS/400, si on passé aux choses
sérieuses; Abordons le problème des fichiers.
1)
Création d'un fichier séquentiel
2)
Utilisation dans un programme exemple SCREER
3)
Que fait le programme exemple SCREER
IDENTIFICATION DIVISION.
PROGRAMM-ID.SCREER.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT FGRILLE
ASSIGN TO WORKSTATION-GPERSONNE
ORGANIZATION
TRANSACTION
CONTROL-AREA
FTOUCHES.
SELECT
FPERSONNEL ASSIGN TO DATABASE-PERSONNEL
ORGANIZATION SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD FGRILLE LABEL RECORD OMITTED.
01 EGRILLE.
COPY
DDS-PERSONNE1 OF GPERSONNE.
FD
FPERSONNEL LABEL RECORD STANDARD.
01 EPERSONNEL.
COPY
DDS-ALL-FORMATS OF PERSONNEL.
WORKING STORAGE SECTION.
01 FTOUCHES PIC XX.
88 F3 VALUE "03".
PROCEDURE DIVISION.
DEBUT.
OPEN I-O FGRILLE OUTPUT FPERSONNEL.
TQ.
INITIALIZE
PERSONNE1.
WRITE EGRILLE
FORMAT "PERSONNE1".
READ FGRILLE.
IF F3 GO TO FIN.
WRITE EPERSONNEL.
GO TO TQ.
FIN.
CLOSE FGRILLE
FPERSONNEL.
STOP RUN.
Nous allons créer un fichier comportant des informations dans
lequel il y aura en plus un nom d'enregistrement.
Pour notre exemple, le nom du fichier est PERSONNEL, le nom
d'enregistrement est ENRPERS.
Pour définir des caractères, on écrit simplement le nom de la
variable et sa taille.
Pour définir des numériques, on écrit le nom de la variable
suivit d'un S et sa taille.
Les décimaux s'écrivent comme pour les grilles d'écran en
mettant le nombre de chiffres total, suivi du S et du nombre de
décimales.
Exemple:
Dans le cas ci-dessus, nous avons à faire à un fichier que l'on
a créé, sur lequel nous devons sauvegarder nos propres données
au fur et à mesure des modifications, contrairement aux grilles
d'écran, qui une fois définies, restent telles quels. Par
conséquent, au lieu d'attacher les données à la station de
travail, on les attache à la DATABASE. C'est à dire que cette
fois, le fichier se trouve dans une zone de données. Pour le
reste, cela fonctionne presque comme une grille d'écran, avec
deux noms FPERSONNEL et EPERSONNEL.
Retour au programme.
Un fichier de données peut s'organisé sous trois mode:
Ici, on traite le cas du séquentiel. C'est à dire que la
recherche des données se fait dans l'ordre du fichier.
L'organisation indéxée se fera dans le chapitre VI: Utilisation des fichiers indéxés Cette ligne
est facultative car en cobol l'organisation séquentiel est par
défaut.
Retour au programme.
Comme je vous l'ai expliqué dans le chapitre sur l'utilisation des grilles d'écran, on peut
definir une seule grille. C'est ce que l'on fait ici en ne
recupérant que la grille PERSONNE1. De ce fait, si vous faites
d'autres programmes utilisant d'autres grilles vous n'emcombrez
pas les précédents programmes et de toute façon vous n'avez
aucunes modifications à y apporter.
Retour au programme.
Ici on défini le fichier de données. Le nom FPERSONNEL doit
donc être clair comme FGRILLE pour les grilles d'écran. Le
LABEL RECORD STANDARD sert quant à lui à donnér le type
d'enregistrement éffectué.
Retour au programme.
Le programme exemple permet de créer des enregistrements, donc
le fichier est ouvert en sortie.
On sort du programme pour mettre des informations dans le
fichier. On peut l'ouvrir en entrée (INPUT) pour les programmes
de visualisation ou d'impression sans modifications des données
ou en entrée-sortie (I-O) pour les mises à jour. On a aussi le
mode EXTEND qui permet de rajouter un enregistrement. Cela
signifie que le programme SCREER ne sert qu'une seule fois pour
la création du premier enregistrement. En entreprise, ce
programme ne sera donc pas mis à la disposition du personnel car
si par inadvertance on l'utilise dans le but d'ajouter un
employé on efface tous les autres.
Cela sera expliqué dans le chapitre VII: D'autres
programmes séquentiels.
Retour au programme.
On constate ici que l'on utilise le MOVE CORRESPONDING de la
même manière qu'avec les grilles d'écran. Cependant le MOVE se
fait avec le nom d'enregistrement du fichier ce qui fait une
troisième appellation du fichier: FPERSONNEL, EPERSONNEL et
ENRPERS.
Retour au programme.
Le WRITE est obligatoire pour sauvegarder les données sur le
disque dur comme les grilles d'écran pour afficher les données
à l'écran.
Retour au programme.
Le fichier PERSONNEL contient toutes les informations sur un
employé d'une entreprise. Ce programme affiche une grille
d'écran sur laquelle on effectue la saisie des informations et
on les sauvegarde dans le fichier.