2017-10-04 112 views
1

我有一個顯示ALV的報告。雙擊特定列後,ALV中的某些字段可以自定義。這是通過將該欄的fieldcatalog行的'編輯'屬性設置爲'X'來完成的。使字段可修改後,刪除選擇帶有ABAP的所有列用於ALV

<fs_field_cat_line>-edit = 'X'. 

當我設置的更新fieldcatalog,優化其寬度和刷新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得到一個能點擊的時候可以用來選擇多行,或開始得到一個新列在頂部,選擇所有行。

'select all'-column

如何禁用此列。刷新後,我不希望出現此列。我試着看看調試器會發生什麼,但我似乎無法找到它。

編輯:執行下面的接受的解決方案後,變化是這樣的:

* 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(). 

回答

2

the documentation,你必須

  • 電網的NO_ROWMARK標誌設置爲X
  • 更改SEL_MODE設置的gri d至AD。默認' '被解釋爲B,其中AFAIR忽略NO_ROWMARK標誌。
相關問題