您可以使用SELECT-OPTIONS
:
TABLES MARA.
SELECT-OPTIONS:
s_matnr FOR mara-matnr MATCHCODE OBJECT MAT1 ,
s_mtart FOR mara-MTART MATCHCODE OBJECT H_T134 ,
s_mbrsh FOR mara-MBRSH MATCHCODE OBJECT H_T137 ,
s_matkl FOR mara-MATKL MATCHCODE OBJECT H_T023 ,
s_meins FOR mara-MEINS MATCHCODE OBJECT H_T006 .
* [...]
SELECT * FROM MARA where
matnr in s_matnr and
mtart in s_mtart and
mbrsh in s_mbrsh and
matkl in s_matkl and
meins in s_meins.
当您这样做时,您的选择屏幕将允许数据有多个值和范围。
如果您需要像parameter
-command 这样的单个值,则必须为SELECT-OPTION
:
NO INTERVALS
只允许单个值
NO-EXTENSION
只允许一个值。
OBLIGATORY
如果不允许空值(据我了解你的问题,你有相反的情况,所以你不需要它)。
所以你的选择是:
SELECT-OPTIONS:
s_matnr FOR mara-matnr NO-EXTENSION NO INTERVALS,
s_mtart FOR mara-MTART NO-EXTENSION NO INTERVALS,
s_mbrsh FOR mara-MBRSH NO-EXTENSION NO INTERVALS,
s_matkl FOR mara-MATKL NO-EXTENSION NO INTERVALS,
s_meins FOR mara-MEINS NO-EXTENSION NO INTERVALS.
评论:
MARA
TABLE
如果您使用,则必须定义为SELECT-OPTIONS
- 你真的需要
MATCHCODE OBJECT
吗?通常使用FOR
已经定义了正确的匹配码对象(通过数据元素/域)。
免责声明:
- 我还没有可用的 SAP 系统,所以代码可能包含语法错误。- 我明天会检查它。