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.