点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我有一个按预期显示的ALV。 我有"全选,取消全选,批准和拒绝"按钮。 在"全选"上,所有行均按预期选择。 当我单击"批准"时,我无法使用cl_gui_alv_grid的" GET_SELECTED_ROWS",因为这仅意味着当所有行均被选中时(即,不通过选中复选框)。
我在这里的解决方案是什么。 我应该循环执行itab n吗,无法使用任何方法?
当我使用cl_gui_alv_grid-> GET_SELECTED_ROWS
时,此方法有效并返回行数
在这种情况下不起作用,我应该在修改=" X"的地方使用itab,然后进入批准流程吗? 有什么建议吗?
(89.5 kB)
如果要获取"选中的"行而不是"选中的"行,我认为没有其他方法,只能按带有复选框的列进行过滤。
您可以使用类似的方法来获取所有选中的行 (假设MODIFIED是设置复选框的名称列)
数据(lt_checked)= VALUE ty_alvt_able(用于alv_table WHERE中的alv_row(修改= abap_true)对应#(alv_row))。
您将获得一张表格,其中所有行均被选中。
此致
Adolfo
@ Adolfo Lopez
尽管我在读取的itab中有rowid,但全为零。 它已获取检查的行,但未确定行ID。 有没有办法我也可以找到选中行的索引?。
HiDivya。
是否在datatab_y []中填充了rowid?
如果是这样,只需检查它们是否具有相同的名称,否则,可以使用MAPPING加法将值从rowid移至row_id(如果它们具有不同的名称)。
Divya,正如Sandra所说的,在代码中对应的括号中缺少了。
关于
Adolfo
一周热门 更多>