TYPES
:
shlp_descr_t
TYPE
shlp_descr
.
DATA
:
BEGIN
OF
itab
OCCURS
0
,
matnr
LIKE
mara
-matnr
,
maktx
LIKE
makt
-maktx
,
END
OF
itab
.
DATA
:
return_tab
TYPE
ddshretval
OCCURS
0
.
PARAMETERS
:
p_matnr
LIKE
itab
-matnr
,
p_maktx
LIKE
itab
-maktx
.
INITIALIZATION
.
SELECT
matnr
maktx
INTO
TABLE
itab
FROM
makt
UP
TO
20
ROWS
WHERE
spras
=
'1'
.
AT
SELECTION-SCREEN
ON
VALUE-REQUEST
FOR
p_matnr
.
PERFORM
f4
.
*&---------------------------------------------------------------------*
*&
Form
f4
*&---------------------------------------------------------------------*
FORM
f4
.
CALL
FUNCTION
'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield
=
'MATNR'
dynpprog
=
sy
-repid
dynpnr
=
sy
-dynnr
dynprofield
=
'P_MATNR'
value_org
=
'S'
callback_program
=
sy
-repid
callback_form
=
'CB_FORM'
TABLES
value_tab
=
itab
return_tab
=
return_tab
EXCEPTIONS
parameter_error
=
1
no_values_found
=
2
OTHERS
=
3
.
ENDFORM
.
"f4
*&---------------------------------------------------------------------*
*&
Form
cb_form
*&---------------------------------------------------------------------*
FORM
cb_form
TABLES
record_tab
STRUCTURE
seahlpres
CHANGING
shlp
TYPE
shlp_descr_t
callcontrol
LIKE
ddshf4ctrl
.
DATA
:
interface
LIKE
LINE
OF
shlp
-
interface
.
READ
TABLE
shlp
-
interface
INTO
interface
INDEX
1
.
interface
-shlpfield 4
(
1
)
=
'2'
.
interface
-valfield
=
'P_MAKTX'
.
APPEND
interface
TO
shlp
-
interface
.
ENDFORM
.
"bo_callback_form
参考:http://blog.csdn.net/zhongguomao/article/details/43488777