Die OPEN-Anweisung

Will man in einem Programm eine oder mehrere Dateien verwenden, so müssen diese mit Hilfe dieser Anweisung geöffnet (Sprachbegabte: open=öffne ...) werden . Wenn ich jemanden nach einer Telefonnummer frage, dann muß der oder die auch in irgendeinem Verzeichnis, wie einem Telefonbuch (oder dem Gedächtnis) nachsehen, welches er oder sie ebenfalls zunächst öffnen muß.
Da man Dateien für verschiedene Zwecke öffnen kann, muß dieser 'Öffnungsmodus' angegeben werden. Sequentielle Dateien kann man überschreiben (wenn vorhanden) bzw. neu erstellen. Weiterhin kann man (nachdem man sie eingelesen hat) Sätze der Datei zurückschreiben oder neue Sätze an eine Datei anhängen.
Zu beachten ist, daß bei der Angabe des entsprechenden Modus immer vom Programm ausgegangen werden muß. Soll also etwas aus einer Datei ins Programm eingelesen werden, so wird die Datei mit OPEN INPUT und dem entsprechend im Eingabemodus geöffnet. Soll eine Datei 'nach außen' (Festplatte o.ä.) geschrieben werden, so gilt entsprechend OPEN OUTPUT (Ausgabemodus).

Im Einzelnen gibt es die folgenden 'Öffnungsmodi':

Eingabemodus:
Sollen die Sätze der Datei ausschließlich eingelesen (READ-Anweisung) werden, so wird die Datei mit OPEN INPUT geöffnet. Ist die zu öffnende Datei nicht vorhanden, so führt dies zu einem Programmabbruch. Ein solcher Abbruch kann durch die Verwendung des OPTIONAL-Zusatzes in der SELECT-Klausel verhindert werden.

OPEN INPUT Datei.

Es ist möglich sequentielle Dateien satzweise von hinten nach vorne einzulesen. Hierzu wird hinter den Dateinamen der Zusatz REVERSED gesetzt.

OPEN INPUT Datei REVERSED.


Ausgabemodus:
Soll eine Datei neu erstellt oder eine bereits vorhandene überschrieben (VORSICHT!! Danach ist die alte Datei entgültig futsch!) werden, so wird sie mit OPEN OUTPUT geöffnet. Der Schreibvorgang wird dann mit der WRITE-Anweisung umgesetzt.

OPEN OUTPUT Datei.


Aktualisierungsmodus:
Dieser I-O Modus ist ist für Dateien, deren Organisationsform mit LINE SEQUENTIAL beschrieben wurde nicht zulässig. Ansonsten können Sätze einer Datei, die so geöffnet wurde, mit Hilfe von READ eingelesen, im Programm verändert (oder eben aktualisiert) und mit REWRITE wieder zurückgeschrieben werden.

OPEN I-O Datei.


Erweiterungsmodus:
Sequentielle Dateien können in diesem Modus durch die Angabe von EXTEND geöffnet werden (keine Mehrdatenträger-Dateien). Dabei werden mittels WRITE-Anweisung Sätze ans Ende der Datei angefügt. Soll eine nicht vorhandene Datei erstmals so geöffnet werden, so wird sie automatisch erstellt. Wurde in der FILE SECTION hinter ASSIGN der Drucker angegeben, so ist die 'Druckdatei' in dieser Form zu öffnen.

OPEN EXTEND Datei.


...