Anfang des Inhaltsbereichs

Dynprofolgen Dokument im Navigationsbaum lokalisieren

Für den Benutzer am Bildschirm besteht ein Anwendungsprogramm aus einer Folge von Bildschirmbildern, die nacheinander angezeigt werden. Ein wesentlicher Unterschied zwischen der Steuerung bei ausführbaren Programmen vom Typ 1 und dialoggesteuerten Programmen ist die freie Programmierbarkeit der Bildschirmfolgen. Bei ausführbaren Programmen wird die Bildschirmfolge erst einmal durch zeitlich festgelegte Ereignisse gesteuert. Bei der dialoggesteuerten Ausführung können Dynprofolgen vom Programmierer frei definiert werden und der Benutzer kann den Programmablauf durch Aktionen steuern. Es ist aber auch jederzeit möglich in einem ausführbaren Programm eine frei definierte Dynprofolge aufzurufen und dadurch in die dialoggesteuerte Ausführung zu verzweigen.

Dynpros sind gehören immer zu einem ABAP-Programm. Die Dialogmodule eines ABAP-Programms können nur von den Dynpros des Programms aufgerufen werden. Das Systemfeld SY-DYNNR enthält immer die Nummer des jeweils aktuellen Dynpros. Aus den Dynpros eines Programms lassen sich beliebig komplexe Dynprofolgen zusammenstellen. Dabei kann beispielsweise von einem Dynpro zu beliebigen Folgedynpros des gleichen ABAP-Programms verzweigt werden oder eine Teilfolge mehrmals durchlaufen werden.

Diese Grafik wird im zugehörigen Text erklärt

Der Einstieg in eine Dynprofolge erfolgt durch den Aufruf des ersten Dynpros. Dies geschieht entweder durch den Start einer Transaktion, in der das Einstiegsdynpro festgelegt ist, oder durch die Anweisung CALL SCREEN in einem ABAP-Programm. Falls eine Dynprofolge durch die Anweisung CALL SCREEN aufgerufen wird, ist sie immer in eine bereits ablaufende Dynprofolge des Anwendungsprogramms eingebettet.

Dynprofolgen werden durch die Festlegung eines Folgedynpros definiert. Für jedes Dynpro ist in den Dynproattributen im Werkzeug Screen Painter ein statisches Folgedynpro festgelegt. Dadurch ist eine statische Dynprofolge vordefiniert. In der ABAP-Verarbeitungslogik kann der Wert des statischen Folgedynpros dynamisch überschrieben werden. Dies ermöglicht die Definition beliebiger dynamischer Dynprofolgen, die von Benutzeraktionen abhängen können.

Dynprofolgen können auch ausgeführt werden, ohne daß alle Bildschirmbilder angezeigt werden. Um das Bildschirmbild eines Dynpros zu unterdrücken verwendet man die Anweisung SUPPRESS DIALOG in einem PBO-Modul. Es wird zwar die gesamte PBO- und PAI-Logik ausgeführt, das Bildschirmbild aber nicht angezeigt. Die Unterdrückung von Bildschirmbildern kann nützlich sein, wenn in einer Dynprofolge Listen angezeigt werden sollen (siehe Wechsel zwischen Dynpro und Listenanzeige).

Eine Dynprofolge wird immer durch eine Verzweigung zum Folgedynpro Null beendet. Es kann kein Dynpro mit der Nummer Null angelegt werden. Die Dynpronummer Null dient ausschließlich der Beendigung einer Dynprofolge. Nach der Beendigung einer Dynprofolge kehrt das System an die Stelle zurück, von der aus das erste Dynpro der Folge aufgerufen wurde. Bei einem Aufruf durch einen Transaktionscode ist dies die Stelle an der die Transaktion gestartet wurde. Bei einem Aufruf durch CALL SCREEN ist dies eine Stelle im zugehörigen ABAP-Programm.

Die folgenden Abschnitte erläutern die Techniken zur Definition von Dynprofolgen etwas näher.

Statisches Folgedynpro

Dynamisches Folgedynpro

Dynpros programmgesteuert beenden

Dynprofolgen aufrufen

Modale Dialogfenster einbetten

Beispieltransaktion für Dynprofolgen

Ende des Inhaltsbereichs