ALV网格锁定特定行

时间:2015-09-08 10:01:10

标签: abap dynpro

我正在使用CL_GUI_ALV_GRID类来显示表格。我希望能够编辑表(添加新行并删除所有行),但我不希望现有行可编辑。这意味着:

我有5条记录要显示,我希望能够删除和添加新记录,但我不希望用户编辑现有的5条记录(我希望他能够删除它们)。

这可能吗?

1 个答案:

答案 0 :(得分:2)

默认情况下,当您拨打' LVC_FIELDCATALOG_MERGE'函数模块为CL_GUI_ALV_GRID生成字段目录,单元格不可编辑。

您必须设置要编辑的列,并设置'编辑'属性如下:

...
data: it_fieldcat type lvc_t_fcat,
      wa_fieldcat like line of it_fieldcat.

call function 'LVC_FIELDCATALOG_MERGE'
  EXPORTING
    i_structure_name = 'ZSTRUCT'
  CHANGING
    ct_fieldcat      = it_fieldcat.

loop at it_fieldcat into wa_fieldcat.
  wa_fieldcat-edit = 'X'. " ---->Here is set the editable column
  modify it_fieldcat from wa_fieldcat.
endloop.

如果您不想编辑单元格,请不要设置此属性。

但为了更好的参考检查程序' BCALV_EDIT_03'和' BCALV_EDIT_04'完整的例子。

希望它有所帮助。

enter image description here