web下拉列表代码_ERP屏幕设计器专题:下拉列表框(四)

e8e80114e44587c2fbcbf8346fe4999f.gif

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

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

    dd13db5858d63b6a15f757921abd8c3c.png

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

    4e7e1358d970facef19f1bd6e7fbb1ac.png

    屏幕设计页面如下:

    3ebb0003c20a51b057670499b4bb42a6.png

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

    8a2e95276c689ee4e93e0524896ed33b.png   

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

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

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

    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


"用户操作代码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内容如下:

b70263f9cfd25408e4d3d691a90ca6e9.png

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

23461af5506feff9c00b66c5858ad996.png

a7ee873c20eb1dae3a36663ac73de15e.png

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

END


6c386f89381cd26f543a90ace20767b5.png

本文作者 | SAP梦心 联系方式 | 微信:W150112458 特别敬告 | 转载请注明出处并保持原文内容,谢谢!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值