在自定义Screen上利用标准选择屏幕的两个方法

本文探讨了在自定义屏幕上应用标准选择屏幕的两种方法:子屏幕嵌入和弹出窗口,并通过示例代码展示了具体实现过程。

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

有时候为了方便,会把标准选择屏幕(1000)那一套东西拿到自己定义的屏幕上使用。有两个方法可以实现。
1、Subscreen,直接嵌入到自定义的Screen上,需要在Screen上画一个子屏幕的区域
2、弹出一个窗口,不用对自定义屏幕做更改
 
 
REPORT  z_barry_test NO STANDARD PAGE HEADING.
 
TABLES ekko.
DATA: ok_code LIKE sy-ucomm.
 
SELECTION-SCREEN BEGIN OF SCREEN 111 AS SUBSCREEN.
SELECT-OPTIONS: p_ebeln FOR ekko-ebeln .
SELECTION-SCREEN END OF SCREEN 111.
 
SELECTION-SCREEN BEGIN OF SCREEN 222 AS WINDOW .
SELECT-OPTIONS: p_aedat FOR ekko-aedat.
SELECTION-SCREEN END OF SCREEN 222.
 
START-OF-SELECTION.
  CALL SCREEN 100.
*&---------------------------------------------------------------------*
*&      Module  user_command_0100  INPUT
*&---------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
  CASE ok_code.
    WHEN 'BACK'.
      LEAVE PROGRAM.
    WHEN 'CALL'.
      CALL SELECTION-SCREEN 222 STARTING AT 10 5 .
  ENDCASE.
ENDMODULE.                 " user_command_0100  INPUT
*&---------------------------------------------------------------------*
*&      Module  status_0100  OUTPUT
*&---------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  SET PF-STATUS 'M100'.
ENDMODULE.                 " status_0100  OUTPUT
 
*PROCESS BEFORE OUTPUT.
*  MODULE status_0100.
*  CALL SUBSCREEN subs1 INCLUDING sy-repid '0111'.
*
*PROCESS AFTER INPUT.
*  MODULE user_command_0100.
*  CALL SUBSCREEN subs1.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值