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.
结果
如图,我们在选择界面增加了两个按钮,分别是下载模板和导入执行,对应的问自己和图标我们都可以自己设定
点击按钮1
点击按钮2
技术总结
今天讲的内容是,如何在选择屏幕的界面上增加按钮,一般的作用使用于模板下载,权限检查及数据上载等功能.或者数据检查也可以.注意的是我们的按钮在选择屏幕界面只能有9个,一定要注意alv界面的生命周期,如果写的不对,对应的按钮是出不来的.
百里鸡汤
晨钟暮鼓催人急,燕去雁来促我忙。菊灿疏篱情寂寞,
枫红曲岸事仿徨。千金一刻莫空度,老大无成空自伤
这里是百里,一个努力的学习者. 努力学习好好记录,点滴进步,就是成功.
- 点赞
- 收藏
- 关注作者
评论(0)