Show TOC Anfang des Inhaltsbereichs

Dynpro-Folgen  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 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 Dynpro-Folgen 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 Dynpro-Folge 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 Dynpro-Folgen zusammenstellen. Dabei kann beispielsweise von einem Dynpro zu beliebigen Folge-Dynpros 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 Dynpro-Folge erfolgt durch den Aufruf des ersten Dynpros. Dies geschieht entweder durch den Start einer Transaktion, in der das Einstiegs-Dynpro festgelegt ist, oder durch die Anweisung CALL SCREEN in einem ABAP-Programm. Falls eine Dynpro-Folge durch die Anweisung CALL SCREEN aufgerufen wird, ist sie immer in eine bereits ablaufende Dynpro-Folge des Anwendungsprogramms eingebettet.

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

Dynpro-Folgen können auch ausgeführt werden, ohne dass 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 Dynpro-Folge Listen angezeigt werden sollen (siehe Wechsel zwischen Dynpro und Listenanzeige).

Eine Dynpro-Folge 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 Dynpro-Folge. Nach der Beendigung einer Dynpro-Folge 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 Dynpro-Folgen etwas näher.

Statisches Folge-Dynpro

Dynamisches Folge-Dynpro

Dynpros programmgesteuert beenden

Dynpro-Folgen aufrufen

Modale Dialogfenster einbetten

Beispieltransaktion für Dynpro-Folgen

Einstiegsbilder über SPA/GPA-Parameter füllen

Ende des Inhaltsbereichs