<< Click to Display Table of Contents >> Navigation: Datenmodifikation > Variablen und Codes > Gruppierungen > Indexvariablen |
Das INDEXVAR-Statement verknüpft die Variablen in einer Variablenliste mit einer atomaren Variable, die als Index dient.
In der üblichen Notation in Programmiersprachen würde man ein ARRAY deklarieren und dann mittels eckiger Klammern auf die Elemente zugreifen, etwa:
ARRAY Bewertungen = BewOpel, BewFord, BewVW;
Bewertungen[ 1 ] wäre BewOpel, Bewertungen[ 2 ] wäre BewFord. Usw.
INDEXVAR beinhaltet dies als Übersetzung in GESStabs-Sprache.
IndexVar
Syntax:
INDEXVAR <name> = <varlist> BY <variable>;
Das Äquivalent zum obenstehenden Beispiel in GESStabs ist:
INDEXVAR Bewertungen = BewOpel, BewFord, BewVW BY BewIndex;
Jetzt kann die Indizierungsvariable "BewIndex" explizit gesetzt werden. Dann haben die INDEXVAR-Bewertungen den Wert der entsprechenden Ausgangsvariablen.
Compute BewIndex =1; -> Bewertungen hat den Wert von BewOpel.
Compute BewIndex =2; -> Bewertungen hat den Wert von BewFord.
usw.
InvIndexVar
Inversierte Version von INDEXVAR
Syntax:
INVINDEXVAR <name> = <varlist> BY <variable>;
INVINDEXVAR liefert den Index eines gesuchten Codes in einer Liste von Variablen (als Indexposition, 1-basiert)