基本列表和次列表系列(2)
要从高列表级返回到较低级(SY-LSIND),用户选择次列表上的"返回"。然后,系统释放当前显示的列表,并激活前一步创建的列表。系统删除已释放列表的内容。
要显式地指定在其中放置输出的列表级,需要设置SY-LSIND字段。系统只接受与现有列表级相对应的索引值。然后,删除其索引大于或等于指定索引所有现有列表级。例如,将SY-LSIND设置为0,系统将删除所有次列表,并用当前次列表覆盖基本列表。
系统只在事件结束处,在显示次列表之前直接对SY-LSIND的操作做出反应。所以,如果在处理块中使用语句,该语句的INDEX选项使用SY-LSIND索引(如SCROLL)访问列表,则应确保只在处理这些报表之后使用SY-LSIND字段。为了避免错误最好是将使用到SY-LSIND的语句作为处理块的最后一条语句输入。
[Example]
REPORT SAPMZTST NO STANDARD PAGE HEADING.
TOP-OF-PAGE.
WRITE: 'BASIC TOP'.
ULINE.
END-OF-PAGE.
WRITE: 'BASIC END'.
TOP-OF-PAGE DURING LINE-SELECTION.
WRITE:'SECONDARY TOP'.
ULINE.
START-OF-SELECTION.
WRITE: 'Basic List, SY-LSIND =', SY-LSIND.
AT LINE-SELECTION.
IF SY-LSIND = 3.
SY-LSIND = 0.
ENDIF.
WRITE: 'Secondary List, SY-LSIND =', SY-LSIND.