前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SAP屏幕设计器专题:下拉列表框(四)

SAP屏幕设计器专题:下拉列表框(四)

作者头像
SAP梦心
发布2022-05-09 13:15:56
1.8K0
发布2022-05-09 13:15:56
举报

? ? ?既然是屏幕设计器,自然要有下拉列表框。这里我们来做一下。

? ? 首先,SE38建立一个程序,SE51拖出一个文本框控件,下拉框的属性设置为Listbox,名称为VALUE:

? ? 再拖出一个文本框,设置为只读属性,如下:

? ? 屏幕设计页面如下:

? ? 屏幕设计属性的代码如下:

??? PROCESS?ON?VALUE-REQUEST.? 代表定义调用F4帮助或者单击该栏位所触发的事件。????

??? FIELD VALUE MODULE SETVALUE.? 代表为下拉列表框赋值。

??? 在SE38中,程序的开头记得Key入如下代码:

代码语言:javascript
复制
 TYPE-POOLS: VRM.? 这个是下拉列表框引用所要用到的。
??? 接下来声明变量,与控件名称对应。
 DATA:VALUE(10)?TYPE?C,?? "下拉框
??????? ?????DESC(10)?TYPE?C.??? "说明
??? START-OF-SELECTION.
 CALL?SCREEN?100.?? "载入画面

??? 载入下拉列表框的MODULE:

MODULE?SETVALUE?INPUT.

 DATA:?LV_NAME?TYPE?VRM_ID,

????????LT_LIST?TYPE?VRM_VALUES,

????????LW_VALUE?LIKE?LINE?OF?LT_LIST.

 CLEAR:LT_LIST,LW_VALUE.

??LV_NAME?=?'VALUE'.

? "读取数据表内容至内表
 SELECT?VALUE?INTO?LW_VALUE-KEY?FROM?ZCODE_MSTR?WHERE?FIDNAME?=?'LIST'.

????LW_VALUE-TEXT?=?LW_VALUE-KEY.

 APPEND?LW_VALUE?TO?LT_LIST.

 ENDSELECT.

 CALL?FUNCTION?'VRM_SET_VALUES'???? "调用函数填充内容

 EXPORTING

 ID?????=?LV_NAME

??????VALUES?=?LT_LIST.

ENDMODULE.?????????????????"?SETVALUE??INPUT

? "根据下拉框内容的值进行读取相应的说明
FORM?GETDESC?.

 SELECT?CMMT?INTO?DESC?FROM?ZCODE_MSTR?WHERE?FIDNAME?=?'LIST'?AND?VALUE?=?VALUE.

 ENDSELECT.

ENDFORM.????????????????????"?GETDESC

 SPAN { font-family: "新宋体"; font-size: 12pt; color: rgba(40, 40, 40, 1); background: rgba(204, 232, 207, 1) } .L0S31 { color: rgba(104, 131, 139, 1) } .L0S33 { color: rgba(0, 128, 0, 1) } .L0S52 { color: rgba(0, 0, 255, 1) } .L0S55 { color: rgba(128, 0, 128, 1) } .L0S70 { color: rgba(128, 128, 128, 1) }  "用户操作代码
MODULE?USER_COMMAND_0100?INPUT.

 CASE?SY-UCOMM.

 WHEN?'BACK'?OR?'EXIT'?OR?'CANCEL'.

 LEAVE?PROGRAM.

 WHEN?'SAVE'.? "显示下拉框的值

 MESSAGE?VALUE?TYPE?'I'.

 WHEN?'THELIST'?OR?'ENTER'.?? "下拉列表框内容变更之后的动作

 PERFORM?GETDESC.

 ENDCASE.

ENDMODULE.?????????????????"?USER_COMMAND_0100??INPUT

ZCODE_MSTR内容如下:

最后,本程序运行结果如下:

程序做到了很好的互动,下拉列表框内容改变了之后,旁边的说明自动会抓去相应的内容显示。

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2011-05-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com