技术开发 频道

ABAP报表的事件

【IT168 技术文章】

    一, 首先介绍一下ABAP的程序的类型:

    Program type(程序类型)Introductory statement(类型描述)

    1 REPORT(报表)

    M PROGRAM(屏幕程序)

    F FUNCTION-POOL(函数组)

    K CLASS-POOL(类组)

    J CLASS-POOL(接口组)

    T TYPE-POOL(类型池)

    二, 下面介绍报表中用到的事件以及作用:

    1. LOAD-OF-PROGRAM:程序开始执行时候自动调用

    这个事件在SUBMIT,CALL TRANSACTION,PERFORM等执行的时候系统会自动调用这个事件。所以无需声明即可。

    2. INITIALIZATION

    (1).只能用于报表程序

    (2).在选择屏幕出现之前执行,如果用逻辑数据库的话,这个是唯一能够修改选择屏幕初始值的地方。

    (3).通常的用法是在这里给选择屏幕中的字段赋值。

    3. AT SelectION-SCREEN

    (1).其实就像一个FORM,所以在这个事件里声明的变量都是局部变量。

    (2).根据SY-UCOMM这个系统变量可以判断用户的命令

    (3).在这个事件里响应的是屏幕上选择条件中的事件,例如CHECKBOX的选择与否,RADIOBUTTON的选择,LISTBOX

    的选择等等。所以分为以下几个方面:

    1. ... ON psel :在PARAMETER变化是触发的事件

    2. ... ON END OF sel :Select-OPTION触发的事件

    3. ... ON VALUE-REQUEST FOR psel_low_high :选择的帮助(F4)

    4. ... ON HELP-REQUEST FOR psel_low_high :选择的帮助(F1)

    5. ... ON RADIOBUTTON GROUP radi :单选按钮事件

    6. ... ON BLOCK block :框架的触发事件

    7. ... OUTPUT :响应屏幕上的事件,修改选择屏幕的唯一方法

    4. START-OF-SelectION

    报表程序必须执行的事件,在进入第二屏幕之前触发。

    5. GET

    获得逻辑数据库的值。前提是必须首先声明逻辑数据库。

    6. END-OF-SelectION

    第二屏幕显示完毕,结束处理。

    7. MODULE

    这个是当你调用自己定义的屏幕时,响应屏幕事件的方法。

    8. ENDMODULE

    9. CHECK

    只对逻辑数据库使用,检查是否取得数据。

    10. REJECT

    同样只对逻辑数据库使用,退出。

    11. STOP

    结束一个处理块。

    12. RETURN

    返回一个处理块。

    三, 附加说明:

    1. SET PF-STATUS:

    基本语法格式:SET PF-STATUS pfstat.

    扩展:

    1. ... EXCLUDING f oder ... EXCLUDING itab

    2. ... IMMEDIATELY

    3. ... OF PROGRAM progname

    这个是设置屏幕菜单,命令行等的命令,详细地信息我会在后面关于菜单设计的时候说明。

    2. SET TITLEBAR:

    设置屏幕标题,在屏幕显示之前调用。

    adJustImgs($('postbody')); linkTxt($('postbody'));

0
相关文章