matinal:ABAP SELECTION-SCREEN解析

2023-10-14 14:00:48 浏览数 (2)

在REPORT 程序中使用生成屏幕控件的语句,会默认屏幕编号为1000(可以手动指定)

默认系统占用屏幕号1000-1010

选择界面的描述文本默认为变量名,可以在文本元素(转到 -> 文本元素 )中进行调整

代码语言:javascript复制
" 查询的FIELDNAME 需要先声明使用结构 一般用TABLES在前面进行声明

" 单值查询输入  效率比复选高
PARAMATERS P_NAME LIKE FIELDNAME . " 单值输入查询条件  输入值后数据会赋值到P_NAME(本质是一个变量值)
" 注意:作用到查询条件时(使用 = ),如果不填会限制为空值
" 可以添加必填后缀 OBLIGATORY (会显示必填勾勾)
" 可以使用SELECT-OPTIONS 添加后缀实现 NO-EXTENSION(无多个条件) NO INTERVALS(无范围值)
" 查询后缀
.. MODIF ID XX . " 修改的组别,用于SCREEN对象的GROUP1 
.. USER-COMMAND UCOMM . " FUCTION CODE  可以放一个命令用来触发界面刷新


" 复选查询结构(本质是一个带表头行的内表)
SELECT-OPTIONS S_NAME FOR FIELDNAME . " 默认的查询结构
" 注意:作用到查询条件时(使用 IN ),如果不填不生效

" 查询后缀
.. DEFAULT 'VALUE' . " 默认值(复选条件时默认为LOW值)
.. DEFAULT 'V1' TO 'V2' [ OPTIONS BT SIGN I ] . 
.. NO-DISPLAY " 界面不显示
.. LOWER CASE  " 允许小写
.. MATCHCODE OBJECT SEARCH_HELP_NAME  " 搜索帮助
代码语言:javascript复制
" 查询内表的结构:
" SIGN( 可选值: 'I' 包含 'E' 不含)
" OPTION(可选值: 'LT' 小于 'LE' 小于等于 'EQ' 等于 'GT' 大于 'GE' 大于等于 'BT' 范围)
" LOW(下限)
" HIGH(上限)
代码语言:javascript复制
" 单选按钮 默认CHAR类型,长度为1 RADIOBUTTON
" GROUP 成组,组内只有一个可以选中的数据,选中的数据标记为'X' 注意不要和MODIF ID 的组混淆
PARAMETERS R_BTN1 RADIOBUTTON GROUP G1 .  
PARAMETERS R_BTN2 RADIOBUTTON GROUP G1 .
代码语言:javascript复制
" 复选框 默认CHAR 类型 长度为1 AS CHECKBOX 
PARAMETERS P_BOX AS CHECKBOX . 
代码语言:javascript复制
" 空行
SELECTION-SCREEN SKIP X . " 间隔X行数据
SELECTION-SCREEN ULINE .  " 下划线
代码语言:javascript复制
" 选择条件行:一般将多选按钮或者单选按钮放到一行时使用
SELECTION-SCREEN BEGIN OF LINE .
PARAMETERS R_BTN1 RADIOBUTTON GROUP G1 .   " 单选按钮
SELECTION-SCREEN COMMENT (X) TEXT-T01 FOR FIELD R_BTN1 .  " 单选按钮的描述文本 X标识文本显示长度  FOR FIELD 后缀联合按钮和文本
SELECTION-SCREEN POSITION Y . " 后面的元素的起始位置为Y,需要注意Y必须比X大,否则会导致编译报错
PARAMETERS R_BTN2 RADIOBUTTON GROUP G1 .  
SELECTION-SCREEN COMMENT (X) TEXT-T02 FOR FIELD R_BTN2  . 
SELECTION-SCREEN END OF LINE .
代码语言:javascript复制
"  需要在查询条件后显示提示消息,可以在选择条件后增加COMMENT 进行处理
代码语言:javascript复制
SELECTION-SCREEN BEGIN OF LINE .
SELECTION-OPTION S_CODE FOR TAB-FIELD .   " 查询条件
SELECTION-SCREEN POSITION Y . " 后面的元素的起始位置为Y,需要注意Y必须比X大,否则会导致编译报错
SELECTION-SCREEN COMMENT (X) GV_MSG .  " 此处的GV_MSG就是一个可变的文本内容 
SELECTION-SCREEN END OF LINE .
代码语言:javascript复制
" 给选择条件加个外框 如果BLOCK中没有内容显示时,BLOCK会自动隐藏 BLOCK 可以包含 BLOCK,但是不能串编号
SELECTION-SCREEN BEGIN OF BLOCK BK1 WITH FRAME TITLE TEXT-T01.  " WITH FRAME 显示外框  TITLE 外框显示文本,在文本元素中处理
  ...  " 选择条件
SELECTION-SCREEN END OF BLOCK BK1 .

0 人点赞