[SAP ABAP] 在选择屏幕上的标准工具栏上增加自定义按钮

SAP系统的选择屏幕的标准工具栏上预先定义了5个按钮,对应的功能码是FC01、FC02、FC03、FC04、FC05,该功能码默认是不激活的。用户可以使用以下代码来激活这5个按钮

SELECTION-SCREEN FUNCTION KEY i.

提示Tips:这里的 i 必须是整数1-5,五个按钮的文本放在sscrfields数据库表对应的functxt_0i中

当用户按下按钮时,系统将会触发 AT SELECTION-SCREEN 事件,并将功能码放到sscrfields数据库表中的ucomm字段

示例

在SAP报表的选择屏幕上添加两个自定义按钮:"模板下载"和"数据上传",这两个按钮将对应于功能码FC01和FC02

① 定义按钮

在选择屏幕上定义这两个按钮,并激活系统预定义的按钮位置

② 设置按钮文本

在 INITIALIZATION 事件中,设置这两个按钮的文本描述 

③ 处理按钮事件

在 AT SELECTION-SCREEN 事件中,处理用户点击这两个按钮的动作 

④ 实现按钮功能

实现 download_template 和 upload_data 两个子例程,用以处理按钮点击后的具体逻辑

完整程序代码

REPORT z437_test_2024.

SELECTION-SCREEN FUNCTION KEY 1. " 激活第一个按钮
SELECTION-SCREEN FUNCTION KEY 2. " 激活第二个按钮

TABLES: sscrfields.

PARAMETERS: p_carrid TYPE s_carr_id,
            p_cityfr TYPE s_from_cit.


*----------------------------------------------------------------------*
*  DESC: INITIALIZATION 事件
*----------------------------------------------------------------------*
INITIALIZATION.
  sscrfields-functxt_01 = '模板下载'. " 设置第一个按钮的文本
  sscrfields-functxt_02 = '数据上传'. " 设置第二个按钮的文本


*----------------------------------------------------------------------*
*  DESC: AT SELECTION-SCREEN  事件
*----------------------------------------------------------------------*
AT SELECTION-SCREEN.
  CASE sy-ucomm.
    WHEN 'FC01'. " 当用户点击"模板下载"按钮
      PERFORM download_template.
    WHEN 'FC02'. " 当用户点击"数据上传"按钮
      PERFORM upload_data.
  ENDCASE.

FORM download_template.  
  MESSAGE '正在下载模板...' TYPE 'I'.  " 添加下载模板的逻辑
ENDFORM.

FORM upload_data.  
  MESSAGE '正在上传数据...' TYPE 'I'.  " 添加数据上传的逻辑
ENDFORM.

输出结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值