In einem Programm definierte Datenfelder und Dateien können interne oder externe Daten sein.
Auf ein internes Datum kann nur innerhalb des Programms zugegriffen werden, in dem das Datum definiert ist.
Auf ein externes Datum kann von jedem Programm der Ablaufeinheit zugegriffen werden.
Ein internes Datum belegt einen Speicherbereich, der ausschließlich mit demjenigen Programm verbunden ist, in dem das Datum definiert wurde. Ein externes Datum dagegen belegt einen Speicherbereich, der mit der Ablaufeinheit verbunden ist. Auf Daten, die in den Programmen einer Ablaufeinheit als extern vereinbart sind, kann von allen Programmen der Ablaufeinheit zugegriffen werden.
Externe Dateien und Datenfelder werden durch die Angabe der EXTERNAL-Klausel in der FILE SECTION bzw. WORKING-STORAGE SECTION erzeugt (siehe „EXTERNAL-Klausel").
Beispiel 12-5
Eine Ablaufeinheit besteht aus drei Programmen, in denen einige Daten als extern definiert sind. Die Speicherbelegung gestaltet sich - schematisch dargestellt - folgendermaßen:
Speicherbereich |
Speicherbereich |
Speicherbereich |
Speicherbereich |
Alle internen Daten, d.h. solche, die nicht als extern definiert sind, stehen nur im Speicherbereich des Programms, in dem sie definiert sind. Alle als extern definierten Daten dagegen stehen nur im Speicherbereich für externe Daten.