ABAP标准屏幕调用选择屏幕

有时候标准屏幕不能达到想要的效果,
比如:
标准屏幕没有SELECT-OPTIONS:

下面实现标准屏幕调用选择屏幕:

1、定义一个标准屏幕:9001.
2、定义个subscreen控件 SUB
3、定义选择屏幕:9999

SELECTION-SCREEN BEGIN OF SCREEN 9999 AS SUBSCREEN.
PARAMETERS p_werks LIKE ekpo-werks OBLIGATORY.
SELECT-OPTIONS:
             s_ebeln FOR ekko-ebeln ,
             s_lifnr FOR ekko-lifnr,
             s_aedat FOR ekko-aedat ."OBLIGATORY.
SELECTION-SCREEN END OF SCREEN 9999.

部分代码:
START-OF-SELECTION.
  CALL SCREEN 9001.         "调用标准屏幕9001


PROCESS BEFORE OUTPUT.
 MODULE STATUS_9001.
CALL SUBSCREEN sub INCLUDING sy-repid '9999'.         "sub是subscreen控件名(好像有的版本,9999屏幕必须使用变量才能传值,即定义:g_sub(4) TYPE VALUE '9999',但是不能使用定义的常量)
PROCESS AFTER INPUT.
CALL SUBSCREEN sub.                            "如果不加这句,则传不了值
 MODULE USER_COMMAND_9001. 
  

实现比较简单
 

有时候发现自己建的子屏幕不显示
ABAP标准屏幕调用选择屏幕
没有子屏幕

解决办法:
ABAP标准屏幕调用选择屏幕

(解决方法感谢ABAP:1955968183)

http://blog.sina.com.cn/sapliumeng
原文地址:https://www.cnblogs.com/senlinmu110/p/3802209.html