0
点赞
收藏
分享

微信扫一扫

ALV之选择屏幕按钮设定


HELLO,这里是百里,一个学习中的ABAPER,在工作中,我们会经常绘制ALV报表,或者通过ALV进行制造某些功能。我们在选择屏幕节目内可以设定一些按钮从而实现某些功能。 比如经常使用的下载模板啊,上传数据啊等等这些都是可以在选择屏幕界面实行的。那么今天,就讲一下如何在选择屏幕界面增加屏幕按钮。

为什么要增加选择屏幕按钮

使用该功能时要先了解,为什么我需要在选择屏幕的界面增加按钮呢. 一般情况是在是数据导入的时候.我们需要给用户提供一个可参考的模板,从而让用户进行按照我们指定的规则进行数据导入.故而在选择屏幕界面增加按钮 .

技术解析

我们主要使用函数scrfields ,通过调用其中数据内容,从而封装对应的参数,如名称,图标,功能等等

TABLES :sscrfields .

SELECTION-SCREEN:FUNCTION KEY 1.
SELECTION-SCREEN:FUNCTION KEY 2.
CASE sscrfields-ucomm.
* 下载模版
WHEN 'FC01'.
代码
WHEN OTHERS.
ENDCASE.

wa_textfield-icon_id = '图标代码'.
wa_textfield-icon_text = '按钮名称'(000).
sscrfields-functxt_01 = wa_textfield.

实例

我们今天讲述的案例是在选择屏幕界面内容可以增加两个按钮,分别是按钮一,和按钮二,点击按钮一时,跳出'S'类型提示,我是按钮一. 点击按钮二时,跳出弹窗按钮二. 选择执行时这提示.我是alv数据界面 .

数据准备

TABLES: sscrfields .

CONSTANTS: cos_template TYPE w3objid VALUE 'ZSDC010A',
cos_fiename TYPE string VALUE 'forecast by item code导入模板.XLS',
cos_split TYPE c VALUE ';'.
DATA: wa_textfield TYPE smp_dyntxt.

定义屏幕个数

注意这里屏幕个数最多只有九个,也就是说你的选择屏幕界面只能有九个功能按键.

SELECTION-SCREEN:FUNCTION KEY 1.
SELECTION-SCREEN:FUNCTION KEY 2.

定义子例程

FORM selection_screen_button_event .
CASE sscrfields-ucomm.
* 下载模版
WHEN 'FC01'.
MESSAGE '我是按钮1' TYPE 'S' .
" PERFORM download_template(zall_f01) USING cos_template cos_fiename IF FOUND.
WHEN OTHERS.
ENDCASE.
ENDFORM.




FORM selection_screen_button_event1 .
CASE sscrfields-ucomm.
* 下载模版
WHEN 'FC02'.
MESSAGE '我素按钮2' TYPE 'I' .
WHEN OTHERS.
ENDCASE.
ENDFORM.


FORM selection_screen_add_button .
wa_textfield-icon_id = '@49@'.
wa_textfield-icon_text = '下载模板'(000).
sscrfields-functxt_01 = wa_textfield.
ENDFORM.



FORM selection_screen_add_button1 .

wa_textfield-icon_id = '@50@'.
wa_textfield-icon_text = '导入执行'(000).
sscrfields-functxt_02 = wa_textfield.


ENDFORM.

调用子例程

SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE TEXT-002.
PARAMETERS p_file LIKE rlgrap-filename.

SELECTION-SCREEN END OF BLOCK b2.

INITIALIZATION.
* 选择界面按钮添加图标、文字
PERFORM selection_screen_add_button.
PERFORM selection_screen_add_button1.


AT SELECTION-SCREEN.
* 处理选择屏幕的按钮
PERFORM selection_screen_button_event.
PERFORM selection_screen_button_event1.

结果

如图,我们在选择界面增加了两个按钮,分别是下载模板和导入执行,对应的问自己和图标我们都可以自己设定

ALV之选择屏幕按钮设定_后端

点击按钮1

ALV之选择屏幕按钮设定_ico_02

点击按钮2

ALV之选择屏幕按钮设定_前端_03

技术总结

今天讲的内容是,如何在选择屏幕的界面上增加按钮,一般的作用使用于模板下载,权限检查及数据上载等功能.或者数据检查也可以.注意的是我们的按钮在选择屏幕界面只能有9个,一定要注意alv界面的生命周期,如果写的不对,对应的按钮是出不来的.

百里鸡汤

晨钟暮鼓催人急,燕去雁来促我忙。菊灿疏篱情寂寞,

枫红曲岸事仿徨。千金一刻莫空度,老大无成空自伤

这里是百里,一个努力的学习者. 努力学习好好记录,点滴进步,就是成功.

ALV之选择屏幕按钮设定_ico_04

举报

相关推荐

0 条评论