Le but de l'entité Programme est de développer et implémenter toutes
les spécifications définies lors de l'analyse détaillée.
Un Programme batch lit et écrit des fichiers et crée des Etat (fichiers
de texte formatés).
Les opérations générées de lecture et d'écriture seront adaptées à chaque
type de fichier (séquentiel, indexé, SQL, etc).
La structure de chaque fichier et les contrôles à effectuer sur les enregistrements
sont définis dans une Structure de Données.
Structure d'un Programme
Tout Programme est organisé
en un ensemble de traitements successifs :
- Acquisition des données,
- Contrôles,
- Mises à jour,
- Editions,
- Restitution des résultats.
Chacun de ces traitements se compose d'un ensemble de séquences homogènes
d'instructions appelées "fonctions".
Deux principes complémentaires
structurent le Programme :
- Enchaînement linéaire de fonctions dans l'ordre logique de leur exécution,
chacune exécutant une tâche fonctionnelle ou technologique du Programme. Chaque
fonction est identifiée par un code de 0A à 99.
- Structuration hiérarchique des traitements dans chaque fonction. La fonction
peut être décomposée en sous-fonctions, chacune décomposée à son tour en sous-fonctions,
et ainsi de suite.
Les fonctions et sous-fonctions se suivent dans l'ordre de leur code
selon la séquence de classement EBCDIC (les lettres précédant les chiffres),
quelle que soit la séquence de tri du matériel utilisé.
Principes de génération
Les Programmes sont générés
à la demande, dans la
variante de COBOL correspondant
au matériel et au compilateur auxquels ils sont destinés.
- L'IDENTIFICATION DIVISION du COBOL est générée à partir
de la Définition du Programme et d'éventuelles modifications
saisies en code spécifique.
- L'ENVIRONMENT DIVISION et la FILE SECTION sont
générées à partir des appels de Structures de Données et d'éventuels compléments
ou modifications saisis en code spécifique.
- Les autres sections de la DATA DIVISION sont générées
à partir d'appels de Structures de Données, éventuellement complétés ou modifiés
en code spécifique.
Le Système génère, dans tous les Programmes, en
WORKING-STORAGE
SECTION, une zone
CONSTANTES-PAC dans laquelle sont
déclarés en
VALUE :
- le numéro de session de génération du Programme (NUGNA),
- le code de la Bibliothèque où est défini le Programme (APPLI),
- la date de génération du Programme (DATGN) (JJ/MM/AA si
la langue de l'utilisateur est le français, ou MM/JJ/AA sinon),
- le code du Programme (PROGR),
- le code de l'utilisateur ayant demandé la génération (CODUTI),
- l'heure de génération du Programme (TIMGN),
- le nom externe du Programme (PROGE),
- le code de la Base (COBASE),
- la date de génération du Programme avec le siècle (DATGNC)
(JJ/MM/SSAA si la langue de l'utilisateur est le français,
ou MM/JJ/SSAA sinon),
- la version du générateur (RELEAS),
- la date du générateur (DATGE),
- la date du squelette (DATSQ).
Ces zones peuvent être employées dans le compte-rendu d'exécution du
programme. Elles sont précédées du littéral
WORKING, qui
peut servir de repère dans un "dump" en cas de problème à l'exécution.
- La PROCEDURE DIVISION est générée à partir des appels
de Structures de Données ou Segments, des traitements indiqués avec du code
spécifique et des appels de Macros.
Pour des explications sur le Programme généré, référez-vous
au manuel 'Applications Batch' (chapitre 'Description d'un programm généré'),
disponible à partir de l'URL suivante :
http://www-1.ibm.com/support/docview.wss?rs=37&context=SSEP67&uid=swg27005478