Code: Alles auswählen.
class l_cl_test DEFINITION.
PUBLIC SECTION.
class-METHODS:
do_something IMPORTING i_tab TYPE SPFLI.
ENDCLASS.
Data: l_tab TYPE TABLE OF SPFLI.
SELECT * FROM spfli into TABLE l_tab.
l_cl_test=>do_something( EXPORTING i_tab = l_tab ).
Code: Alles auswählen.
DATA l_wa_spfli TYPE spfli. --> Workarea
DATA l_tab_spfli TYPE TABLE OF spfli. --> interne Tabelle
Code: Alles auswählen.
TYPES lt_spfli_tab TYPE TABLE OF splfi.
CLASS l_cl_test DEFINITION.
PUBLIC SECTION.
CLASS-METHODS:
do_something IMPORTING i_tab TYPE lt_splfi_tab.
ENDCLASS.
CLASS l_cl_test IMPLEMENTATION.
METHOD do_something.
WRITE: sy-subrc.
ENDMETHOD.
ENDCLASS.
DATA: itab_spfli TYPE lt_spfli_tab.
START-OF-SELECTION.
DO 5 TIMES.
SELECT single * FROM spfli APPENDING TABLE itab_spfli.
ENDDO.
l_cl_test=>do_something( EXPORTING i_tab = itab_spfli ).
Hallo ihr beiden,casman hat geschrieben:[...]
Es gibt keine andere Möglichkeit, du brauchst einen Tabellentyp, wenn du eine ITAB an eine Methode übergeben willst. Entweder du deklarierst einen oder du musst im DDIC einen anlegen.
Code: Alles auswählen.
REPORT.
*----------------------------------------------------------------------*
* CLASS my_class DEFINITION
*----------------------------------------------------------------------*
CLASS my_class DEFINITION.
PUBLIC SECTION.
CLASS-METHODS: import_table IMPORTING it_table TYPE STANDARD TABLE.
ENDCLASS. "my_class DEFINITION
*----------------------------------------------------------------------*
* CLASS my_class IMPLEMENTATION
*----------------------------------------------------------------------*
CLASS my_class IMPLEMENTATION.
METHOD import_table.
FIELD-SYMBOLS: <line> TYPE ANY.
LOOP AT it_table ASSIGNING <line>.
WRITE:/ <line>.
ENDLOOP.
ENDMETHOD. "import_table
ENDCLASS. "my_class IMPLEMENTATION
DATA: t_t000 TYPE STANDARD TABLE OF t000.
START-OF-SELECTION.
SELECT * INTO TABLE t_t000 FROM t000.
my_class=>import_table( t_t000 ).
Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
Diesel83