‎2007 Jul 16 7:46 AM
‎2007 Jul 16 7:58 AM
Hi,
You have to use CALL SUBSCREEN <sub_scree_area> INCLUDING <program> <screen number> in PBO.
CALL SUBSCREEN <sub_screen_are> in PAI.
Check program DEMO_DYNPRO_SUBSCREENS.
Regards,
Sesh
‎2007 Jul 16 8:02 AM
‎2007 Jul 16 8:08 AM
Hi,
Here is a simple sample report showing the use of subscreens within a subscreen.
&----
*& Report ZUS_SDN_SUBSCREEN_IN_SUBSCREEN
*&
&----
*&
*&
&----
REPORT zus_sdn_subscreen_in_subscreen.
DATA:
gd_okcode type ui_func.
START-OF-SELECTION.
Call main screen
CALL SCREEN '0100'.
END-OF-SELECTION.
&----
*& Module STATUS_0100 OUTPUT
&----
text
----
MODULE status_0100 OUTPUT.
SET PF-STATUS 'MAIN_0100'.
SET TITLEBAR 'TITLE_0100'. " Main Dynpro
CLEAR: gd_okcode.
ENDMODULE. " STATUS_0100 OUTPUT
&----
*& Module USER_COMMAND_0100 INPUT
&----
text
Flow logic of main screen 100:
PROCESS BEFORE OUTPUT.
MODULE status_0100.
*
CALL SUBSCREEN subscreen1 INCLUDING syst-repid '0110'.
*
PROCESS AFTER INPUT.
*
CALL SUBSCREEN subscreen1.
*
MODULE user_command_0100.
----
MODULE user_command_0100 INPUT.
CASE gd_okcode.
WHEN 'BACK' OR
'EXIT' OR
'CANC'.
SET SCREEN 0. LEAVE SCREEN.
WHEN OTHERS.
ENDCASE.
CLEAR: gd_okcode.
ENDMODULE. " USER_COMMAND_0100 INPUT
&----
*& Module USER_COMMAND_0110 INPUT
&----
text
Flow logic of subscreen1:
PROCESS BEFORE OUTPUT.
* MODULE status_0110.
*
CALL SUBSCREEN subscreen1_1 INCLUDING syst-repid '0112'.
*
*
PROCESS AFTER INPUT.
*
CALL SUBSCREEN subscreen1_1 .
*
MODULE USER_COMMAND_0110.
----
MODULE user_command_0110 INPUT.
Transfer ok-code from subscreen to main screen
gd_okcode = syst-ucomm.
ENDMODULE. " USER_COMMAND_0110 INPUT
&----
*& Module USER_COMMAND_0110 INPUT
&----
text
Flow logic of subscreen1-1:
PROCESS BEFORE OUTPUT.
* MODULE STATUS_0112.
*
PROCESS AFTER INPUT.
* MODULE USER_COMMAND_0112.
----
MODULE user_command_0112 INPUT.
Transfer ok-code from subscreen to main screen
gd_okcode = syst-ucomm.
ENDMODULE. " USER_COMMAND_0112 INPUT
<b>Reward points</b>
Regards