在ABAP中可以进行选择并包含硬代码值并在任何字段中放置值.
在我的例子中,我必须根据VKORG填写公司代码BUKRS的范围,所以我必须在TVKO上做这样的选择:
DATA : lt_rtvko TYPE RANGE OF bukrs.
SELECT 'I' as sign 'EQ' as option bukrs as low
INTO CORRESPONDING FIELDS OF TABLE lt_rtvko
FROM tvko
WHERE vkorg EQ p_vkorg.
Run Code Online (Sandbox Code Playgroud)
但我有一个转储.
我知道更长的解决方案,要手动填写TVKO表并制作一个LOOP来填充范围,但我相信我们有一个解决方案,可以在我的例子中进行一次操作.
谢谢,专家.
小智 6
这实际上非常简单.只是摆脱INTO CORRESPONDING和AS.只要价值订单正确,您就没有问题:
SELECT 'I', 'EQ', bukrs
FROM tvko
INTO TABLE @lt_rtvko
WHERE vkorg = @p_vkorg.
Run Code Online (Sandbox Code Playgroud)
我认为你的范围声明中有拼写错误.应该:
DATA: lt_rtvko TYPE RANGE OF bukrs.
Run Code Online (Sandbox Code Playgroud)