在screen painter中我们可以引用用selection-screen中定义的子屏幕,因为简单的屏幕用screen painter来做反而变得复杂,所以sap给我们提供了自画屏幕和传统屏幕的友好集成。
首先在screen painter中画一个subscreen area区域,给区域取名sub1,然后在屏幕所属的报表程序或者是模块池程序中用selection-screen来定义一个屏幕,如:
SELECTION-SCREEN BEGIN OF SCREEN 0101 AS SUBSCREEN.
SELECTION-SCREEN BEGIN OF BLOCK frm1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: data FOR sy-datum.
SELECTION-SCREEN END OF BLOCK frm1.
SELECTION-SCREEN END OF SCREEN 0101.
然后呢在屏幕流逻辑的中添加:
PROCESS BEFORE OUTPUT.
CALL SUBSCREEN:sub1 INCLUDING SY-REPID '0101'.
RROCESS AFTER INPUT.
CALL SUBSCREEN:sub1.
转载于:https://blog.51cto.com/saper/647582