zoukankan      html  css  js  c++  java
  • SAP的Selection屏幕的事件处理顺序

    一、abap程序处理顺序图

    二、INITIALIZATION 和 START-OF-SELECTION 事件之间的事件顺序

    该图有一个错误,START-OF-SELECTION执行是回到INITIALIZATION事件,但是INTITIALIZATION事件的对选择屏幕的修改只有第一次影响选择屏幕字段,再次执行时不会影响选择屏幕字段,选择屏幕字段将保持用户输入的内容。
    对于一些录入检查警告提示处理应该放到AT SELECTION-SCREEN.事件中,这样就不会再次执行INITIALIZATION事件

    三、处理说明

    1、程序首先执行INITIALIZATION 事件;

    2、接着执行AT SELECTION SCREEN OUTPUT事件(也就是PBO) ,在这个事件里你可以通过修改系统默认screen内表修改屏幕的某些属性;
    PARAMETERS: TEST1(10) MODIF ID SC1,
                TEST2(10) MODIF ID SC2,
                TEST3(10) MODIF ID SC1,
                TEST4(10) MODIF ID SC2.
    AT SELECTION-SCREEN OUTPUT.
    LOOP AT SCREEN.
      IF SCREEN-GROUP1 = 'SC1'.
        SCREEN-INTENSIFIED = '1'.
        MODIFY SCREEN.
        CONTINUE.
      ENDIF.
      IF SCREEN-GROUP1 = 'SC2'.
        SCREEN-INTENSIFIED = '0'.
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.

    3、系统将屏幕输出到用户端,用户就可进行交互操作了。也就是PAI处理,其分为
    3.1字段AT SELECTION-SCREEN ON XXXX.
    REPORT EVENT_DEMO.
    NODES SPFLI.
    AT SELECTION-SCREEN ON CITY_FR.
      IF CARRID-LOW EQ 'AA' AND CITY_FR NE 'NEW YORK'.
        MESSAGE E010(HB).
      ENDIF.
    3.2区域AT SELECTION-SCREEN ON BLOCK  XXXX.
    REPORT EVENT_DEMO.
    SELECTION-SCREEN BEGIN OF BLOCK PART1 WITH FRAME.
      PARAMETERS: NUMBER1 TYPE I,
                  NUMBER2 TYPE I,
                  NUMBER3 TYPE I.
    SELECTION-SCREEN END OF BLOCK PART1.

    SELECTION-SCREEN BEGIN OF BLOCK PART2 WITH FRAME.
      PARAMETERS: NUMBER4 TYPE I,
                  NUMBER5 TYPE I,
                  NUMBER6 TYPE I.
    SELECTION-SCREEN END OF BLOCK PART2.

    AT SELECTION-SCREEN ON BLOCK PART1.
      IF NUMBER3 LT NUMBER2 OR
         NUMBER3 LT NUMBER1 OR
         NUMBER2 LT NUMBER1.
         MESSAGE E020(HB).
      ENDIF.

    AT SELECTION-SCREEN ON BLOCK PART2.
      IF NUMBER6 LT NUMBER5 OR
         NUMBER6 LT NUMBER4 OR
         NUMBER5 LT NUMBER4.
         MESSAGE E030(HB).
      ENDIF.

    3.3屏幕AT SELECTION-SCREEN
    在此事件里可以进行对用户输入进行完整性进行检查。
    在PAI处理中出现错误,系统返回屏幕,请求用户重新输入;

    4、当所有的PAI执行后,则进入START-OF-SELECTION事件的执行。

  • 相关阅读:
    Java环境变量的简记
    win10系统安装postgresql后无法连接
    VB.net Postgresql调用,NpgsqlDataReader,NpgsqlDataAdapter的调用例子。
    Postgresql服务器无法连接(10060错误信息)
    解决visual studio的No EditorOptionDefinition 错误
    从零开始Wordpress建站经验分享,内附耗时及成本
    Servlet端 接收不到4096,8192长度的JSON参数
    Wiser的Junit测试用法
    Oracle表生成JavaBean
    mysql表生成JavaBean
  • 原文地址:https://www.cnblogs.com/xiaomaohai/p/6157545.html
Copyright © 2011-2022 走看看