Anfang des InhaltsbereichsExtrakte Dokument im Navigationsbaum lokalisieren

Interne Tabellen haben eine feste Zeilenstruktur und sind nicht immer geeignet, Datenbestände mit unterschiedlichen Strukturen zu bearbeiten. Für diesen Zweck bietet ABAP die Möglichkeit, sogenannte Extrakte bzw. Extraktdatenbestände zu bilden.

Ein Extrakt ist ein sequentieller Datenbestand im Speicherbereich des Programms. Es kann nur innerhalb einer speziellen Schleife auf die einzelnen Sätze des Bestands zugegriffen werden. Ein Index- oder Schlüsselzugriff wie bei internen Tabellen ist dagegen nicht möglich. Für ein ABAP-Programm kann genau ein Extraktdatenbestand angelegt werden. Die Größe des Extraktdatenbestands ist wie bei internen Tabellen im Prinzip unbegrenzt. Ab 500 kB Größe wird er in eine Datei des Betriebssystems ausgelagert. Praktisch erreichbar sind Größen von bis zu 2 GB, vorausgesetzt, daß genügend Platz im Dateisystem ist.

Ein Extraktdatenbestand besteht aus einer Folge von Sätzen definierter Struktur, die jedoch nicht einheitlich sein muß. In einem Extraktdatenbestand können Sätze unterschiedlicher Länge und Struktur hintereinander abgelegt werden. Dadurch entfällt die Notwendigkeit für jede abzuspeichernde Struktur einen eigenen Datenbestand anlegen zu müssen. Dies vermindert den internen Verwaltungsaufwand erheblich.

Im Unterschied zu internen Tabellen werden Extraktdatenbestände teilweise komprimiert gespeichert. Dadurch ist der Platzbedarf geringer als für interne Tabellen. Weiterhin muß die Struktur von Extraktdatenbeständen nicht zu Beginn des Programms festgelegt werden, sondern ergibt sich dynamisch aus dem Programmverlauf.

Wie bei Schleifen über interne Tabellen ist auch bei Extrakten eine Gruppenstufenverarbeitung möglich. Die interne Verwaltung von Extraktdatenbeständen ist entsprechend optimiert, so daß die Gruppenstufenverarbeitung bei Extrakten schneller als bei internen Tabellen ist.

Um einen Extraktdatenbestand in einem Programm zu erzeugen und zu füllen und zu bearbeiten, sind die folgenden Schritte hintereinander auszuführen:

  1. Die Satzarten, die im Extraktdatenbestand vorkommen sollen, müssen als Feldgruppe deklariert werden und die Struktur jeder Satzart muß durch das Aufnehmen von Feldern in jede Feldgruppe definiert werden.
  2. Extrakt definieren

  3. Der Extraktdatenbestand muß zeilenweise durch Extraktion der gewünschten Daten gefüllt werden.
  4. Extrakt mit Daten füllen

  5. Der gefüllte Extraktdatenbestand kann sortiert und in einer Schleife verarbeitet werden. Eine Veränderung des Bestands ist nicht mehr möglich.

Extrakte verarbeiten

 

 

Ende des Inhaltsbereichs