at selection-screen的用法

本文深入探讨了ABAP ATSELECTION-SCREEN中的关键事件响应和输出处理机制,包括如何使用这些事件进行选择屏幕的交互式操作、验证和屏幕字段的动态修改。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

AT SELECTION-SCREEN
是PAI处理,选择屏幕显示之后,用来响应回车,F8,F1,F4等事件
(1).选择屏幕事件,此处声明的变量是局部变量。
(2).check sy-ucomm 判断用户命令。
(3).在这个事件响应中,可以对屏幕字段进行有效性检验等,但无法修改选择屏幕。
所以分为以下几个方面:
1. ON field :在PARAMETER变化时触发的事件,对于选择屏幕某字段输入的PAI事件,当该字段的值被传递给程序时被触发,可以应用于改字段本身的正确性检查,如可系统提示错误,则可以在该字段中重新输入,此时其他元素呈灰色,不接受输入
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 :框架的触发事件

AT SELECTION-SCREEN OUTPUT :PBO处理,在选择屏幕显示之前就被调用;响应屏幕上的事件,用户回车或F8后也被调用;通过modify screen可以修改选择屏幕字段。

AT SELECTION-SCREEN ON S_EQUI.
  CHECK SY-UCOMM = 'ONLI'.”F8
  IF S_EQUI IS INITIAL.
    MESSAGE mess TYPE 'E'.
  ENDIF.

AT SELECTION-SCREEN OUTPUT.
IF SCREEN-NAME = 'KOSTL_TX' .”成本中心描述


IF S_KOSTL-LOW IS NOT INITIAL.
    CALL FUNCTION 'ZIP_GET_KOSTL_NM' ”通过成本中心S_KOSTL取得成本中心描述L_KOSTL
      EXPORTING
        I_KOSTL = S_KOSTL-LOW
      IMPORTING
        E_GTEXT = L_KOSTL.
    KOSTL_TX = L_KOSTL.”修改屏幕字段成本中心描述
  ELSE.
    KOSTL_TX = SPACE.
  ENDIF.
ENDIF.
MODIFY SCREEN.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值