ABAP选择屏幕

选择屏幕

选择屏幕是ABAP程序中一种常见的交互式屏幕类型,通过该屏幕可以方便用户进行输入,并获取所需的数据信息,当运行报表程序时,会自动生成屏幕编号为1000的屏幕。选择屏幕通常由一个或多个参数组成,每个参数都与一个输入域相关联,用户可以在该域中输入需要的值。选择屏幕中的各种元素是用程序语句生成的,不可以使用屏幕绘制器添加。

选择屏幕通常用于以下场景:

  • 需要从用户那里获取输入数据的时候;
  • 需要对某些特定条件进行筛选,以获取相关的数据信息;
  • 需要对数据进行排序或分组操作。

选择屏幕提供给用户的具体功能如下:

  • 提供选择参数(Parameter)元素,允许用户输出单值,程序可以根据该值进行选择
  • 提供复杂选择标准(Selection Criteria),可以包括范围、操作数、选择条件、模式
  • 用户可以将已经输入好的选择标准通过变式 ( Variant)进行存储,以供下次运行程序时调用。
  • 可以为屏幕元素(即输入字段)定义输入帮助(F1 help)和搜寻帮助(F4 help)。
  • 可以为选择标准定义说明性文字,系统提供翻译功能。
  • 系统会根据定义的屏幕字段类型自动检测用户输入,并对无效的输入给出错误消息

PARAMETERS

单值输入

PARAMETERS {<para>[(len)]}|{para [LENGTH len]} 
[TYPE <type> [DECIMALS decimals]] |[LIKE object ]
[DEFAULT  value]

参数说明

语法 说明
DEFAULT ‘A’ 设置初始值
TYPE CHAR10 利用ABAP 数据字典的数据类型
LENGTH N 只适用于TYPE C、N、X或P,用于定义长度
DECIMALS dec 用于指定小数点位数
LIKE g 定义成参照对象相同的数据类型
MEMORY ID pid 分配内存参数
MATCHCODE OBJECT mobj 4.0 以后版本开始使用 Search Help,在 mobj 中输入 Search Help 名会生成 Possible Entry
MODIF ID modid 指定 screen-group,用于分组控制画面属性
NO-DISPLAY 用于隐藏,不显示在画面上
LOWER CASE 区分大小字母(case-sensitive)
OBLIGATORY 用于指定必输入字段。
AS CHECKBOX 以 CHECK BOX形式显示
RADIOBUTTON GROUP radi 以单选按钮形式显示,要把两个以上字段定义成 Radio Group
VISIBLE LENGTH vlen 用于设置字段显示长度
VALUE CHECK 可以继承表字段属性来检查 Check Table 的值(外部键)
LIKE(g) 可以动态定义参数,运行时g中应该分配 ABAP数据字典中存在的数据对象
AS LISTBOX 与ABAP数据字典字段的INPUT HELP相结合会显示成 LISTBOX,下拉框
USER-COMMAND ucom 只适用于复选框和单选按钮。当选择单选按钮时执行 USER COMMAND 事件
AS SEARCH PATTERN 在 LDB (DBIdbSEL include) 中使用,且作为SEARCH HELP的主键构成内表
VALUE-REQUEST 在 LDB (DBIdbSEL include)中用于追加 F4 VALUE HELP
HELP-REOUEST 与 VALUE-REQUEST相似,生成字段 HELP
PARAMETERS:
  P_1 DEFAULT 'A',
  P_2 TYPE CHAR10,
  P_3 TYPE C LENGTH 3 DEFAULT '123',
  P_4 TYPE C LENGTH 3 OBLIGATORY,
  P_5 AS CHECKBOX,
  P_6 RADIOBUTTON GROUP R1,
  P_6_1 RADIOBUTTON GROUP R1,
  P_7 TYPE CHAR5 AS LISTBOX VISIBLE LENGTH 10.

在这里插入图片描述

SELECT-OPTIONS

多值输入

SELECT-OPTIONS name FOR data_object.

FOR语句后只能是以TABLES语句定义的表字段名或者以DATA语句定义的变量

SELECT-OPTIONS创建如下格式的内表

SIGN OPTION LOW HIGH
描述 输入类型 前后输入栏关系 低值 高值
参考值 I(包含) E(不包含) EQ(等于) BT(范围) NB(不包括) 。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值