Abap ALV网格锁特定行
我正在使用Abap ALV网格锁特定行,abap,dynpro,Abap,Dynpro,我正在使用CL\u GUI\u ALV\u GRID类来显示一个表。我希望能够编辑表(添加新行并删除所有行),但不希望现有行可编辑。这意味着: 我有5条记录要显示,我希望能够删除和添加新记录,但我不希望用户编辑5条现有记录(我希望他能够删除它们) 这可能吗?默认情况下,当您调用“LVC\u FIELDCATALOG\u MERGE”功能模块为CL\u GUI\u ALV\u网格生成字段目录时,单元格不可编辑 必须设置要编辑的列设置“编辑”属性,如下所示: ... data: it_fieldca
CL\u GUI\u ALV\u GRID
类来显示一个表。我希望能够编辑表(添加新行并删除所有行),但不希望现有行可编辑。这意味着:
我有5条记录要显示,我希望能够删除和添加新记录,但我不希望用户编辑5条现有记录(我希望他能够删除它们)
这可能吗?默认情况下,当您调用“LVC\u FIELDCATALOG\u MERGE”功能模块为CL\u GUI\u ALV\u网格生成字段目录时,单元格不可编辑 必须设置要编辑的列设置“编辑”属性,如下所示:
...
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”以获得完整的示例
希望能有帮助
我已经知道,问题是如何“锁定”现有行。例如,查看事务su01的角色选项卡。无法编辑已应用的角色。您可以删除它们。@thefiloe好吧,那么您的问题不是很清楚,因为事务“SU01”不使用CL\u GUI\u ALV\u GRID。另一方面,如果您检查程序“SAPLSUU5”,特别是dynpro“103”,则有一种传统的表控制方案,需要通过表管理数据。我还没有做过这样的解决方案,但这里有一个链接可以帮助你。如果你坚持使用CL_GUI_ALV_网格,那么程序“BCALV_EDIT_04”是你最好的选择。希望能有帮助。