Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.0k views
in Technique[技术] by (71.8m points)

abap - XXX is a table without a header line and therefore has no component called "EBELN"

I'm getting the syntax error:

"IT_COMBINE" is a table without a header line and therefore has no component called "EBELN".

I have tried using "into corresponding fields" and that does not work.

My code:

  19   Data it_combine type standard table of ty_combine.
  ...
  32    select ebeln lifnr ekorg bsart ekgrp
  33      into table it_po
  34       from ekko
  35         where ebeln = it_combine-ebeln. " <=== SYNTAX ERROR
  ...   
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You can also use the addition "FOR ALL ENTRIES IN" for statement "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.

"with header line" or additional work area - not need

Also, using "with header line" impossible in the OOP context.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...