Fast, Ready ALV

Fast, Ready ALV

Basit raporlarınız için aşağıdaki ABAP kodunu kullanabilirsiniz.

DATA: GO_ALV          TYPE REF TO CL_SALV_TABLE,
      GO_MESSAGE      TYPE REF TO CX_SALV_MSG,
      COLUMNS         TYPE REF TO CL_SALV_COLUMNS_TABLE,
      COLUMN          TYPE REF TO CL_SALV_COLUMN,
      LAYOUT_SETTINGS TYPE REF TO CL_SALV_LAYOUT,
      LAYOUT_KEY      TYPE SALV_S_LAYOUT_KEY,
      NOT_FOUND       TYPE REF TO CX_SALV_NOT_FOUND,
      FUNCTIONS       TYPE REF TO CL_SALV_FUNCTIONS_LIST. 

SELECT * FROM MARA INTO TABLE @DATA(GT_ITAB) UP TO 50 ROWS.
 
  TRY.
      CL_SALV_TABLE=>FACTORY(
      IMPORTING
        R_SALV_TABLE = GO_ALV
      CHANGING
        T_TABLE      = GT_ITAB ).

      COLUMNS = GO_ALV->GET_COLUMNS( ).

      LAYOUT_SETTINGS = GO_ALV->GET_LAYOUT( ).

      LAYOUT_KEY-REPORT = SY-REPID.
      LAYOUT_SETTINGS->SET_KEY( LAYOUT_KEY ).

      LAYOUT_SETTINGS->SET_SAVE_RESTRICTION( IF_SALV_C_LAYOUT=>RESTRICT_NONE ).

      COLUMNS->SET_OPTIMIZE( ).
      FUNCTIONS = GO_ALV->GET_FUNCTIONS( ).
      FUNCTIONS->SET_ALL( ).


      TRY.
          COLUMN = COLUMNS->GET_COLUMN( 'MANDT' ).
          COLUMN->SET_VISIBLE( IF_SALV_C_BOOL_SAP=>FALSE ).
        CATCH CX_SALV_NOT_FOUND INTO NOT_FOUND.
          " error handling
      ENDTRY.

      FUNCTIONS = GO_ALV->GET_FUNCTIONS( ).
      FUNCTIONS->SET_ALL( ).

    CATCH CX_SALV_MSG INTO GO_MESSAGE.
      " error handling
  ENDTRY.

  GO_ALV->DISPLAY( ). 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Sitemizde en iyi deneyimi yaşamanızı sağlamak için çerezler kullanmaktadır.