天天看点

ABAP 自定义屏幕实现范围选择 SELECT-OPTIONS

在自定义的屏幕中,图形化界面上是没有 SELECT-OPTIONS的控件的.

只能通过程序代码SELECT-OPTIONS 来实现.

如果直接在主程序中写入代码SELECT-OPTIONS ...FOR 的话,系统会自动生成主屏幕1000.

如果要实现自定义屏幕的SELECT-OPTIONS,只能通过子屏幕来实现.

主要步骤如下:

1.在主程序中定义一个子屏幕,这里我们定义子屏幕10

SELECTION-SCREEN:BEGIN OF SCREEN 10 AS SUBSCREEN.
SELECT-OPTIONS: S_WERKS FOR EKPO-WERKS DEFAULT '1000',
                S_EKORG FOR EKKO-EKORG DEFAULT '1000'.
SELECTION-SCREEN:END OF SCREEN 10 .
           

2.创建一个自定义普通屏幕,这里我们创建屏幕100

3.在屏幕100中绘制一个子屏幕区域并命名为SUBSCREEN

ABAP 自定义屏幕实现范围选择 SELECT-OPTIONS
ABAP 自定义屏幕实现范围选择 SELECT-OPTIONS

4.在逻辑流中输入调用子屏幕的代码

PROCESS BEFORE OUTPUT.
CALL SUBSCREEN: SUBSCREEN INCLUDING SY-REPID '0010'.

PROCESS AFTER INPUT.
CALL SUBSCREEN SUBSCREEN.
           

5.在主程序中输入调用主屏幕的代码

START-OF-SELECTION.

  CALL SCREEN 100.
           

6.最终实现效果如下图

ABAP 自定义屏幕实现范围选择 SELECT-OPTIONS