Anfang des Inhaltsbereichs

Komponentendokumentation ABAP Dictionary  Dokument im Navigationsbaum lokalisieren

Einsatzmöglichkeiten

Im ABAP Dictionary werden Datendefinitionen (Metadaten) erfasst und verwaltet. Es ermöglicht eine zentrale, redundanzfreie Beschreibung aller im System vorhandenen Datenstrukturen. Neu erfasste oder geänderte Informationen werden allen Systemkomponenten automatisch zur Verfügung gestellt. Dies sorgt für Datenintegrität, Datenkonsistenz und Datensicherheit.

Aus den im ABAP Dictionary erfassten Datendefinitionen können entsprechende Objekte (Tabellen bzw. Views) in der unterliegenden relationalen Datenbank erzeugt werden. Das ABAP Dictionary beschreibt also die Struktur der Objekte der Anwendungsentwicklung und deren Abbildung in Tabellen bzw. Views auf der unterliegenden relationalen Datenbank.

Weiterhin stellt das ABAP Dictionary noch Standardfunktionen zur Aufbereitung von Feldern auf Dynpros zur Verfügung, z.B. die Möglichkeit ein Dynprofeld mit einer Eingabehilfe zu versehen.

Welche Informationen sind im ABAP Dictionary abgelegt?

Die wichtigsten Objekttypen im ABAP Dictionary sind Tabellen, Views, Typen, Domänen, Suchhilfen und Sperrobjekte.

Tabellen werden im ABAP Dictionary datenbankunabhängig definiert. Aus dieser Tabellendefinition wird dann eine Tabelle mit gleicher Struktur in der unterliegenden Datenbank angelegt.

Views sind logische Sichten auf mehrere Tabellen. Die Struktur der View wird im ABAP Dictionary definiert. Aus dieser Struktur kann dann eine View auf der Datenbank erzeugt werden.

Typen werden in ABAP Programmen verwendet. Die Struktur eines Typs kann global im ABAP Dictionary definiert werden.Änderungen an einem Typ sind automatisch in allen Programmen wirksam, die den Typ verwenden.

Sperrobjekte dienen zur Synchronisation des Zugriffs mehrerer Benutzer auf den selben Datenbestand. Aus der Definition eines Sperrobjekts im ABAP Dictionary werden Funktionsbausteine generiert, die in Anwendungsprogrammen verwendet werden können.

Über Domänen können verschiedene technisch gleichartige Felder zusammengefasst werden. Eine Domäne beschreibt den Wertebereich aller Tabellenfelder und Strukturkomponenten, die sich auf diese Domäne beziehen.

Auch die Dokumentation (F1-Hilfe) und die Eingabehilfe (F4-Hilfe) zu einem Feld auf einer Eingabemaske stammen aus dem ABAP Dictionary. Der Dokumentation zum Feld wird dabei zu einem Datenelement angelegt, das die inhaltliche Bedeutung eines Tabellenfeldes beschreibt. Die bei der Eingabehilfe erscheinende Liste der möglichen Eingabewerte wird durch einen Fremdschlüssel oder eine Suchhilfe erzeugt.

Integration in die ABAP Workbench

Das ABAP Dictionary ist vollständig in die ABAP Workbench integriert.Grundlage für die aktive Integration des ABAP Dictionary in die Entwicklungsumgebung ist die interpretative Arbeitsweise des SAP-Systems. Die Interpreter sehen nicht die Originalobjekte, sondern nur interne Repräsentationen dieser Objekte.

Diese internen Repräsentationen werden automatisch angepasst, sobald das System Veränderungen im ABAP Dictionary feststellt. Damit ist sichergestellt, dass Dynpro- und ABAP-Interpreter, Eingabehilfe, Datenbankschnittstelle und Entwicklungswerkzeuge stets auf aktuelle Informationen zugreifen.

Beispiel

Das folgende ABAP Programm listet die in der Tabelle SCARR enthaltenen Fluggesellschaften (siehe Flugmodell) und deren Kürzel (Carrier-IDs) auf.

DATA: SCARR_TAB TYPE SCARR.

SELECT * INTO SCARR_TAB FROM SCARR.

WRITE: / SCARR_TAB-CARRID, SCARR_TAB-CARRNAME.

ENDSELECT.

Im Programm wird nur die Struktur SCARR_TAB deklariert. Alle Informationen zu dieser Struktur, z.B. Feldnamen, Datentypen und Feldlängen, werden aus der im ABAP Dictionary definierten Tabelle SCARR übernommen. Diese Informationen zur Tabelle SCARR werden beim Generieren des Programms aus dem ABAP Dictionary abgerufen.

Damit muss bei einer Änderung der Tabelle SCARR, zum Beispiel bei der Veränderung der Länge eines Tabellenfeldes, der Quelltext des Programms nicht angepasst werden. Beim nächsten Aufruf des Programms wird in diesem Fall automatisch festgestellt, dass sich die Struktur der Tabelle SCARR geändert hat. Das Programm wird dann einfach neu generiert und ruft damit die aktuellen Informationen zur Tabelle SCARR aus dem ABAP Dictionary ab.

Diese Grafik wird im zugehörigen Text erklärt

Während der Arbeit an Entwicklungsprojekten können Objekte des ABAP Dictionary mehrfach geändert werden, bevor sie aktiviert und damit den operativen Komponenten des Systems zur Verfügung gestellt werden. Objekte können also zum gleichen Zeitpunkt in einer aktiven und in einer inaktiven Version im ABAP Dictionary vorhanden sein.

Die inaktiven ABAP Dictionary Objekte beeinflussen das Laufzeitsystem (ABAP Prozessor, Datenbankschnittstelle) nicht. Damit können größere Änderungen an mehreren Objekten durchgeführt werden, ohne die Lauffähigkeit des Systems zu beeinflussen. Erst wenn alle Objekte geändert sind, können diese gemeinsam aktiviert werden.

 

 

Ende des Inhaltsbereichs