在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.
但我有一个垃圾场。
我知道一个更长的解决方案来做到这一点,手动填写TVKO的表,并创建一个循环来填充范围,但我确信我们有一个解决方案,在一个操作中做到这一点,就像我的例子。
谢谢专家。
这其实很简单。只要消去INTO CORRESPONDING
和AS
。只要值的顺序正确,就没有问题:
SELECT 'I', 'EQ', bukrs
FROM tvko
INTO TABLE @lt_rtvko
WHERE vkorg = @p_vkorg.
我认为你的范围声明中有一个错字。应该是:
DATA: lt_rtvko TYPE RANGE OF bukrs.