0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ALV bridge

Posted at
title.rb

pCLASS zcl_my_alv DEFINITION.
  PUBLIC SECTION.
    METHODS: show_data.
ENDCLASS.

CLASS zcl_my_alv IMPLEMENTATION.

  METHOD show_data.
    DATA: lt_data     TYPE STANDARD TABLE OF sflight,
          lt_fcat     TYPE slis_t_fieldcat_alv,
          ls_fcat     TYPE slis_fieldcat_alv,
          ls_layout   TYPE slis_layout_alv.

    " 模拟数据
    SELECT * FROM sflight INTO TABLE lt_data UP TO 20 ROWS.

    " 构建字段目录简单写一列
    CLEAR ls_fcat.
    ls_fcat-fieldname = 'CARRID'.
    ls_fcat-seltext_l = '航空公司'.
    APPEND ls_fcat TO lt_fcat.

    " 调用 ALV
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
      EXPORTING
        i_callback_program       = 'ZALV_BRIDGE' " 关键桥接程序名
        i_callback_pf_status_set = 'SET_PF_STATUS'
        i_callback_user_command  = 'USER_COMMAND'
        is_layout                = ls_layout
        it_fieldcat              = lt_fcat
        i_save                   = 'A'
      TABLES
        t_outtab                 = lt_data.
  ENDMETHOD.

ENDCLASS.

title.rb

REPORT ztest_call_alv.

START-OF-SELECTION.
  DATA(lo_alv) = NEW zcl_my_alv( ).
  lo_alv->show_data( ).

title.rb

REPORT zalv_bridge.

FORM set_pf_status USING rt_extab TYPE slis_t_extab.
  SET PF-STATUS 'ZSTATUS'.
ENDFORM.

FORM user_command USING r_ucomm     LIKE sy-ucomm
                         rs_selfield TYPE slis_selfield.

  CASE r_ucomm.
    WHEN 'REFRESH'.
      MESSAGE '点击了刷新按钮' TYPE 'I'.
  ENDCASE.

ENDFORM.

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?