ABAP将值硬编码到SELECT中,并将字段硬编码到另一个字段中
在ABAP中,可以选择并包含硬代码值,并在任何字段中输入值 在我的示例中,我必须根据VKORG使用公司代码BUKRS填充一个范围,因此我必须在TVKO上进行选择,如下所示:ABAP将值硬编码到SELECT中,并将字段硬编码到另一个字段中,abap,opensql,Abap,Opensql,在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 WH
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表并创建一个循环来填充范围,但我确信我们有一个解决方案可以在一个操作中完成,就像我的示例中一样
谢谢,专家们。这其实很简单。只需将
转换为相应的和AS
。只要值顺序正确,就不会有问题:
SELECT 'I', 'EQ', bukrs
FROM tvko
INTO TABLE @lt_rtvko
WHERE vkorg = @p_vkorg.
我认为你的射程声明有一个输入错误。应该是:
DATA: lt_rtvko TYPE RANGE OF bukrs.
垃圾场怎么说?你为什么不删除
的相应字段呢?是的,你是对的,我把它改成了范围BUKRS的类型。@是什么意思?我不知道这个语法@这是新的OpenSQL语法。@
符号将符号标记为主机变量。几乎没有魔法作用。选择列表中的逗号也是如此。只是为了光学。阅读