SAP ABAP选择屏幕程序语法及实例

本文介绍了ABAP编程中如何使用PARAMETERS和SELECT-OPTIONS进行单个栏位检索和范围筛选,以及如何调整输入提示和设计选择屏幕,包括单选框、多输入字段输出和按钮响应。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

选择屏幕有单个栏位检索(PARAMETERS)和范围筛选(SELECT-OPTION)两种。

1、单个栏位检索(PARAMETERS)

语法:

parameters
 [default ][lower case][obligatory]
[as checkbox][radiobutton group ]
[default ]:默认值;
[lower case]:大小写;
[obligatory]:必须输入;
[as checkbox]:以复选框形式;
[radiobutton group ]:以单选按钮形式。

例 5.8 是选择屏幕输入值,将值输出至屏幕。

【5.8】

report ytest004 .
PARAMETERS: a1(10) TYPE c,
            a2     TYPE i.
WRITE: / a1,/ a2.

输出结果如图5-25 所示。

确认后输出结果如图5-26 所示。

2、范围筛选(SELECT-OPTIONS)

使用 SELECT-OPTIONS 进行多值和多范围检索。

【5.9】

REPORT YTEST005 .
DATA data1(20) TYPE c.
SELECT-OPTIONS d1 FOR data1.
LOOP AT d1.
  WRITE: / 'SIGN:', d1-sign,
  'OPTION:', d1-option,
  'LOW:', d1-low,
  'HIGH:', d1-high.
ENDLOOP.

输出结果如图5-27 所示。

确定后输出结果如图5-28 所示。

3、调整输入提示

编写完程序时,查询条件的提示默认是变量名,需要调整为中文提示,选择菜单“转到”

—>“文本元素”—>“选择文本”,如图5-29 所示。

修改参数D1 的提示,如图5-30 所示。

单击 按钮保存,然后单击按钮激活,单击按钮退回上一屏,单击按钮测试

运行,输出结果如图5-31 所示。

选择屏幕实例设计

有输入参数的程序系统自动产生一个 1000 的屏幕,在程序激活后可以通过TCODE:SE51 查看,输入TCODE:SE51,输入程序名,单击屏幕编号右端的选择按钮,选择屏幕1000,选择“布局编辑器”选项,单击修改按钮,如图5-32 所示。

确定后系统显示屏幕如图5-33 所示,该屏幕是系统自动生成的。

1、定义选择屏幕【5.10】

REPORT YTEST006.

SELECTION-SCREEN BEGIN OF SCREEN 500.
PARAMETERS data1(20) TYPE c.
SELECTION-SCREEN END OF SCREEN 500.
CALL SELECTION-SCREEN 500.

输出结果如图5-34 所示。

2、定义多个输入字段一行输出【5.11】

REPORT YTEST006.
SELECTION-SCREEN BEGIN OF LINE.
*预设
*SELECTION-SCREEN POSITION 28.
SELECTION-SCREEN COMMENT 1(10) s2.
PARAMETERS: a1(1) TYPE c,
            a2(4) TYPE c,
            s3(9) TYPE c.
SELECTION-SCREEN END OF LINE.
*为预设值赋值
INITIALIZATION.
  s2 = '测试输入'.

输出结果如图5-35 所示。

3.单选框【5.12】

REPORT ytest006.
SELECTION-SCREEN BEGIN OF BLOCK rdg1 WITH FRAME TITLE s2.
PARAMETERS a1 RADIOBUTTON GROUP rg1.
PARAMETERS a2 RADIOBUTTON GROUP rg1.
PARAMETERS a3 RADIOBUTTON GROUP rg1.
SELECTION-SCREEN END OF BLOCK rdg1.
INITIALIZATION.
  s2 = '请选择'.

输出结果如图5-36 所示。

4.为选择窗口定义按钮并响应

例 5.13 是一个比较复杂的程序,包括窗口、按钮定义、事件驱动等内容。【5.13】

REPORT ytest006.
TABLES sscrfields.
DATA done(2) TYPE c.
SELECTION-SCREEN:
BEGIN OF SCREEN 500 TITLE tit,
BEGIN OF LINE,
PUSHBUTTON 2(10) s1 USER-COMMAND c1,
PUSHBUTTON 12(10) s2 USER-COMMAND c2,
END OF LINE,
END OF SCREEN 500.

AT SELECTION-SCREEN.
  CASE sscrfields-ucomm.
    WHEN 'C1'.
      done = 'C1'.
    WHEN 'C2'.
      done = 'C2'.
  ENDCASE.
  LEAVE TO SCREEN 0.

START-OF-SELECTION.
  CALL SCREEN 500.
  WRITE: '您按了:',done.

INITIALIZATION.
  s1 ='按钮1'.
  s2 ='按钮2'.
TIT = '为选择窗口定义按钮并响应'.

输出结果如图5-37 所示

当单击一个按钮后输出结果如图5-38 所示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员在路上...

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值