Hallo Falko,
grundlegend stehen Dir zum Bildwechsel folgende Möglichkeiten zur Verfügung:
- statische Hinterlegung des Folgedynpros in den Dynproattributen
- dynamische Übersteuerung dieses Wertes mit setscreen ___ / Leave Screen.
- "Einschieben" einer Bildfolge mittels CALL-Kette
SAP läßt Call-Ketten bis zu 50 Stufen zu (Information aus SAP Schulung).
Eine Regel wann CALL oder LEAVE zu verwenden ist gibt es meines Erachtens nach nicht...
Angenommen es gibt ein Dynpro 0100.
Das Folgedynpro ist 0200.Auf dem 0100 machst Du einen CALL zum Dynpro 0300, und vom 0300 einen CALL zum Dynpro 0500...
Code: Alles auswählen.
1 Stufe: 0100 ---Folgedynpro---> 0200
|
|
2 Stufe: |---CALL---> 0300 ---Folgedynpro---> 0400
|
|
3 Stufe: |---CALL---> 0500
Beim Aufruf von CALL SCREEN wird die aktuelle Dynproverarbeitung 0100 (Stufe 1) unterbrochen und das Dynpro 0300 prozessiert und ggfs. Folgedynpros...
Beim darauffolgenden CALL SCREEN wird die Verarbeitung des Dynpro 0300 (Stufe 2) unterbrochen und das Dynpro 0500 prozessiert...
Durch SET SCREEN 0. LEAVE SCREEN. bzw. LEAVE TO SCREEN 0. kehrst Du an die Aufrufstelle zurück -> Stufe 2. Das rufende Dynpro wird dann weiter prozessiert. Auf diese Weise sollte der entstandene Stack wieder abgebaut werden. Folgescreen 0 führt also im CALL-Modus zurück zum aufrufenden Bild, auf der obersten Dynproebene zum Programmende.
Mit LEAVE TO SCREEN x ( <> 0 ) wird also an der Aufrufstelle die Verarbeitung des aktuellen Dynpros beendet und auf dem entsprechenden Dynpro fortgefahren ohne zu schachteln...
Einen Systemzähler kenn ich auch nicht... Zähl doch beim Aufruf in einer Variablen...
Gruß,
Oliver