CL_GUI_ALV_GRID cl_gui_docking_container Docking Container

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.

Hinterlasse einen Kommentar

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahre, wie deine Kommentardaten verarbeitet werden..