基本列表和次列表系列(1)

创建基本列表

ABAP/4程序将在处理与数据检索(START-OF-SELECTION、GET等)相关的事件时创建的输出数据放置到所谓的基本列表中。

默认情况下,基本列表具有标准页眉。创建基本列表时,如果发生事件TOP-OF-PAGE和END-OF-PAGE,则系统将后续的所有输出写入基本列表的页眉或页脚。处理完所有与数据检索相关的事件之后,系统才会在输出屏幕上显示基本列表。

 

创建次列表

如果用户界面允许触发事件的动作,并且相应的交互式事件的关键字出现在报表中,则该列表就是交互式列表。在交互式列表事件中执行的所有输出语句将其数据写入具有索引SY-LSIND的新列表中(列表级别)。

SY-LSIND系统字段包含当前创建的列表的索引。创建基本列表时,SY-LSIND等于0。每次发生交互式列表事件,系统自动使SY-LSIND加1。

处理完事件关键字定义的整个处理块或使用EXIT或CHECK离开处理块之后,系统才会显示该列表。默认情况下,新列表完全覆盖前面的列表。如果要编写只覆盖部分前面列表的窗口,可以在对话窗口中显示列表。

在交互式列表事件中创建的所有列表都是次列表。

每个交互式列表事件都需要创建新的次列表。使用一个ABAP/4报表可以维护1个基本列表和最多20个次列表。如果用户在下一级上创建列表,则系统将存储前面的列表,并显示新列表。只有一个列表是活动的,并且它总是最近创建的列表。可以通过维护列表来删除现有列表。
对于次列表,系统默认不显示标准页眉。要为次列表创建页眉,必须增强TOP-OF-PAGE:

[语法]

TOP-OF-PAGE DURING LINE-SELECTION.

[Example]

REPORT SAPMZTST NO STANDARD PAGE HEADING.创建基本列表

TOP-OF-PAGE.
WRITE'BASIC TOP'.
ULINE.

TOP-OF-PAGE DURING LINE-SELECTION.
WRITE:'SECONDARY TOP'.
ULINE.

START-OF-SELECTION.

WRITE'Basic List, SY-LSIND ='SY-LSIND.
AT LINE-SELECTION.
WRITE'Secondary List, SY-LSIND ='SY-LSIND.

posted on 2012-08-22 10:42  @bing  阅读(342)  评论(0编辑  收藏  举报

导航