1. PARAMETERS的基本语法及定义

PARAMETERS可以参照数据字典字段或自定义数据类型创建文本输入域及单选框/复选框等,

PARAMETERS只能创建一个单一的输入域且最多只能输入行,其定义对象命名长度不能超过8位,显示长度随参照数据对象变化。PARAMETERS定义后不会产生内表,可作为变量在程序中应用,例如:

PARAMETERS:S_MATNR LIKE MARA-MATNR."创建输入域

PARAMETERS:TYPE AS CHECKBOX."创建CHECKBOOK.

PARAMETERS:P1 RADIOBUTTON GROUP GRP1 DEFAULT 'X',"创建RadioButton组            P2 RADIOBUTTON GROUP GRP1,                       P3 RADIOBUTTON GROUP GRP1.

2.PARAMETERS:的常用語法:

...DEFAULT f : 定義默认值。

...TYPE type :参照某一类型对象定义PARAMTERS.

...DECIMALS dec : 定义小数位,对输入参数将自动格式化, 该语法只对P类型有效。

...LIKE g :参照某一字典对象定义PARAMETERS.

...MEMORY ID pi :将PARAMETERS存储在SAP内存,参数据名长度不能超过三位。

...NO-DISPLAY: 将PARAMETERS设置为隐藏,不会在屏幕上显示。

...LOWER CASE:输入值中不允许输入小写字符,否则会自动转换为大写。

...OBLIGATORY:限制该SELECT-OPTIONS为必须输入项,执行中系统会提示。

...AS CHECKBOX:创建CHEXBOX对象。

...RADIOBUTTON GROUP radi:建立分组单选框。

...VISIBLE LENGTH vlen:定义显示长度.

...USER-COMMAND ucom:为创建对象分配对象名,该值保存在内存中可供其他对象操作。

...AS LISTBOX VISIBLE LENGTH vlen:创建一个下拉列表,并指定输出长度.

PARAMETERS: P_LANG(20) AS LISTBOX VISIBLE LENGTH 22.

DATA:INIT."該變量用於記錄下拉列表數值是否初始化,否则每次屏幕初始化都会重新加载重复数据
AT SELECTION-SCREEN OUTPUT.
  PERFORM SETLIST.

FORM SETLIST."子程序用于加载列表中的数据
  TYPE-POOLS VRM.
  DATA VALUES TYPE VRM_VALUES WITH HEADER LINE.
*对内表加载值
  VALUES-KEY = 'CHINESE'.  VALUES-TEXT = '中國'.APPEND VALUES.
  VALUES-KEY = 'AMERICAN'. VALUES-TEXT = '美國'.APPEND VALUES.
  VALUES-KEY = 'ENGLISH'.  VALUES-TEXT = '英國'.APPEND VALUES.
  VALUES-KEY = 'FRENCH'.   VALUES-TEXT = '法國'.APPEND VALUES.

IF INIT IS INITIAL.
    CALL FUNCTION 'VRM_SET_VALUES'"调用函数对下拉列表对象传递数据
      EXPORTING
        ID              = 'P_LANG'"下拉列表对象名
        VALUES          = VALUES[]"列表中加载的数据
      EXCEPTIONS
        ID_ILLEGAL_NAME = 1
        OTHERS          = 2.
  ENDIF.
  INIT = 'X'."记录初始化状态
ENDFORM.

引用字典对象 TYPE-POOLS VRM 用于保存列表对象,也可自定义一内表,如

DATA:BEGIN OF VALUES OCCURS 0,
     KEY(40)    TYPE C,
     TEXT(40) TYPE C,
END OF VALUES.

最新文章

  1. Nodejs Promise的一点记录
  2. Python yield与实现
  3. POJ 1459:Power Network(最大流)
  4. 【LeetCode OJ】Binary Tree Zigzag Level Order Traversal
  5. bootstrap使用性能问题
  6. [redis] redis.clients.jedis.exceptions.JedisDataException: MOVED 13102 127.0.0.1
  7. abstract 类 构造函数
  8. jQuery EasyUI DataGrid API 中文文档
  9. dedecms后台登录如何去除验证码设置
  10. 不相交集(The Disjoint Set ADT)
  11. spring源码测试
  12. Unable to open log device '/dev/log/main': No such file or directory
  13. 关于laravel框架的跨域请求/jsonp请求的理解
  14. iOS超全开源框架、项目和学习资料汇总--数据库、缓存处理、图像浏览、摄像照相视频音频篇
  15. python3 第十章 - 如何进行进制转化
  16. spring data redis template GenericJackson2JsonRedisSerializer的使用
  17. vim安装
  18. hdu 1072 有炸弹的迷宫 (DFS)
  19. eclipse + python + pydev
  20. 模拟远程SSH执行命令的编解码说明

热门文章

  1. java 如何读取 properties 配置文件
  2. last, lastb - 显示最近登录的用户列表
  3. Laravel 向公共模板赋值
  4. mysql忽视大小写
  5. 探索super()的执行顺序和__mro__方法
  6. 【ZOJ3627】Treasure Hunt II
  7. 【GDOI2017模拟12.9】最近公共祖先
  8. Java面试之框架篇(9)
  9. shell练习--PAT题目1007:关于素数对(失败案例)
  10. vue-router中$route 和 $router