REPORT ztest_salv.
DATA:lr_salv TYPE REF TO cl_salv_table,
lr_columns TYPE REF TO cl_salv_columns_table,
lr_functions TYPE REF TO cl_salv_functions_list.
DATA:gt_sflight TYPE TABLE OF sflight.
*----------------------------------------------------------------------*
* CLASS cl_salv DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS cl_salv DEFINITION.
PUBLIC SECTION.
METHODS:get_data,
display_salv,
get_functions.
ENDCLASS. "cl_salv DEFINITION
*----------------------------------------------------------------------*
* CLASS cl_salv IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS cl_salv IMPLEMENTATION.
METHOD get_data.
SELECT * FROM sflight INTO TABLE gt_sflight.
ENDMETHOD. "get_data
METHOD display_salv.
*using factory method get the instance of the class CL_SALV_TABLE.
TRY.
cl_salv_table=>factory(
IMPORTING
r_salv_table = lr_salv
CHANGING
t_table = gt_sflight
).
CATCH cx_salv_msg .
ENDTRY.
ENDMETHOD. "display_salv
METHOD get_functions.
"Get the reference of cl_salv_functions_list class.
lr_functions = lr_salv->get_functions( ).
lr_functions->set_all(
value = if_salv_c_bool_sap=>true
).
ENDMETHOD. "change_columns
ENDCLASS. "cl_salv IMPLEMENTATION
*----------------------------------------------------------*
"Start of selection
*---------------------------------------------------------*
START-OF-SELECTION.
DATA:lcl_salv TYPE REF TO cl_salv.
"Create object of local class
CREATE OBJECT lcl_salv.
CALL METHOD lcl_salv->get_data( ).
CALL METHOD lcl_salv->display_salv( ).
CALL METHOD lcl_salv->get_functions( ).
"Using display method to display the ALV output
lr_salv->display( ).
No comments:
Post a Comment