Show TOC Anfang des Inhaltsbereichs

Logische Datenbanken  Dokument im Navigationsbaum lokalisieren

Logische Datenbanken sind spezielle ABAP-Programme, die Anwendungsprogrammen Daten zur Verarbeitung zur Verfügung stellen können. Die zur Zeit noch weitaus häufigste Verwendung logischer Datenbanken ist zum Lesen von Daten aus Datenbanktabellen und ihre Verknüpfung mit ausführbaren ABAP-Programmen bei der Festlegung der Programmattribute. Logische Datenbanken werden mit einem eigenen Tool der ABAP Workbench gepflegt (Logical Database Builder).

Seit Release 4.5A können logische Datenbanken aber auch selbständig über den Funktionsbaustein LDB_PROCESS aufgerufen werden. Aus jedem ABAP-Programm können so mehrere logische Datenbanken beliebig geschachtelt aufgerufen werden. Falls eine logische Datenbank entsprechend programmiert wurde, kann sie in einem Programm auch mehrfach aufgerufen werden. Insbesondere ein ausführbares Programm kann dadurch auch mehr als eine logische Datenbank verwenden und eine logische Datenbank mehrfach prozessieren.

Beim Lesen von Daten aus Datenbanktabellen sind die Datenbankzugriffe durch Open SQL-Anweisungen in der logischen Datenbank programmiert und nicht im eigentlichen Anwendungsprogramm. Die logische Datenbank liest die Daten, speichert sie eventuell programmlokal ab und übergibt sie Zeile für Zeile über einen Schnittstellen-Arbeitsbereich an das Anwendungsprogramm oder den Funktionsbaustein LDB_PROCESS.

Datensicht logischer Datenbanken

Logische Datenbanken liefern eine ganz bestimmte Sicht auf Datenbanktabellen. Der Einsatz von logischen Datenbanken ist stets dann sinnvoll, wenn die auszulesenden Datenbanktabellen sich weitgehend mit der Struktur der logischen Datenbank decken und der Ablauf des Programms (Datenselektion-Datenauslese-Datenverarbeitung-Datenanzeige) den Anforderungen der Anwendung entspricht.

Die Datensicht von logischen Datenbanken ist hierarchisch. Im SAP-System sind nämlich viele Tabellen über Fremdschlüsselbeziehungen verbunden. Teile dieser Beziehungen bilden baumartige, hierarchische Strukturen. Logische Datenbanken lesen Daten aus Datenbanktabellen, die Bestandteil solcher Strukturen sind.

Diese Grafik wird im zugehörigen Text erklärt

Eine logische Datenbank kann die Zeilen solcher Tabellen nacheinander an ein ausführbares Programm übergeben, wobei die Reihenfolge normalerweise durch die hierarchische Struktur festgelegt ist. Der Begriff Logische Datenbank bezeichnet manchmal nicht nur das eigentliche Programm, sondern auch den entsprechenden Datenbestand, der im Prinzip eine hierarchische Datenbanktabelle widerspiegelt.

Aufgaben logischer Datenbanken

Auch wenn logische Datenbanken primär der Wiederverwendung vordefinierter Funktionalität zum Lesen von Daten aus Datenbanktabellen dienen, stellen sie ein Werkzeug dar, in dem noch andere Aufgaben zentral programmiert werden können. Um die Anwendungslogik von Anwendungsprogrammen frei von technischen Einzelheiten zu halten können folgende Aufgaben von logischen Datenbanken übernommen werden:

      Lesen der gleichen Daten für mehrere Programme

Die einzelnen Programme müssen nicht die genaue Struktur der jeweiligen Datenbanktabellen (insbesondere die Fremdschlüsselbeziehungen) kennen, sondern verlassen sich darauf, dass die Einträge in der richtigen Reihenfolge beim Ereignis GET geliefert werden.

      Definition der gleichen Benutzungsoberfläche für mehrere Programme

Jedes Programm, das die gleichen logischen Datenbanken verwendet, hat deren Selektionsbilder als Benutzungsoberflächen.

      Zentrale Berechtigungsprüfungen

Die Berechtigungsprüfungen für zentrale und sensible Daten können in logischen Datenbanken an zentraler Stelle programmiert werden, damit sie nicht von einfachen Anwendungsprogrammen umgangen werden können.

      Verbesserung der Performance

Maßnahmen zur Verbesserung der Antwortzeit können innerhalb von logischen Datenbanken durchgeführt werden (z.B. Einsatz von Joins anstatt geschachtelter SELECT-Anweisungen). Sie werden dann sofort in allen betroffenen Anwendungsprogrammen wirksam, ohne dass deren Quelltext geändert werden muss.

 

Aufbau logischer Datenbanken

Selektionsviews

Freie Abgrenzungen

Beispiel einer logischen Datenbank

Logische Datenbanken verwenden

Logische Datenbanken bearbeiten

Ende des Inhaltsbereichs