Es folgt eine Zusammenstellung aller möglichen ABAP-Programme, ihrer Bildschirmbilder und Verarbeitungsblöcke.
ABAP-Programme sind aus Verarbeitungsblöcken aufgebaut und können Bildschirmbilder als Komponenten enthalten. Die ABAP-Laufzeitumgebung steuert die Verarbeitungsblöcke und die Bildschirmbilder.
Ausführbare Programme, Modul-Pools und Funktionsgruppen können folgende Bildschirmbilder enthalten und verarbeiten:
· Dynpros
Definition im Screen Painter; können zu Dynpro-Folgen zusammengesetzt werden; Aufruf durch CALL SCREEN oder Transaktionscode; Verarbeitung in Dialogmodulen des zugehörigen ABAP-Programms.
· Selektionsbilder
Definition im ABAP Programm; Aufruf durch CALL SELECTION-SCREEN oder Laufzeitumgebung; Verarbeitung in Ereignisblöcken des zugehörigen ABAP-Programms.
· Listen
Definition im ABAP Programm; Aufruf durch Laufzeitumgebung; Verarbeitung in Ereignisblöcken des zugehörigen ABAP-Programms.
Class-Pools unterstützen zurzeit noch keine Bildschirmbilder. Subroutinen-Pools können keine eigenen Bildschirmbilder enthalten.
Alle ABAP-Programme setzen sich aus Verarbeitungsblöcken zusammen. Verarbeitungsblöcke sind nicht schachtelbar. Die Programmausführung beruht auf dem Aufruf von Verarbeitungsblöcken. Alle Anweisungen eines ABAP-Programms bis auf die die deklarativen Anweisungen des globalen Deklarationsteils sind Teil eines Verarbeitungsblocks.
Es gibt folgende Verarbeitungsblöcke:
Definiert durch MODULE - ENDMODULE in ausführbaren Programmen, Modul-Pools und Funktionsgruppen, kein lokaler Datenbereich und keine Parameterschnittstelle, Aufruf durch die MODULE-Anweisung der Dynpro-Ablauflogik, verarbeiten Dynpros.
Definiert durch Ereignisschlüsselworte; kein lokaler Datenbereich und keine Parameterschnittstelle; reagieren auf Ereignisse der ABAP-Laufzeitumgebung. (Ausnahmen: AT SELECTION-SCREEN und GET sind intern durch Unterprogramme realisiert und haben einen lokalen Datenbereich).
Wir unterscheiden:
· Programmkonstruktor-Ereignis
LOAD-OF-PROGRAM
Einmaliger Aufruf durch ABAP-Laufzeitumgebung direkt nach dem Laden des Programms in den internen Modus; spielt in ausführbaren Programmen, Modul-Pools, Funktionsgruppen und Subroutinen-Pools eine ähnliche Rolle wie Konstruktoren in ABAP Objects.
· Reporting-Ereignisse
INITIALIZATION
START-OF-SELECTION
GET
END-OF-SELECTION
Aufruf durch ABAP-Laufzeitumgebung während der Ausführung eines ausführbaren Programms in vorgegebener Reihenfolge; enthalten Anwendungslogik für ausführbare Programme.
· Selektionsbildereignisse
AT SELECTION-SCREEN OUTPUT
AT SELECTION-SCREEN ON VALUE-REQUEST
AT SELECTION-SCREEN ON HELP-REQUEST
AT SELECTION-SCREEN ON f
AT SELECTION-SCREEN ONBLOCK
AT SELECTION-SCREEN ON RADIOBUTTON GROUP
AT SELECTION SCREEN
AT SELECTION SCREEN ON END OF f
Aufruf durch ABAP-Laufzeitumgebung nach Benutzeraktionen auf einem Selektionsbild in ausführbaren Programmen, Modul-Pools und Funktionsgruppen, verarbeiten Selektionsbilder.
· Listenereignisse
TOP-OF-PAGE
END-OF-PAGE
AT LINE-SELECTION
AT PFnn
AT USER-COMMAND
Aufruf durch ABAP-Laufzeitumgebung während der Listenerstellung oder nach Benutzeraktionen auf einer Liste in ausführbaren Programmen, Modul-Pools und Funktionsgruppen, verarbeiten Listen.
Prozeduren haben einen lokalen Datenbereich und eine Parameterschnittstelle. Es gibt folgende Prozeduren:
· Unterprogramme
Definiert durch FORM - ENDFORM in allen Programmen außer Class-Pools; Aufruf durch PERFORM aus beliebigen ABAP-Programmen.
· Funktionsbausteine
Definiert durch FUNCTION - ENDFUNCTION in Funktionsgruppen; Aufruf durch CALL FUNCTION aus beliebigen ABAP-Programmen.
· Methoden
Definiert durch METHOD - ENDMETHOD in globalen Klassen in einem Class-Pool oder in lokalen Klassen in beliebigen Programmen; Aufruf durch CALL METHOD aus allen ABAP-Programmen für globale Klassen und aus dem Programm, in dem die Klasse definiert ist, für lokale Klassen.