Bsp. für die Erzeugung eines Objektes über die Klassen
- CL_GUI_ALV_GRID
- CL_GUI_DOCKING_CONTAINER
*&---------------------------------------------------------------------*
*& Report ZTEST33
*&
*&---------------------------------------------------------------------*
*&
* Das vorliegende Programm demonstriert das Vorgehen zum Einsatz des
* Docking Containers über CL_GUI_ALV_GRID
*&
*&---------------------------------------------------------------------*
REPORT ztest33.
"REPORT zaj_gui_docking_container.
DATA: gt_sflight TYPE STANDARD TABLE OF sflight.
DATA: gr_docking TYPE REF TO cl_gui_docking_container.
DATA: gr_alv_grid TYPE REF TO cl_gui_alv_grid.
START-OF-SELECTION.
***************************************************************************
* Selektion der anzuzeigenden Daten
***************************************************************************
SELECT * FROM sflight INTO CORRESPONDING FIELDS OF TABLE gt_sflight.
IF sy-subrc NE 0.
* in diesem fall wird eine leere tabelle angezeigt
ENDIF
.
***************************************************************************
* Erstellen des Docking Containers
***************************************************************************
CREATE OBJECT gr_docking
EXPORTING
side = cl_gui_docking_container=>dock_at_left
extension = 500
no_autodef_progid_dynnr = abap_true "nur der Wert 'X'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5
OTHERS = 6.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid
TYPE sy-msgty
NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
***************************************************************************
* ALV-Anzeige anstoßen
***************************************************************************
CREATE OBJECT gr_alv_grid
EXPORTING
i_parent = gr_docking "Wichtig
EXCEPTIONS
error_cntl_create = 1
error_cntl_init = 2
error_cntl_link = 3
error_dp_create = 4
OTHERS = 5.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid
TYPE sy-msgty
NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
TRY.
gr_alv_grid->set_table_for_first_display(
EXPORTING
i_structure_name = 'SFLIGHT'
CHANGING
it_outtab = gt_sflight
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4 ).
CATCH cx_root INTO DATA(o_error).
DATA(lv_txterror_long) = o_error->get_longtext( ).
MESSAGE i531(ou) WITH lv_txterror_long.
ENDTRY.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid
TYPE sy-msgty
NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
************************************************************
* Aufruf des Trägerdynpros
***********************************************************************
WRITE: space.