Der DEPENDING ON - Zusatz

Dieser Zusatz wird bei der OCCURS-Klausel verwendet, um eine Tabelle mit einer variablen Anzahl von Elementen zu definieren. Tatsächlich (Speicherintern) wird zwar immer der maximale Platz für die Tabelle reserviert, jedoch kann man während des Programmablaufs die möglichen Zugriffsmöglichkeiten auf die Anzahl an tatsächlich vorhandenen Elementen beschränken. Somit wird vermieden, daß auf Elemente zugegriffen wird, die in der Tabelle überhaupt nicht vorhanden sind.

Beispiel:

01 Elementzahl PIC 99.

01 Schuhe.
  05 Schuh OCCURS 1 TO 15 DEPENDING ON Elementzahl.
    10 Schuh-Groesse PIC 9(2).
    10 Schuh-Nr PIC 9(4).
    10 Schuhname PIC X(10).
    10 Schuhpreis PIC 9(3)V99.


Hier hängt die Länge der Tabelle vom Wert in 'Elementzahl' ab und kann zwischen einem und fünfzehn Elementen betragen.

...