随后如何从SALV树中删除节点?

2020-09-15 07:45发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我想从SALV树中删除选定的节点...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我想从SALV树中删除选定的节点及其子树。 这适用于我选择的第一个节点。 现在,删除该节点后,我想删除另一个节点。 这将导致一个shortdump(方法TREE_GET_CHILDREN中的异常" NODE_KEY_NOT_FOUND")。

感觉节点索引有刷新或类似的缺失。 还是这仅仅是SAL树的限制? 如何避免转储? 捕获CX_ROOT显然没有帮助。

以下是引发异常的代码段:

这是我编写的代码:

 METHOD remove_node。
     数据:lo_node类型参考cl_salv_node,
           lo_item类型参考cl_salv_item,
           lo_selections类型参考cl_salv_selections_tree。

     lo_selections = mo_tree-> get_selections()。

     尝试。
       lo_item = lo_selections-> get_selected_item()。
       lo_node = lo_item-> get_node()。
       lo_node-> delete()。
     捕捉CX_ROOT。
     ENDTRY。
     mo_tree-> display()。
   ENDMETHOD。

(21.4 kB)