ABAP报表事件的分类

<1>,报表过程事件:报表运行过程中由系统自动控制,按一定次序触发的事件,其目的是从数据库中选择数据并整理,
整备进行列表输出。这些事件从报表程序启动开始就被系统按顺序触发。
* INITIALIZATION 初始化事件,用于初始化程序,例如选择屏幕中字段默认值的填充。
* START-OF-SELECTION 选择开始事件,如果报表中含有选择事件,则在选择屏幕的处理结果触发,是报表程序的默认事件块;
如果程序中部分代码不隶属于任何其他事件关键字,则自动被插入到该事件块的初始部分。
* END-OF-SELECTION 选择结束事件,如果程序中使用逻辑数据库,则在所有逻辑数据库处理结束后触发;一般在该事件之中
输出列表。

<2>,选择屏幕事件:如果报表需要使用选择屏幕接受用户输入,除定义选择屏幕元素之外,还需要编辑选择屏幕事件块来对选择屏幕行为进行控制,
与其相关的系列事件将在INITIALIZATION之后START-OF-SELECTION之前被触发。
* AT SELECTION-SCREEN OUTPUT 选择屏幕PBO事件,显示选择屏幕之前触发。
* AT SELECTION-SCREEN ... 选择屏幕PAI事件,用户在选择屏幕中执行某些功能后被触发。该事件关键字语句包含多个附加项,
可以用于控制选择屏幕状态,并对其中的用户交互进行相应。

<3>,逻辑数据库事件:如果报表中使用到逻辑数据库,则在START-OF-SELECTION事件结束之后将触发逻辑数据库事件。
* GET node ... 选择逻辑数据库中当前级别数据中的数据。
* GET node LATE 选择逻辑数据库中上一级别数据源中的数据。

<4>,列表事件:在所有报表过程和选择屏幕事件结束之后,系统将开始触发列表事件,这些事件块控制列表输出状态,负责处理列表过程中的交互并响应用户行为。
* TOP-OF-PAGE 页眉控制,在每个新页面开始前触发。
* END-OF-PAGE 页脚控制,在当前页面结束前出发。
* AT-LINE-SELECTION 行选择控制,用户选择某列表行时触发。
* AT-USER-COMMAND 用户交互控制,用户选择某个GUI功能时触发。
如果一个报表中定义了后两种事件块之一,则称其为交互式报表,因为这种报表不仅能显示列表输出,还可以根据用户的行为给出更多其他的交互性信息。

猜你喜欢

转载自blog.csdn.net/littlemangoyx/article/details/80254167
今日推荐