Selektionsbilder und logische Datenbanken 

Die Selektionsteile logischer Datenbanken enthalten Anweisungen zur Definition von Selektionsbildern. Das Standardselektionsbild eines ausführbaren Programms (Report), das mit einer logischen Datenbank verknüpft ist, enthält automatisch die entsprechenden Eingabefelder. Eine Besonderheit auf dem Selektionsbild logischer Datenbanken sind die Freien Abgrenzungen, die es dem Benutzer gestatten dynamische Selektionen für Felder anzugeben, die in der logischen Datenbank nicht statisch vorgesehen sind.

Statische Selektionen logischer Datenbanken

Die statischen Selektionen der logischen Datenbank sind im Selektionsteil der logischen Datenbank mit den gleichen ABAP-Anweisungen definiert, wie die Selektionen des Programms. Welche Eingabefelder für die Selektionen der logischen Datenbank tatsächlich auf dem Bild erscheinen richtet sich nach den Knoten der logischen Datenbank, die mit den Anweisungen TABLES oder NODES im Programm angegeben werden.

Das folgende Programm sei mit der logischen Datenbank F1S verknüpft

REPORT demo.

NODES spfli.

Nach dem Start von DEMO erscheint folgendes Selektionsbild:

Es enthält Eingabefelder für Selektionskriterien und Parameter für die Felder der Datenbanktabelle SPFLI. Die Anweisungen, die dieses Bild definieren (SELECT-OPTIONS und PARAMETERS), stehen im Selektionsteil der logischen Datenbank.

Ein anderes Programm:

REPORT demo.

NODES sbook.

Nach dem Start von DEMO erscheint folgendes Selektionsbild:

Es enthält nicht nur die Eingabefelder der Selektionskriterien für die Datenbanktabelle SBOOK, sondern auch die Kriterien für die Tabellen SPFLI und SFLIGHT.

Die logische Datenbank verwendet also ihre eigenen Selektionen zum Eingrenzen ihrer Datenbankzugriffe. Die von der logischen Datenbank angebotenen Selektionskriterien sollten ausgiebig genutzt werden. Programmspezifische Selektionen sollten nur definiert werden, wenn die Selektionskriterien der logischen Datenbank nicht ausreichen. Die Eingabefelder der programmspezifischen Selektionen erscheinen auf dem Selektionsbild unterhalb der Selektionen der logischen Datenbank.

Freie Abgrenzungen logischer Datenbanken

Logische Datenbank können dem Benutzer die Möglichkeit bieten, freie Abgrenzungen vorzunehmen, die nicht statisch im Selektionsteil der logischen Datenbank definiert sind. Der Benutzer kann diese Selektionen über Freie Abgrenzungen in der Drucktastenleiste des Selektionsbilds erreichen. Es wird dann ein neues Selektionsbild angezeigt, oder ein Bild, auf dem der Benutzer die Datenbankfelder, für die er Selektionskriterien angeben möchte, auswählen kann.

Für die logische Datenbank F1S kann das Bild für freie Abgrenzungen so aussehen:

Freie Abgrenzungen grenzen die Datenbankzugriffe logischer Datenbankprogramme nicht statisch sondern mit dynamischen Anweisungen ein. Die Möglichkeit für freie Abgrenzungen muß im logischen Datenbankprogramm kodiert werden (siehe Freie Abgrenzungen im Datenbankprogramm).

Sind freie Abgrenzungen in einer logischen Datenbank vorgesehen (Freie Abgrenzungen erscheint in der Drucktastenleiste), kann in der ABAP Workbench bestimmt werden, für welche Felder der Benutzer freie Abgrenzungen definieren kann (Selektionsview). Um herauszufinden, welche Datenbanktabellen freie Abgrenzung anbieten, wählt man Sie Werkzeuge ® ABAP Development Workbench ® Entwicklung ® Programmierumfeld ® Logische Datenbanken ® Zusätze ® Freie Abgrenzung. Im folgenden Fenster erscheinen die Namen der entsprechenden Datenbanktabellen.

Für die logische Datenbank F1S sind nur für die Tabelle SPFLI freie Abgrenzungen möglich: