10-06-2009 9:39 AM
Hi Experts ,
How can i develop method of class for following purpose .
method importing parameter as name of the table ( dynamic :- caller can provide name of any table )
and exporting parameter as the internal table fill with the data from table whos name was entered by the user .
Thanks ,
Rushikesh
10-06-2009 10:02 AM
Like this
CLASS lcl_filler DEFINITION.
PUBLIC SECTION.
METHODS: get_table IMPORTING tab_name TYPE string
RETURNING value(r_table) TYPE REF TO data. "we return reference to table
ENDCLASS. "lcl_filler DEFINITION
CLASS lcl_filler IMPLEMENTATION.
METHOD get_table.
FIELD-SYMBOLS <tab> TYPE STANDARD TABLE.
CREATE DATA r_table TYPE TABLE OF (tab_name).
ASSIGN r_table->* TO <tab>.
SELECT * FROM (tab_name) INTO TABLE <tab> UP TO 10 ROWS.
ENDMETHOD. "get_table
ENDCLASS. "lcl_filler IMPLEMENTATION
START-OF-SELECTION.
DATA: r_filler TYPE REF TO lcl_filler,
r_table TYPE REF TO data.
FIELD-SYMBOLS <tab> TYPE STANDARD TABLE.
CREATE OBJECT r_filler.
r_table = r_filler->get_table( 'SFLIGHT' ).
ASSIGN r_table->* TO <tab>. "here content of first table
r_table = r_filler->get_table( 'SPFLI' ).
ASSIGN r_table->* TO <tab>. "here content of another one
Regards
Marcin
10-06-2009 10:02 AM
Like this
CLASS lcl_filler DEFINITION.
PUBLIC SECTION.
METHODS: get_table IMPORTING tab_name TYPE string
RETURNING value(r_table) TYPE REF TO data. "we return reference to table
ENDCLASS. "lcl_filler DEFINITION
CLASS lcl_filler IMPLEMENTATION.
METHOD get_table.
FIELD-SYMBOLS <tab> TYPE STANDARD TABLE.
CREATE DATA r_table TYPE TABLE OF (tab_name).
ASSIGN r_table->* TO <tab>.
SELECT * FROM (tab_name) INTO TABLE <tab> UP TO 10 ROWS.
ENDMETHOD. "get_table
ENDCLASS. "lcl_filler IMPLEMENTATION
START-OF-SELECTION.
DATA: r_filler TYPE REF TO lcl_filler,
r_table TYPE REF TO data.
FIELD-SYMBOLS <tab> TYPE STANDARD TABLE.
CREATE OBJECT r_filler.
r_table = r_filler->get_table( 'SFLIGHT' ).
ASSIGN r_table->* TO <tab>. "here content of first table
r_table = r_filler->get_table( 'SPFLI' ).
ASSIGN r_table->* TO <tab>. "here content of another one
Regards
Marcin
10-06-2009 11:28 AM
Thanks for your reply ,
this is very helpful for beginners like me .
THANKS ,
RUSHIKESH .