2

我有一份显示 ALV 的报告。双击某个列后,ALV 中的某些字段可以自定义。这是通过将列的 fieldcatalog-row 的“edit”属性设置为“X”来完成的。

<fs_field_cat_line>-edit = 'X'.

当我设置更新的字段目录时,优化它的宽度并刷新 ALV

* setting fieldcatalog
lo_alv_grid->set_frontend_fieldcatalog( it_fieldcatalog = lt_field_catalog ).

* Optimizing column width
ls_layout-cwidth_opt = 'X'.
lo_alv_grid->set_frontend_layout( is_layout = ls_layout ).

* refresh ALV
lo_alv_grid->refresh_table_display( ).

ALV 在开始时获得一个新列,可用于选择多行,或者单击顶部时,选择所有行。

“全选”列

如何禁用此列。刷新后,我不希望此列出现。我已经尝试查看调试器会发生什么,但我似乎找不到它。

编辑:在实施下面接受的解决方案后,更改如下所示:

* setting fieldcatalog
lo_alv_grid->set_frontend_fieldcatalog( it_fieldcatalog = lt_field_catalog ).

* Optimizing column width
ls_layout-cwidth_opt = 'X'.

* Disabling selection column
ls_layout-sel_mode = 'A'.
ls_layout-no_rowmark = 'X'.

* setting layout
lo_alv_grid->set_frontend_layout( is_layout = ls_layout ).

* refresh ALV
lo_alv_grid->refresh_table_display( ).
4

1 回答 1

3

根据文档,您必须

  • 将网格的NO_ROWMARK标志设置为X
  • SEL_MODE将网格的设置更改为AD。默认值' '被解释为BAFAIR 忽略该NO_ROWMARK标志。
于 2017-10-04T16:31:13.387 回答