使 CL_SALV_TABLE 列可编辑?

Make CL_SALV_TABLE column editable?

我正在使用 CL_SALV_TABLE=>FACTORY 显示 ALV,我希望用户能够 select 一些行,然后这些行将被进一步处理。

我确实使用 CHECKBOX_COLUMN->SET_CELL_TYPE( IF_SALV_C_CELL_TYPE=>CHECKBOX ) 将该列变成了复选框列,但我没有找到使该列“可编辑”的方法,它是只读的。

有没有办法让它与 CL_SALV_TABLE 一起工作? 到目前为止我发现的所有内容都是针对旧 ALV 函数的解决方案

内部 CL_SALV_TABLE 构建于 CL_GUI_ALV_GRID 之上。您可以访问 CL_GUI_ALV_GRID 的内部实例并将其切换到可编辑模式。 有几种获取方式,例如:

然后就可以用SET_READY_FOR_INPUT的方法切换到编辑模式了

SALV (ALV OM) 不提供任何“编辑”功能(在网上搜索“International Editable SALV Day XXXX – Year XX”,每年它都要求提供此功能)。

您可以改用 CL_GUI_ALV_GRID

注意:关于CL_GUI_ALV_GRID,虽然标准程序广泛使用编辑功能,但在自定义程序中使用它时,如果客户在使用此编辑时遇到问题,SAP 不提供任何支持功能(note 695910 - ALV 网格:未发布的可编辑网格和方法)。