zoukankan      html  css  js  c++  java
  • [转]ABAP学习笔记之五报表的事件

    前面已经介绍了ABAP的基本的知识,现在介绍一下ABAP最常用的报表的一些事件。

    一,  首先介绍一下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:
    设置屏幕标题,在屏幕显示之前调用。

  • 相关阅读:
    廖雪峰python 摘录1
    python web 测试CGI脚本
    AttributeError: 'Athlete' object has no attribute 'top3'
    python类定义小问题
    def函数安装调用的疑惑
    print_lol函数调用
    实现键盘输入信息,按enter键调用摄像头自动拍照
    EditText不能输入表情
    使用videoview播放资源文件夹下的视频
    使用videoview连续自动播放网络视屏
  • 原文地址:https://www.cnblogs.com/wequst/p/1513878.html
Copyright © 2011-2022 走看看