博客
关于我
ABAP-事件流(全)
阅读量:350 次
发布时间:2019-03-04

本文共 909 字,大约阅读时间需要 3 分钟。

ABAP程序的事件流是程序执行的关键流程,以下是常见的12个事件及其用途:

  • LOAD-OF-PROGRAM

    当程序开始执行时,系统会自动调用此事件。通常用于初始化数据,例如设置默认值或进行初始配置。此事件无需手动声明,可在SUBMIT、CALL TRANSACTION等操作中自动触发。

  • INITIALIZATION

    仅适用于报表程序,用于在选择屏幕显示之前执行代码。

    • 可以用来赋值选择屏幕中的字段,特别是在使用逻辑数据库时,初始值的设置必须在此事件中完成,否则无法修改。
    • 常用于为输入字段设置默认值或初始条件。
  • AT SELECTION-SCREEN

    选择屏幕显示前触发此事件。

    • 此事件类似于FORM,声明的变量属于局部变量。
    • 可以通过SY-UCOMM系统变量判断用户操作,如是否选择了某个选项或按钮。
    • 支持多种事件响应,如ON psel(参数变化)、ON END OF sel(选择事件)、ON VALUE-REQUEST(辅助选择)等。
    • 是处理屏幕事件(如单选框、复选框、帮助信息显示等)的主要方法。
  • START-OF-SELECTION

    报表程序进入第二屏幕前执行,通常用于获取数据或准备初始数据。

    • 在报表输出前,系统会自动调用此事件。
  • GET

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

    • 用于从数据库中获取所需的数据,常用于报表生成或数据处理。
  • END-OF-SELECTION

    第二屏幕显示完毕后触发,用于结束报表处理流程。

  • MODULE

    当调用自定义屏幕时,用于响应屏幕事件的方法。

    • 主要用于处理自定义屏幕中的用户操作,如按钮点击、表格选择等。
  • ENDMODULE

    结束MODULE事件处理,通常用于结束自定义屏幕的响应流程。

  • CHECK

    用于检查逻辑数据库中的数据是否存在或验证数据有效性。

    • 只针对逻辑数据库适用,常用于数据验证或异常处理。
  • REJECT

    退出逻辑数据库处理,通常用于数据不合法时退出程序。

    • 只针对逻辑数据库适用,常用于数据输入验证失败时终止程序。
  • STOP

    结束当前处理块,通常用于提前退出程序或暂停流程。

  • RETURN

    返回当前处理块,通常用于函数模块或块中的返回操作。

  • 转载地址:http://raoe.baihongyu.com/

    你可能感兴趣的文章
    perspective意思_2020年12月英语四级词汇讲解丨考点归纳:perspective
    查看>>
    PE启动盘和U启动盘(第三十六课)
    查看>>
    PE文件,节头有感IMAGE_SECTION_HEADER
    查看>>
    PE查找文件偏移地址
    查看>>
    PE知识复习之PE的导入表
    查看>>
    pfsense关闭nat
    查看>>
    PFX(Parallel Framework) and Traditional Multithreading
    查看>>
    PGOS:今天动手给电脑装青苹果Win7 X64位系统
    查看>>
    pgpool-II3.1 的内存泄漏(一)
    查看>>
    PgSQL · 特性分析 · PG主备流复制机制
    查看>>
    PGSQL主键序列
    查看>>
    PGSQL安装PostGIS扩展模块
    查看>>
    pg数据库中两个字段相除
    查看>>
    PhalApi:[1.23] 请求和响应:GET和POST两者皆可得及超越JSON格式返回
    查看>>
    Phalcon环境搭建与项目开发
    查看>>
    Phantom.js维护者退出,项目的未来成疑
    查看>>
    Pharmaceutical的同学们都看过来,关于补码运算的复习相关内容
    查看>>
    Phoenix 查看表信息及修改元数据
    查看>>
    phoenix_执行sql报错_Error: ERROR 504 (42703): Undefined column. columnName=(state=4270_大数据工作笔记0181
    查看>>
    phoenix启动失败_The history file `/root/.sqlline/history` may be an older history---记录024_大数据工作笔记0184
    查看>>