SAP ALV选择列排序时弹出定义排序顺序窗口问题

需求场景

使用REUSE_ALV_GRID_DISPLAY_LVC生成ALV,发现一个问题:使用it_events的时候选择列排序时会弹出定义排序顺序窗口,如下图所示。(正常选择某一列再使用排序功能时会直接排序,不用再选择列)
SAP ALV选择列排序时弹出定义排序顺序窗口问题_第1张图片

解决方案

CLASS lcl_event_receiver IMPLEMENTATION.
  METHOD handle_modify.
    DATA: lv_enter   TYPE REF TO cl_gui_event,
          lv_eventid TYPE        i.
    "获取当前事件
    lv_enter   = ref_grid->cur_event.
    "实例化成功的时候
    IF lv_enter IS NOT INITIAL.
      lv_eventid = lv_enter->eventid.
    ENDIF.
    IF lv_eventid = 19 AND sy-ucomm   = ''.
      stbl-row = 'X'."基于行的稳定刷新
      stbl-col =  'X'." 基于列稳定刷新
      CALL METHOD ref_grid->refresh_table_display
        EXPORTING
          is_stable = stbl.
    ENDIF.
      ENDMETHOD.
ENDCLASS.

说明:

只有enter事件时再刷新。

你可能感兴趣的:(ABAP,ALV,选择列排序)