Um in einer Liste seitenweise, das heißt in Abhängigkeit von der Seitenlänge vertikal zu blättern, können Sie verschiedene Varianten der SCROLL-Anweisungen verwenden.
Um zu bestimmten Seiten zu blättern, verwenden sie die Option TO der SCROLL-Anweisung wie folgt:
SCROLL LIST TO FIRST
PAGE|LAST PAGE|PAGE pag
[INDEX idx] [LINE lin].
Ohne die Option INDEX blättert diese Anweisung die aktuelle Liste zur ersten Seite, letzten Seite, bzw. Seite mit der Seitenzahl pag. Mit der Option INDEX wird in der Liste der Listenstufe idx geblättert. Mehr zu Listenstufen finden Sie unter Benutzeraktionen auf Listen.
Mit der Option LINE wird die Seite, zu der geblättert wird, ab Zeile lin der eigentlichen Liste angezeigt. Dabei zählen die Kopfzeilen nicht mit.
Um eine bestimmte Anzahl von Seiten zu blättern, verwenden Sie die Anweisung SCROLL wie folgt:
SCROLL LIST FORWARD|BACKWARD n PAGES [INDEX idx].
Ohne die Option INDEX blättert diese Anweisung die aktuelle Liste um n Seiten vor bzw. zurück. Die Option INDEX benennt wie oben eine bestimmte Listenstufe.
REPORT demo_list_scroll_2 NO STANDARD PAGE HEADING
LINE-SIZE
40 LINE-COUNT 8(2).
DATA: pag TYPE i VALUE 15,
lin TYPE i VALUE 4.
TOP-OF-PAGE.
WRITE: 'Top of Page', sy-pagno.
ULINE.
END-OF-PAGE.
ULINE.
WRITE: 'End of Page', sy-pagno.
START-OF-SELECTION.
DO 100 TIMES.
DO 4 TIMES.
WRITE / sy-index.
ENDDO.
ENDDO.
SCROLL LIST TO PAGE pag LINE lin.
Dieses Programm erzeugt eine hundertseitige Liste von jeweils 8 Zeilen. Von jeder Seite werden vier Zeilen für Seitenkopf und Seitenfuß verwendet. Wegen der die SCROLL-Anweisung sieht die Ausgabe nach dem Programmstart folgendermaßen aus:
Die Liste wird ab Seite 15 dargestellt. Die ersten drei Zeilen der eigentlichen Liste sind wegen der LINE-Option unter den Seitenkopf gescrollt.