Skip to Content
0
Mar 05, 2009 at 06:13 AM

It cannot reference the dynamic internal table in memory as an object.

42 Views

Hi,

I am getting the syntax error in the second select. I guest it cannot reference the dynamic internal table in memory as an object.

The internal table contains different fields from multiple tables and it gets created OK. Then the first select within the loop executes OK allowing me to read the multiple tables in ITABLES.


* Create dynamic internal table and assign to FS
  call method cl_alv_table_create=>create_dynamic_table
    EXPORTING
      it_fieldcatalog = ifc
    IMPORTING
      ep_table        = dy_table.

***OK, the dynamic tables is created here
  assign dy_table->* to <dyn_table>.

* Create dynamic work area and assign to FS
  create data dy_line like line of <dyn_table>.
  assign dy_line->* to <dyn_wa>.

loop at ITABLES.

***OK, no syntax errors in this select here
  select * appending corresponding fields of table <dyn_table>
             from (ITABLES-TABNAME).

endloop.

data: ikonp like konp occurs 0 with header line.

***NOT OK, there is syntax errors
  select * into table ikonp
  from KONP for all entries in <dyn_table>
  where knumh = <dyn_table>-knumh.

Some of the tables in ITABLES are pooled tables which does not allow me to use INNER JOINS. Therefore I need a second select in order to read the pricing table KONP.

Thanks in advance for any hint.