DATA: gt_filtered TYPE lvc_t_fidx,
    gs_filtered TYPE int4,
    o_grid TYPE REF TO cl_gui_alv_grid.

    * 筛选类、获取筛选数据行,用于后续处理
    CALL FUNCTION ‘GET_GLOBALS_FROM_SLVC_FULLSCR’
    IMPORTING
    e_grid = o_grid.
    CALL METHOD o_grid->get_filtered_entries
    IMPORTING
    et_filtered_entries = gt_filtered. “获取的是未筛选的行数

    CASE sy-ucomm.
    **全选
    WHEN ‘SEL’.
    CLEAR lv_tabix.
    LOOP AT gt_head INTO gw_head.
    lv_tabix = sy-tabix.
    READ TABLE gt_filtered INTO gs_filtered with KEY table_line = lv_tabix TRANSPORTING NO FIELDS.
    IF sy-subrc <> 0.
    gw_head-sel = ‘X’.
    MODIFY gt_head FROM gw_head.
    ENDIF.
    ENDLOOP.