Dynpro: Ranges über Subscreens

Um Ranges in Dynpros zu realisieren gibt es folgenden Trick:

1)

Definition eines Subscreens:

SELECTION-SCREEN BEGIN OF SCREEN 1010 AS SUBSCREEN.
PARAMETERS:     s_werks TYPE caufv-werks.
SELECT-OPTIONS: ss_arbpl FOR crhd-arbpl NO INTERVALS .
SELECT-OPTIONS: ss_dispo FOR caufv-dispo NO INTERVALS .
SELECT-OPTIONS: ss_fevor FOR caufv-fevor NO INTERVALS .
SELECT-OPTIONS: ss_matnr FOR caufv-plnbez NO INTERVALS .
SELECT-OPTIONS: ss_mtart FOR mara-mtart DEFAULT 'DHAL' NO INTERVALS .
SELECTION-SCREEN END OF SCREEN 1010.

2)

Definition der Ablauflogik PBO PAI

PROCESS BEFORE OUTPUT.
MODULE STATUS.
call subscreen subscreen_1010 including sy-repid '1010'.
*
PROCESS AFTER INPUT.
MODULE USER_COMMAND_0300.

3)

Definition des Dynpro mit einem Subscreenelement mit Namen SUBSCREEN_1010