SELECT-OPTIONS:S_BWART FOR MATDOC-BWART.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_BWART-LOW.
PERFORM F_VALUE_REQUEST_FOR_NAME.
FORM F_VALUE_REQUEST_FOR_NAME .
DATA:BEGIN OF LTY_BWART,
BWART TYPE MATDOC-BWART,
BTEXT TYPE T156T-BTEXT,
END OF LTY_BWART.
DATA:LT_BWART LIKE TABLE OF LTY_BWART,
LS_BWART LIKE LTY_BWART.
CLEAR LT_BWART[].
LS_BWART-BWART = 'Z31'.
LS_BWART-BTEXT = '物料借出'.
APPEND LS_BWART TO LT_BWART.
LS_BWART-BWART = 'Z32'.
LS_BWART-BTEXT = '物料归还'.
APPEND LS_BWART TO LT_BWART.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'BWART' "大写,可选值内表的字段名
VALUE_ORG = 'S' "就写'S'
DYNPPROG = SY-REPID "返回的输入框所在的main program
DYNPNR = SY-DYNNR "返回的输入框所在屏幕
DYNPROFIELD = 'S_BWART' "返回的输入框名
TABLES
VALUE_TAB = LT_BWART "可选值的内表
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM.