[英]Multiple selection of rows in ALV Grid
我需要在 ALV 網格中啟用多行選擇(尤其是REUSE_ALV_GRID_DISPLAY
)。 目前到 select 不止一行,我使用Ctrl + select 行。 我們還有其他方法可以使用嗎? 我在 ECC 上使用 ABAP。
在創建 ALV 期間需要 SEL_MODE 參數。
資料來源: https://keremkoseoglu.wordpress.com/2009/06/29/cl_gui_alv_grid-line-selection-modes-in-abap/
使用REUSE_ALV_GRID_DISPLAY
,您需要在 ALV 表中有一個專用字段來包含是否選擇了行,並且框架將理解 ALV 必須啟用“多行選擇”功能:
TYPES: BEGIN OF ty_alv_line,
selected TYPE abap_bool,
carrid TYPE scarr-carrid,
carrname TYPE scarr-carrname,
END OF ty_alv_line.
DATA(layout) = VALUE slis_layout_alv(
box_fieldname = 'SELECTED' ).
SELECT 'X' AS selected, carrid, carrname FROM scarr INTO TABLE @DATA(scarr_table).
DATA(field_catalog) = VALUE slis_t_fieldcat_alv(
( col_pos = 1 fieldname = 'SELECTED' tech = 'X' )
( col_pos = 2 fieldname = 'CARRID' ref_fieldname = 'CARRID' ref_tabname = 'SCARR' )
( col_pos = 3 fieldname = 'CARRNAME' ref_fieldname = 'CARRNAME' ref_tabname = 'SCARR' ) ).
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
is_layout = layout
it_fieldcat = field_catalog
TABLES
t_outtab = scarr_table
EXCEPTIONS
OTHERS = 1.
注意:該示例沒有演示對選定行的處理(可以通過添加自定義按鈕和子程序來在按下時處理); 上面的語法至少需要 ABAP 7.40。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.