Anfang des InhaltsbereichsINITIALIZATION Dokument im Navigationsbaum lokalisieren

Dieses Ereignis tritt vor dem Aufruf des Standardselektionsbilds auf. Im entsprechenden Ereignisblock können die Eingabefelder des Standardselektionsbilds einmalig nach dem Programmstart initialisiert werden. Wenn ein Report ein Standardselektionsbild definiert, wird nach Ausführung des Reports der gleiche Report vom System automatisch nochmals aufgerufen (über SUBMIT). Dabei wird auch das Ereignis INITIALIZATION wieder ausgelöst. Dabei ist aber zu beachten, daß die Initialisierung von Parametern oder Selektionskriterien dann keine Wirkung mehr hat, da diese zum Zeitpunkt AT SELECTION-SCREEN OUTPUT wieder mit den vorhergehenden Benutzereingaben des Selektionsbilds versorgt werden. Nur die bei INITIALIZATION gesetzten übrigen globalen Programmfelder werden bei jedem erneuten Programmdurchlauf auch wieder initialisiert.

Zu INITIALIZATION (aber auch zu AT SELECTION-SCREEN OUTPUT) können die Standardwerte für Parameter oder Selektionskriterien, die in logischen Datenbanken deklariert sind, geändert werden. Bei einem Selektionskriterium sollten dabei zumindest die Komponenten <seltab>-SIGN, <seltab >-OPTION und <seltab>-LOW der Selektionstabelle <seltab> gefüllt werden, da das Selektionskriteriums ansonsten undefiniert ist.

Bei der Initialisierung von Eingabefeldern der logischen Datenbank müssen die Namen der Felder ermittelt werden. Hierzu kann man die logische Datenbank SAPDB<ldb> selbst untersuchen (mit Transaktion SLDB oder über Werkzeuge ® ABAP Workbench ® Entwicklung ® Programmierumfeld ® Logical Database Builder) oder die technischen Informationen zu dem gewünschten Feld anzeigen. Hierzu aktiviert man auf dem Selektionsbild zum gewünschten Eingabefeld die F1-Hilfe und wählt im angezeigten Dialogfenster Technische Info. Im Feld Dynprofeld des folgenden Fensters erscheint der Name des im Programm verwendeten Feldes.

Beispiel

Der folgende Report ist mit der logischen Datenbank F1S verknüpft:

REPORT event_demo.

PARAMETERS datum TYPE sy-datum DEFAULT sy-datum.

NODES spfli.

Nach dem Programmstart erscheint das Selektionsbild.

Diese Grafik wird im zugehörigen Text erklärt

Nur der Parameter DATUM ist im Programm selbst deklariert. Die übrigen Eingabefelder sind in der logischen Datenbank F1S definiert.

Durch Aufruf der F1-Hilfe für das erste Eingabefeld von Fluggesellschaft und Auswahl von Technische Info findet man den Namen CARRID-LOW im Feld Dynprofeld. Das ist die Komponente der Selektionstabelle, die dem ausgewählten Eingabefeld entspricht. Daraus kann man schließen, daß das Selektionskriterium CARRID heißt. Auf gleiche Weise kann man ermitteln, daß die Parameter der Eingabefelder Abflugstadt und Ankunftstadtr CITY_FR und CITY_TO heißen.

Der Report wird nun wie folgt geändert:

REPORT demo_program_initialization.

PARAMETERS datum TYPE sy-datum DEFAULT sy-datum.

NODES spfli.

INITIALIZATION.
  airp_fr-sign = 'I'.
  airp_fr-option = 'EQ'.
  airp_fr-low = 'JFK'.
  APPEND airp_fr.
  airp_to-sign = 'I'.
  airp_to-option = 'EQ'.
  airp_to-low = 'FRA'.
  APPEND airp_to.
  carrid-sign   = 'I'.
  carrid-option = 'BT'.
  carrid-low    = 'AA'.
  carrid-high   = 'LH'.
  APPEND carrid.
  datum+6(2) = '01'.

Dadurch wird das Selektionsbild wie folgt vorgefüllt:

Diese Grafik wird im zugehörigen Text erklärt

Ende des Inhaltsbereichs