Inhaltsverzeichnis eines Daten-Clusters erstellen Dokument im Navigationsbaum lokalisieren

Um das Inhaltsverzeichnis eines Daten-Clusters aus einer ABAP-Cluster-Datenbank zu erstellen, verwenden Sie die folgende Anweisung:

Syntax

IMPORT DIRECTORY INTO <dirtab>
                 FROM DATABASE <dbtab>(<ar>)
                 [CLIENT <cli>] ID <key>.

Diese Anweisung erstellt in der Tabelle <dirtab> ein Inhaltsverzeichnis der Datenobjekte eines Daten-Clusters in der Datenbank <dbtab>. Sie müssen <dbtab> mit der TABLES-Anweisung deklarieren.

Die Speicherung eines Daten-Clusters in einer Datenbank erfolgte normalerweise durch eine EXPORT TO DATABASE- Anweisung (siehe Datenobjekte in Cluster-Datenbanken speichern). Informationen zur Struktur der Datenbanktabelle <dbtab> finden Sie unter Struktur von Cluster-Datenbanken.

Mit <ar>, geben Sie die zweistellige Bereichskennung für das abgespeicherte Cluster in der Datenbank an. Mit der Bezeichnung <key>, deren maximale Länge von der Länge des Bezeichnerfelds in <dbtab> abhängt identifizieren Sie die Daten in der Datenbank. Mit der Option CLIENT <cli> können Sie bei mandantenabhängigen Cluster-Datenbanken die automatische Mandatenbehandlung abschalten und den Mandanten selbst angeben. Diese Option muß direkt hinter dem Namen der Datenbank stehen.

Die IMPORT-Anweisung liest automatisch auch den Inhalt der Benutzerfelder des Tabellenarbeitsbereichs <dbtab> aus der Datenbanktabelle.

Kann ein Inhaltsverzeichnis erstellt werden, wird SY-SUBRC auf 0, ansonsten auf 4 gesetzt.

Sie müssen die interne Tabelle <dirtab> gemäß der ABAP-Dictionary Struktur CDIR aufbauen. Verwenden Sie dazu den Zusatz TYPE der DATA-Anweisung. Die Struktur CDIR hat folgende Komponenten:

Feldname

Typ

Beschreibung

NAME

CHAR

Name des abgespeicherten Objekts im Cluster

OTYPE

CHAR

Typ des Objekts:

F bedeutet elementares Feld

R bedeutet Feldleiste

T bedeutet interne Tabelle

FTYPE

CHAR

Datentyp des Objekts. Strukturierte Datentypen ergeben C.

TFILL

INT4

Anzahl gefüllter Zeilen bei internen Tabellen.

FLENG

INT2

Länge des Feldes, bzw. der Struktur.

 

Beispiel

REPORT demo_data_ext_cluster_import_2.

DATA: dirtab TYPE TABLE OF cdir,
      wa_dirtab LIKE LINE OF dirtab.

IMPORT DIRECTORY INTO dirtab FROM DATABASE
                                  indx(hk) ID 'Table'.

IF sy-subrc = 0.
  WRITE: / 'AEDAT:', indx-aedat,
         / 'USERA:', indx-usera,
         / 'PGMID:', indx-pgmid.
  WRITE  / 'Directory:'.
  LOOP AT dirtab INTO wa_dirtab.
    WRITE: / wa_dirtab-name,  wa_dirtab-otype, wa_dirtab-ftype,
             wa_dirtab-tfill, wa_dirtab-fleng.
  ENDLOOP.
ELSE.
  WRITE 'Not found'.
ENDIF.

Dieses Programm erstellt ein Inhaltsverzeichnis des mit dem Beispielprogramm unter Datenobjekte in Cluster-Datenbanken speichern abgespeicherten Daten-Clusters. Die Ausgabe sieht folgendermaßen aus:

Diese Grafik wird im zugehörigen Text erklärt

Das Inhaltsverzeichnis DIRTAB enthält eine Zeile, die zeigt, daß in dem Daten-Cluster eine interne Tabelle namens ITAB mit 3000 gefüllten Zeilen der Länge 8 gespeichert ist.

 

 

 

Ende des Inhaltsbereichs