Sie sind auf Seite 1von 2

*&---------------------------------------------------------------------*

*& Report S_FIRST_PROGRAM


*
*&---------------------------------------------------------------------*
REPORT s_first_program.
*&---------------------------------------------------------------------*
*& Global Declarations
*
*&---------------------------------------------------------------------*
* Screen Interfaces
TABLES scarr.
* Class Definitions
CLASS application DEFINITION.
PUBLIC SECTION.
METHODS: constructor,
read_data IMPORTING l_carrid TYPE scarr-carrid,
fill_list.
PRIVATE SECTION.
DATA: spfli_tab TYPE TABLE OF spfli,
container TYPE REF TO cl_gui_custom_container,
alv_list TYPE REF TO cl_gui_alv_grid.
ENDCLASS.
* Class Implementations
CLASS application IMPLEMENTATION.
METHOD constructor.
CREATE OBJECT container
EXPORTING container_name = 'LIST_AREA'.
CREATE OBJECT alv_list
EXPORTING i_parent = container.
CALL METHOD alv_list->set_table_for_first_display
EXPORTING i_structure_name = 'SPFLI'
CHANGING it_outtab = spfli_tab.
ENDMETHOD.
METHOD read_data.
SELECT *
FROM spfli
INTO TABLE spfli_tab
WHERE carrid = l_carrid.
ENDMETHOD.
METHOD fill_list.
CALL METHOD alv_list->refresh_table_display.
ENDMETHOD.
ENDCLASS.
* Global Data
DATA object_ref TYPE REF TO application.

*&---------------------------------------------------------------------*
*& Processing Blocks called by the Runtime Environment
*
*&---------------------------------------------------------------------*
* Event Block START-OF-SELECTION
START-OF-SELECTION.
CREATE OBJECT object_ref.
CALL SCREEN 100.
* Dialog Module PBO
MODULE status_0100 OUTPUT.
SET PF-STATUS 'SCREEN_100'.
CALL METHOD object_ref->fill_list.
ENDMODULE.
* Dialog Module PAI
MODULE user_command_0100 INPUT.
IF sy-ucomm = 'BACK' OR
sy-ucomm = 'EXIT' OR
sy-ucomm = 'CANCEL'.
LEAVE PROGRAM.
ELSE.
CALL METHOD object_ref->read_data
EXPORTING l_carrid = scarr-carrid.
ENDIF.
ENDMODULE.

Das könnte Ihnen auch gefallen