报表事件触发运行过程

一个报表中可能包含多个事件块,在运行期间,系统将按照一定规则进行处理,但并不能说它们的执行先后次序是固定的。有的事件反复被触发,有时事件触发与用户行为相关,尤其是交互性事件。     具体一般性的报表事件触发过程如下:

    (1)首先,一旦用户开始运行类型为1的可执行程序,事件LOAD-OF-PROGRAM被触发,程序开始运行,接下来程序流程将由ABAP运行时环境控制;

    (2)然后,报表程序中定义的初始化过程事件INITIALIZATION被触发;

    (3)接下来,如果程序中定义了供用户输入的选择屏幕,每次选择屏幕输出之前,系统将触发AT SELECTION-SCREEN OUTPUT事件,运行时环境将选择屏幕发送至显示服务器。如果用户在选择屏幕中输入某些值后执行某些功能,系统将触发 AT SELECTION-SCREEN事件;

    (4)接下来,被触发的事件为START-OF-SELECTION(如果没有选择屏幕,该事件就不执行3,直接触发);

    (5)如果报表中使用到逻辑数据库,则接下来触发的事件为GET和GET LATE;

    (6)在START-OF-SELECTION事件或者逻辑数据库事件之后运行时环境触发的事件为END-OF-SELECTION事件,如果有列表,一般在该事件之后输出列表,此后系统运行时环境将控制交给显示服务器;

    (7)列表输出的过程中还将自动触发两个事件过程块:TOP-OF-PAGE和END-OF-PAGE,其中TOP-OF-PAGE一般用于输出页眉、列表标题行等,END-OF-PAGE用户输出页脚;

    (8)如果程序中定义有列表事件,则系统可以相应用户在列表屏幕中的行为,触发各种程序中交互事件。行选择交互事件(AT LINE-SELECTION事件)允许用户从列表中选择某行,并将触发响应事件。如果用户选择其他自定义的功能代码,将触发用户指令交互,即AT-USER-COMMAND事件块。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13478566/viewspace-626094/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/13478566/viewspace-626094/

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值