Satzformate
Sequenzielle Dateien können Sätze fester Länge (RECFORM=F), variabler Länge (RECFORM=V) und undefinierter Länge (RECFORM=U) enthalten. Eine Blockung ist dabei nur für Sätze fester oder variabler Länge möglich.
In der COBOL-Übersetzungseinheit wird das Format der zu verarbeitenden Sätze in der RECORD- oder der RECORDING MODE-Klausel festgelegt (siehe Handbuch „COBOL2000-Sprachbeschreibung“ [1]). Welche Angaben dabei dem jeweiligen Satzformat zugeordnet sind, ist in der folgenden Tabelle zusammengestellt:
Satzformat | Angabe in der | ||
RECORD-Klausel | RECORDING MODE-Klausel | ||
feste Länge | RECORD CONTAINS...CHARACTERS | (Format 1) | |
variable Länge | RECORD IS VARYING IN SIZE... | (Format 2) (Format 3) | |
undefinierte Länge | Vereinbarung mit der RECORD-Klauselnicht möglich | RECORDING MODE IS U |
Tabelle 19: Festlegen von Satzformaten in der RECORD- oder RECORDING MODE-Klausel
Wird keine der beiden Klauseln angegeben, nimmt der Compiler Sätze variabler Länge an.
Zugriffsarten
Auf Sätze einer sequenziellen Datei kann nur sequenziell zugegriffen werden, d.h. das Programm kann sie lediglich in der Reihenfolge verarbeiten, in der sie bei der Erstellung in die Datei geschrieben worden sind.
In der COBOL-Übersetzungseinheit wird die Zugriffsart durch die ACCESS MODE-Klausel festgelegt; für sequenzielle Dateien ist ausschließlich die Angabe ACCESS MODE IS SEQUENTIAL zulässig. Da dies auch die Voreinstellung des Compilers ist, kann die ACCESS MODE-Klausel hier entfallen.