函数RS_REFRESH_FROM_SELECTOPTIONS可以取得选择画面中的select-option和parameters的输入值。
代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
REPORT ztest_get_select_value.
*&---------------------------------------------------------------------*
*& Data Declaration
*&---------------------------------------------------------------------*
TABLES: mara.
DATA:git_params TYPE TABLE OF rsparams.
DATA:gwa_params TYPE rsparams.
*&---------------------------------------------------------------------*
*& Selection Screen
*&---------------------------------------------------------------------*
SELECT-OPTIONS:s_matnr FOR mara-matnr.
PARAMETERS:p_mtart TYPE mara-mtart.
PARAMETERS:p_matkl TYPE mara-matkl.
*&---------------------------------------------------------------------*
*& Start of Selection
*&---------------------------------------------------------------------*
START-OF-SELECTION.
CALL FUNCTION 'RS_REFRESH_FROM_SELECTOPTIONS'
EXPORTING
curr_report = sy-repid
TABLES
selection_table = git_params[].
SORT git_params BY kind.
WRITE:/ 'Parameters'.
WRITE:/ 'Name' ,20 'Value' .
LOOP AT git_params INTO gwa_params WHERE kind = 'P'.
WRITE:/ gwa_params-selname ,20 gwa_params-low.
ENDLOOP.
SKIP.
WRITE:/ 'Select-Options'.
WRITE:/ 'Name' ,20 'Sign' ,25 'Option',32 'Low',52 'High'.
LOOP AT git_params INTO gwa_params WHERE kind = 'S'.
WRITE:/ gwa_params-selname ,20 gwa_params-sign ,
25 gwa_params-option, 32 gwa_params-low,
52 gwa_params-high.
ENDLOOP.
|
测试:
选择画面中输入需要的值:
运行结果:
以上。