表没有标题

时间:2012-08-08 22:26:58

标签: abap

我是ABAP的新手,所以请耐心等待。

我收到了错误" IT_COMBINE"是一个没有标题行的表,因此没有名为" EBELN"。

的组件

我尝试过使用"进入相应的字段"这不起作用。

我在这里提供了我的代码:http://pastebin.com/y64T2nah

2 个答案:

答案 0 :(得分:4)

您还可以使用“FOR ALL ENTRIES IN”添加语句“SELECT”:

SELECT DISTINCT ebeln netwr werks INTO TABLE it_combine
  FROM ekpo
  WHERE netwr IN s_netwr. "in is only for select options

  CHECK it_combine[] IS NOT INITIAL. " not empty, obligatory

 SELECT ebeln lifnr ekorg bsart ekgrp
  INTO TABLE it_po  
  FROM ekko FOR ALL ENTRIES IN it_combine
  WHERE ebeln = it_combine-ebeln.

“带标题行”或其他工作区 - 不需要

另外,在OOP上下文中不能使用“with header line”。

答案 1 :(得分:3)

如果未使用标题行声明内部表,则不能直接使用内部表中的字段。

有两种方法可以更改您的代码。

  1. 你在第35行调用了字段ebeln。由于你没有在第19行中用标题行声明it_combine,你不能像这样使用it_combine-ebeln。相反,您必须声明工作区

    Data wa_combine type ty_combine. 
    
  2. 并使用第35行的工作区

    Loop at it_combine into wa_combine .
     select ebeln lifnr ekorg bsart ekgrp
       into table it_po
        from ekko
          where ebeln = wa_combine-ebeln.
    End Loop.
    

    2您必须使用标题行

    声明内部表格
     Data it_combine type standard table of ty_combine with header line.
    

    有关标题行和工作区的详细说明,请参阅Sap帮助文档。