1.SELECT-OPTIONS基本语法及定义
SELECT-OPTIONS通常用于参照一数据库字段来建立数据输入域,其定义对象命名长度不能超过8位,其产生的屏幕对象最大输入长度为18位,语法如下:
SELECT-OPTIONS <sel> FOR <f>.
[For Example]
SELECT-OPTIONS:DATA FOR SY-DATUM.
*运行界面如下:
SELECT-OPTIONS内表结构:
名称 | 参考值 | 描述 |
SIGN | I或者E | 输入类型,显示图标颜色会有所不同 |
OPTION | EQ,NE,CP,NP,GE,LT,LE,GT | 表示前后输入栏关系,EQ(等于),NE(不等于),CP(参考判断格式,如"ABC*"),NP(排除参考格式),LT(小于),LE(小于或者等于),GT(大于),GE(大于或者等于) |
LOW | 输入栏前字段 | |
HIGH | 输入栏后字段 |
2.SELECT-OPTIONS的语法扩展
(1)默认值的设定
...DEFAULT g:定义单一默认值。
...DEFAULT g...OPTION xxx ... SIGN s:定义含判断条件的单一默认值。
...DEFAULT g TO h:定义默认值的取值范围。
...DEFAULT g TO h ... OPTION op ... SIGN s:设置默认值的聚会范围及判断条件。
创建一个SELECT-OPTIONS屏幕,默认值前一位等于“1”,如下:
SELECT-OPTIONS:mymatnr FOR MARA-matnr DEFAULT '1*' OPTION CP SIGN E.
*运行界面如下:
(2)...MEMORY ID pid:将SELECT-OPTIONS分配参数名并存储在SAP内存,参数名长度不能超过三位。
(3)...NO-DISPLAY:将SELECT-OPTIONS设置为隐藏,不会在屏幕上输出。
(4)...LOWER CASE:输入值中不允许输入小写字符,否则会自动转换为大写。
(5)...OBLIGATORY:限制该SELECT-OPTIONS为必须输入的项目,执行中系统会提示。
(6)...NO-EXTENSION:限制该SELECT-OPTIONS只能输入一行数据,输入多行按钮(上图最右边按钮)被隐藏。
(7)...VISIBLE LENGTH vlen:定义所显示数据的长度。
Open SQL可以直接调用SELECT-OPTIONS中输入值作为参数。如下所示:
SELECT-OPTIONS:matnr FOR MARA-matnr OBLIGATORY NO INTERVALS.
SELECT SINGLE * INTO MARA FROM MARA WHERE MATNR IN matnr.
WRITE MARA-matnr.
*查询结果如下
ABAP:parameters的用法
parameters
1、基础用法
parameters:p0(20) type c.
2、使用DEFAULT后缀为参数指定缺省值。
parameters:p1(20) type c default 'msj'.
3、使用obligatory后缀来标识参数为必输项。指定了该参数后在输入框会有必输项的图标出现, 必须输入数据后才可继续运行。
parameters:p2(20) type c obligatory.
4、使用lower case 后缀去掉大写转换
parameters:p3(20) type c lower case.
5、使用as checkbox后缀使参数以 复选框 的形式出现。使用复选框的参数一定为长度为1的字符串,其内容只能为’X’或‘’。
parameters:p4 as checkbox .
parameters:p5 as checkbox default 'X'.
6、使用radiobutton group g后缀使输入参数以 单选框 的形式出现。使用单选框的参数一定为长度为1的字符串,其内容只能为’X’或‘’。
parameters:p6 radiobutton group 1.
parameters:p7 radiobutton group 1.
parameters:p8 radiobutton group 2.
parameters:p9 radiobutton group 2 default 'X'.
运行截图: