Show TOC Anfang des Inhaltsbereichs

Variablen  Dokument im Navigationsbaum lokalisieren

Variablen sind benannte Datenobjekte, die statisch mit deklarativen Anweisungen oder dynamisch während der Programmlaufzeit erzeugt werden. Variablen dienen dazu, änderbare Daten unter einem bestimmten Namen im Arbeitsspeicher eines Programms zu halten.

Folgende Anweisungen dienen der statischen Deklaration von Variablen:

·        DATAdeklariert Variablen, deren Lebensdauer an den Kontext der Deklaration gebunden ist.

·        STATICSdeklariert Variablen statischer Gültigkeit in Prozeduren.

·        CLASS-DATAdeklariert statische Variablen in Klassen.

·        PARAMETERSdeklariert elementare Datenobjekte, die mit Eingabefeldern auf einem Selektionsbild verbunden sind.

·        SELECT-OPTIONS deklariert interne Tabellen, die mit Eingabefeldern auf einem Selektionsbild verbunden sind.

·        RANGESdeklariert interne Tabellen der gleichen Struktur wie SELECT-OPTIONS ohne Verbindung zu einem Selektionsbild.

DATA und STATICS werden in diesem Abschnitt erklärt. Für nähere Informationen zu CLASS-DATA, siehe Klassen, und zu PARAMETERS, SELECT-OPTIONS und RANGES, siehe Selektionsbilder.

Eine dynamische Deklaration von Variablen …

Auch beim Aufruf von Prozeduren können Datenobjekte dynamisch erzeugt werden. Diese Datenobjekte sind die Formalparameter der Schnittstellendefinition, die ihre technischen Eigenschaften erst zur Laufzeit von übergebenen Aktualparametern übernehmen.

Statische Variablen in Prozeduren

Variablen, die mit der Anweisung DATA deklariert werden, leben solange wie ihr Kontext. Variablen in einem ABAP-Rahmenprogramm leben also die gesamte Laufzeit des Programms und lokale Variablen in Prozeduren leben nur während dem Aufruf der Prozedur.

Um den Wert lokaler Variablen über die Laufzeit der Prozedur hinaus zu bewahren, kann man in der Prozedur Variablen mit der Anweisung STATICS deklarieren. Die Anweisung STATICS deklariert Variablen im Kontext des Rahmenprogramms der Prozedur, die aber nur innerhalb der Prozedur sichtbar sind.

Beim ersten Aufruf eines Unterprogramms oder eines Funktionsbausteins wird immer das entsprechende Rahmenprogramm in den internen Modus des Aufrufers geladen und nach Ablauf der Prozedur nicht wieder gelöscht. Deshalb bleiben mit STATICS deklarierte Variablen und ihre Werte über die Laufzeit einer Prozedur hinaus erhalten und können bei erneutem Aufruf der Prozedur wieder verwendet werden (siehe Beispiel unter Lokale Daten in Unterprogrammen).

In Methoden spielen mit STATICS definierte Variablen die Rollen von statischen Attributen, die nur in der entsprechenden Methode sichtbar sind, dies aber in allen Instanzen einer Klasse (siehe Klassen).

Die Syntax der Anweisung STATICS ist identisch zur Syntax der Anweisung DATA.

Ende des Inhaltsbereichs