Есть дерево: этап-задача-атрибуты;
для каждого из них существует идентификатор,
причем идентификаторы не совпадают с вложенной в этап задачи
или вложенного в задачу атрибута
Как удалить в таблице все значения не равные введенному
идентификатору(lv_ext_id) оставив при этом отображаться дерево?
IF lv_ext_id is not INITIAL.
LOOP at lt_tree2 ASSIGNING <s_tree>.
CASE <s_tree>-NLEVEL.
when 03. " Значение NLEVEL для этапа
CONTINUE.
when 04. " Значение NLEVEL для задач
read table lt_tree with key id = lv_ext_id ASSIGNING <s_tree>.
DELETE lt_tree2." INDEX sy-tabix.
CONTINUE.
when 05. " Значение NLEVEL для атрибутов
READ TABLE lt_tree2 TRANSPORTING NO FIELDS WITH KEY id = <s_tree>-parent.
IF sy-subrc = 0.
CONTINUE.
ENDIF.
IF sy-subrc NE 0.
DELETE lt_tree2." INDEX sy-tabix.
ENDIF.
ENDCASE.
ENDLOOP.
ENDIF.
В итоге хочу добиться, что бы при вводе, к примеру идентификатора SAP/00023-111 - отображался и этап№1