ABAP硬编码值进入SELECT和字段进入另一个字段

时间:2016-08-30 12:45:20

标签: sql sap abap

在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表并制作一个LOOP来填充范围,但我相信我们有一个解决方案可以在一个操作中完成,就像在我的例子中一样。

谢谢,专家。

1 个答案:

答案 0 :(得分:6)

实际上很容易。只需摆脱INTO CORRESPONDINGAS。只要价值订单正确,您就没有问题:

SELECT 'I', 'EQ', bukrs
  FROM tvko
  INTO TABLE @lt_rtvko
 WHERE vkorg = @p_vkorg.

我认为你的范围声明中有拼写错误。应该是:

DATA: lt_rtvko TYPE RANGE OF bukrs.