80 likes | 251 Views
Dialogorientierte Programmierung in ABAP. Übung 9. Programm, das es dem Benutzer erlaubt, eine bestimmte Aufgabe (Transaktion) durchzuführen. Zu einem Dialogprogramm gehören u.a. ein ABAP-Programm Mit dem Programmtyp 'Modulpool', Dynpros und ein Transaktionscode.
E N D
Programm, das es dem Benutzer erlaubt, eine bestimmte Aufgabe (Transaktion) durchzuführen. Zu einem Dialogprogramm gehören u.a. ein ABAP-Programm Mit dem Programmtyp 'Modulpool', Dynpros und ein Transaktionscode. Dialogprogramme können mit Hilfe eines Transaktionscodes gestartet werden. Dialogprogramm
Der Transaktionscode startet eine Dynproablaufkette. Alternativ zum Start über über einen Transaktionscode kann die Dynproablaufkette aus jedem ABAP- Programm mit der Anweisung CALL SCREEN gestartet werden. Transaktionscode
Ein Dynpro (DYnamisches PROgramm) besteht aus einem Bildschirmbild und dessen Ablauflogik. Dynpros werden mit dem Werkzeug Screen Painter der ABAP-Workbench erstellt. Jedes Dynpro ist mit einem ABAP-Programm verknüpft. Das Bildschirmbild selbst hat ein Layout, das die Position von Ein- /Ausgabefeldern, Textfeldern und grafischen Bedienelementen wie Auswahlknöpfen und Ankreuzfeldern bestimmt. Die Ablauflogik besteht aus zwei Teilen: Der Teil PBO (Process Before Output) legt fest, welche Verarbeitungen vor dem Senden des Bildschirms stattfinden. Der Teil PAI (Process After Input) legt fest welche Verarbeitungen nach einer Benutzeraktion auf dem Bildschirm stattfinden. Dynpros
Zu jedem Bildschirmbild gehört ein GUI-Status vom Typ Dialogstatus. Dieser verwaltet Menuleisten, Symbolleisten und Drucktastenleisten, die der direkten Eingabe von Benutzeranweisungen auf dem Bildschirm dienen. Ein GUI-Status ist wie ein Dynpro ein eigenständiges Entwicklungsobjekt eines ABAP- Programms und wird mit dem Werkzeug Menu Painter der ABAP Workbench gepflegt. GUI-Status
Jedes Dynpro und jeder GUI-Status im R/3-System sind mit genau einem ABAP-Programm verknüpft. Das zugehörige ABAP-Programm enthält die Dialogmodule, die von der Dynpro-Ablauflogik aufgerufen werden und verarbeitet die Benutzereingaben des GUI-Status. Ein ABAP-Programm mit Dynpros heißt auch Dialogprogramm. Bei einem Modulpool vom Typ M ist der zeitlich zuerst aufgerufene Verarbeitungsblock immer ein Dialogmodul. Es können aber auch andere ABAP-Programme, z.B. vom Typ 1 oder vom Typ F mit Dynpros verknüpft sein. Dann wird der erste Verarbeitungsblock anders aufgerufen, z.B. über die Laufzeitumgebung oder über den Aufruf einer Prozedur, und die Dynprofloge wird durch CALL SCREEN gestartet. Bei den Dialogmodulen werden PBO- und PAI-Module unterschieden. Dialogmodule, die zum Zeitpunkt PBO aufgerufen werden, sollen die Bildschirmmaske kontextabhängig vorbereiten, z.B. durch Setzen von Feldinhalten oder durch Ausblenden nicht benötigter Felder im Bildschirmlayout. ABAP-Programm
Sie werden in diesem Beispiel den wirtschaftlichen Prozess „Verbuchung eines Wertpapierhandels“ als vollständige Änderungstransaktion programmieren. Sie besteht aus einem Modulpool mit drei Dynpros und einer SAP-Transaktion, die ihn startet. Dynpro 100 dient der Selektion des Kunden Dynpro 200 listet die Positionen der Wertpapierdepots dieses Kunden in einer Tabelle auf. Dynpro 300 verbucht den zu- und verkauf Wertpapiere für eine vorhandene Wertpapierposition. Übung „ Verbuchung eines Wertpapierhandels“