cancel
Showing results for 
Search instead for 
Did you mean: 

Dynamic tree UI element in the view

Former Member
0 Kudos

Dear All,

Can anyone provide me with the code snippet for Dynamic Tree UI element in the view. I need to show the tree which should be generated dynamically.

Thanks alot in advance!

Points will be rewarded, Please its urgent!

Cheers,

Darshna.

Accepted Solutions (1)

Accepted Solutions (1)

thomas_szcs
Active Contributor
0 Kudos

Hi Darshna,

You can find several examples for dynamic trees in component WDR_TEST_EVENTS. Feel free to copy & paste from there.

Best regards,

Thomas

Former Member
0 Kudos

Hi Thomas,

I have checked these examples but I am not getting the results.

Can you please help me with other examples or any code.

I am getting error on "PATH" parameter.

Thank you for ur time!!

Cheers,

Darshna.

thomas_szcs
Active Contributor
0 Kudos

Hi Darshna,

The path used in the bind_* methods is the path without the name of the current controller. Unfortunately, I don't know of other tree examples.

Best regards,

Thomas

former_member196517
Contributor
0 Kudos

Hi Darshna,

what is exact problem in path , this parameter is passed by framework for this UI element. To eventhandler u simply add this path parameter.

I have developed a tree application but it is so vast that i cannit share the code as it would be difficult to understand. However if you tell me problems in this tree control than i can help you to proceed

Regards

Anuj

Former Member
0 Kudos

Hi Anuj,

Actually I want all nodes to be created dynamically.....If you can explain me the procedure and just gimme the code for "On_Load_Children" event then it'll be gr8 help for me. I have written supply function on 1st node and noe I am writing event on Tree node type.

Cheers,

Darshna.

Former Member
0 Kudos

Hi Anuj ,

I also have same reqirement . I want to replicate Organization tree shown in pposa in WebDynpro ABAP .

If you know please guide me .

former_member196517
Contributor
0 Kudos

Ok Lemme try to explain... first of all you should know about recursive context nodes which is required in this case . And on action load children framework passes a element a element called as PATH. Say your recursive node name is TEST and on actionload children if you loaded first sub node under first node then this path element would be having a value say TEST.1.SUBTEST.1 and if you expanded say second sub node under first node then this path element would be having a value say TEST.1.SUBTEST.2 and like this.... now using this path you can get a refernce to this node and all of its attributes.....

Can you get something out of this..

Regards

Anuj

Answers (1)

Answers (1)

former_member196517
Contributor
0 Kudos

Hi ,

sorry for the late reply... here is the code for onActionLoadchildren .. i am sure you wont understand this.. but lets try...

DATA:

element_parent TYPE REF TO if_wd_context_element,

lv_object_key1 type string,

lv_object_type type string.

DATA:

node_root_entry TYPE REF TO if_wd_context_node,

elem_root_entry TYPE REF TO if_wd_context_element,

stru_root_entry TYPE if_structure_view_new=>element_root_entry ,

item_valid_from LIKE stru_root_entry-valid_from,

item_plant LIKE stru_root_entry-plant,

item_equi_key LIKE stru_root_entry-equi_key,

item_object_key LIKE stru_root_entry-object_key,

item_object_type TYPE string,

item_path TYPE string,

item_parent_path TYPE string,

  • context_node TYPE REF TO if_wd_context_node,

root_entry TYPE if_structure_view_new=>element_selected_entry.

  • l_ref_componentcontroller TYPE REF TO ig_componentcontroller.

DATA:

  • node_root_info TYPE REF TO if_wd_context_node,

  • elem_root_info TYPE REF TO if_wd_context_element,

stru_root_info TYPE if_structure_view_new=>element_root_info .

DATA:

element TYPE REF TO if_wd_context_element,

node_selected_entry TYPE REF TO if_wd_context_node,

elem_selected_entry TYPE REF TO if_wd_context_element.

DATA:

ls_hier_return TYPE rplm_ts_struc_elements,

lt_hier_return TYPE TABLE OF rplm_ts_struc_elements,

ls_hier_return_temp TYPE rplm_ts_struc_elements,

lt_hier_return_temp TYPE TABLE OF rplm_ts_struc_elements,

ls_hier_level TYPE rplm_ts_hier_level,

lt_hier_level TYPE TABLE OF rplm_ts_hier_level,

ls_hier_return_sort TYPE rplm_mt_ts_hier,

lt_hier_return_sort TYPE TABLE OF rplm_mt_ts_hier.

DATA:

temp_hier_level TYPE if_structure_view_new=>element_hier_level,

lt_hier_temp TYPE TABLE OF if_structure_view_new=>element_hier_level,

lt_temp TYPE TABLE OF if_structure_view_new=>element_hier_level.

DATA:

lc_path TYPE string,

lv_object_key TYPE string.

DATA:

lv_hier_lines TYPE i.

DATA:

  • node_entries TYPE REF TO if_wd_context_node,

node_sub_entries TYPE REF TO if_wd_context_node,

  • elem_sub_entries TYPE REF TO if_wd_context_element,

stru_sub_entries TYPE if_structure_view_new=>element_sub_entries .

TYPES: BEGIN OF ls_hier_type, "structure for Hierarchy table

object(31) TYPE c, "Objectkey

predecessor(31) TYPE c, "Objectkey Predecessor

data(2000) TYPE c, "Data container

level TYPE i, "level of object in tree

successors(1) TYPE c, "Object has successors: YES/NO/U

display(1) TYPE c, "Object is displayed: YES/NO

selected(1) TYPE c, "Object is selected/marked: YES/NO

index_predec LIKE sy-tabix, "Index predecessor

strno TYPE ilom_strno,"External number for func. loc.

"in BOMs used for top object

END OF ls_hier_type.

DATA:

ls_hier TYPE ls_hier_type,

lt_hier TYPE TABLE OF ls_hier_type WITH DEFAULT KEY,

lt_mat_hier TYPE TABLE OF ls_hier_type WITH DEFAULT KEY.

" For retrieving Material Data Heirarchy

DATA:

lh_stpo_tab TYPE TABLE OF rihstpx ,

lwa_stpo_tab LIKE LINE OF lh_stpo_tab,

check_menge TYPE string ,

check_meins TYPE string ,

lwa_mat_hier LIKE LINE OF lt_mat_hier ,

lt_dup_mat_hier LIKE lt_mat_hier,

lv_len TYPE i,

lv_len_temp TYPE i .

DATA:

lv_equnr TYPE equi-equnr,

lv_tplnr TYPE iflo-tplnr,

lv_matnr TYPE mast-matnr.

DATA:

lv_cnt TYPE i,

lv_index TYPE i.

DATA:

lv_path TYPE string,

lv_parent_path TYPE string,

pos TYPE string,

separator TYPE c VALUE '.',

max_level TYPE i,

temp_level TYPE i,

counter TYPE i VALUE 1.

TYPES: BEGIN OF ls_pred_type, "structure for Hierarchy table

parent(31) TYPE c, "Objectkey Predecessor

path(2000) TYPE c, "Data container

index_predec LIKE sy-tabix, "Index predecessor

END OF ls_pred_type.

DATA:

ls_pred TYPE ls_pred_type,

lt_pred TYPE TABLE OF ls_pred_type WITH DEFAULT KEY.

DATA:

lv_int_obj_key TYPE string,

obj_len TYPE i,

lv_funcloc_ext TYPE ilom_strno,

lv_funcloc TYPE itob-tplnr.

DATA:

lv_level TYPE i,

lv_temp TYPE i,

lt_path_entries TYPE string_table.

DATA:

node_general TYPE REF TO if_wd_context_node,

elem_general TYPE REF TO if_wd_context_element,

stru_general TYPE if_structure_view_new=>element_general ,

item_collapse_visibility LIKE stru_general-collapse_visibility.

DATA:

elem_context TYPE REF TO if_wd_context_element,

stru_context TYPE if_structure_view_new=>element_context ,

item_expand_all LIKE stru_context-expand_all.

lv_path = path.

  • Get Element whose children shall be loaded

element_parent = wd_context->path_get_element( lv_path ).

element_parent->get_attribute(

EXPORTING

name = `OBJECT_KEY`

IMPORTING

value = LV_object_key ).

element_parent->get_attribute(

EXPORTING

name = `OBJECT_TYPE`

IMPORTING

value = lv_object_type ).

node_root_entry = wd_context->get_child_node( name = wd_this->wdctx_root_entry ).

  • get element via lead selection

elem_root_entry = node_root_entry->get_element( ).

  • get single attribute

elem_root_entry->get_attribute(

EXPORTING

name = `VALID_FROM`

IMPORTING

value = item_valid_from ).

elem_root_entry->get_attribute(

EXPORTING

name = `PLANT`

IMPORTING

value = item_plant ).

item_object_type = lv_object_type.

if lv_object_type eq 'EQUI'.

item_object_key = ''.

item_equi_key = lv_object_key.

elseif lv_object_type eq 'FUNCLOC'.

item_object_key = lv_object_key.

item_equi_key = ''.

ELSE.

lv_matnr = lv_object_key.

  • For BOM, material and Assembly

endif.

IF item_object_type EQ 'EQUI'.

lv_equnr = lv_object_key.

ELSEif item_object_type eq 'FUNCLOC'.

lv_tplnr = lv_object_key.

ELSE.

LV_MATNR = lv_object_key.

exit.

ENDIF.

CALL FUNCTION 'PM_HIERARCHY_CALL'

EXPORTING

datum = item_valid_from

equnr = lv_equnr

tplnr = lv_tplnr

matnr = lv_matnr

levdo = '99'

levup = '00'

sanin = 'X'

select_equi = 'X'

select_iflo = 'X'

select_stpo = 'X'

selmod = 'D'

stkkz = ''

werks = item_plant

with_equi = 'X'

with_equi_hier = 'X'

with_iflo_hier = 'X'

with_btyp = 'X'

with_mara = 'X'

with_ibase_hier = ''

capid = ''

emeng = 0

IMPORTING

et_hier = lt_hier

EXCEPTIONS

no_hierarchy = 1

no_object_defined = 2

no_selection = 3

no_valid_equnr = 4

no_valid_matnr = 5

no_valid_selmod = 6

no_valid_tplnr = 7

OTHERS = 8.

LOOP AT lt_hier INTO ls_hier.

ls_hier_return-object_key = ls_hier-object.

ls_hier_level-object_key = ls_hier-object.

ls_hier_level-predecessor = ls_hier-predecessor.

lv_len = strlen( ls_hier-object ).

IF lv_len GT 1.

lv_len_temp = lv_len - 1.

ELSEIF

lv_len_temp = lv_len.

ENDIF.

ls_hier_level-level = ls_hier-level.

IF ls_hier-object(1) = 'T'.

ls_hier_return-icon = 'ICON_TECHNICAL_PLACE'.

ls_hier_return-object_type = 'FUNCLOC'.

IF ls_hier-successors = 'Y'.

ls_hier_return-is_leaf = abap_false.

ls_hier_return-is_expanded = abap_false.

ls_hier_return-children_loaded = abap_true.

ELSE.

ls_hier_return-is_leaf = abap_true.

ls_hier_return-is_expanded = abap_true.

ls_hier_return-children_loaded = abap_true.

ENDIF.

ELSEIF ls_hier-object(1) = 'E'.

ls_hier_return-icon = 'ICON_EQUIPMENT'.

ls_hier_return-object_type = 'EQUI'.

IF ls_hier-successors = 'Y'.

ls_hier_return-is_leaf = abap_false.

ls_hier_return-is_expanded = abap_false.

ls_hier_return-children_loaded = abap_true.

ELSE.

ls_hier_return-is_leaf = abap_true.

ls_hier_return-is_expanded = abap_true.

ls_hier_return-children_loaded = abap_true.

ENDIF.

ELSEIF ls_hier-object+lv_len_temp(1) = 'M'.

ls_hier_return-icon = 'ICON_MATERIAL'.

ls_hier_return-object_type = 'MATERIAL'.

IF ls_hier-successors = 'Y'.

ls_hier_return-is_leaf = abap_false.

ls_hier_return-is_expanded = abap_false.

ls_hier_return-children_loaded = abap_false.

ELSE.

ls_hier_return-is_leaf = abap_true.

ls_hier_return-is_expanded = abap_true.

ls_hier_return-children_loaded = abap_true.

ENDIF.

ELSEIF ls_hier-object+lv_len_temp(1) = 'X'.

ls_hier_return-icon = 'ICON_SUPPLY_AREA'.

ls_hier_return-object_type = 'MATBOM'.

IF ls_hier-successors = 'Y'.

ls_hier_return-is_leaf = abap_false.

ls_hier_return-is_expanded = abap_false.

ls_hier_return-children_loaded = abap_false.

ELSE.

ls_hier_return-is_leaf = abap_true.

ls_hier_return-is_expanded = abap_true.

ls_hier_return-children_loaded = abap_true.

ENDIF.

ELSEIF ls_hier-object+lv_len_temp(1) = 'A'.

ls_hier_return-icon = 'ICON_MATERIAL_REVISION'.

ls_hier_return-object_type = 'MATERIAL'.

IF ls_hier-successors = 'Y'.

ls_hier_return-is_leaf = abap_false.

ls_hier_return-is_expanded = abap_false.

ls_hier_return-children_loaded = abap_false.

ELSE.

ls_hier_return-is_leaf = abap_true.

ls_hier_return-is_expanded = abap_true.

ls_hier_return-children_loaded = abap_true.

ENDIF.

ENDIF.

*IF ls_hier-predecessor EQ item_object_key OR ls_hier-object EQ item_object_key.

APPEND ls_hier_return TO lt_hier_return.

APPEND ls_hier_level TO lt_hier_level.

*ENDIF.

CLEAR lv_len.

CLEAR lv_len_temp.

ENDLOOP.

lt_hier_return_temp = lt_hier_return.

DESCRIBE TABLE lt_hier LINES lv_hier_lines.

IF lv_hier_lines EQ 0.

elem_selected_entry = wd_context->path_get_element( '1.ENTRIES.1' ).

  • Get children node

elem_selected_entry->set_attribute(

value = abap_true

name = 'IS_LEAF' ).

ENDIF.

*************************************Deleting Now***********

SORT lt_hier_level BY level DESCENDING.

LOOP AT lt_hier_level INTO ls_hier_level.

max_level = ls_hier_level-level.

EXIT.

ENDLOOP.

*************************************

SORT lt_hier_level BY level ASCENDING.

LOOP AT lt_hier_level INTO ls_hier_level WHERE level EQ 0.

ls_hier_level-path = '1.ENTRIES.1'.

ls_hier_level-parent_path = '1.ENTRIES.1'.

MODIFY lt_hier_level FROM ls_hier_level.

ENDLOOP.

************************New design to Generate Path and Parent path

*

  • lv_cnt = 0.

  • temp_level = 1.

*

  • SORT lt_hier_level BY object_key ASCENDING.

*

  • LOOP AT lt_hier_level INTO ls_hier_level WHERE level EQ 1.

  • lv_cnt = lv_cnt + 1.

  • lv_parent_path = '1.ENTRIES.1'.

  • ls_hier_level-parent_path = lv_parent_path.

  • pos = lv_cnt.

  • CONCATENATE lv_parent_path separator 'SUB_ENTRIES' separator pos INTO lv_path.

  • ls_hier_level-path = lv_path.

*

  • MODIFY lt_hier_level FROM ls_hier_level.

  • ENDLOOP.

*

  • temp_level = 1.

  • lv_cnt = 0.

*

*********************Need to call this for each level ***************************

  • WHILE temp_level LT max_level.

  • CLEAR lt_pred.

  • CLEAR ls_pred.

*

  • LOOP AT lt_hier_level INTO ls_hier_level WHERE level EQ temp_level.

  • ls_pred-parent = ls_hier_level-object_key.

  • ls_pred-path = ls_hier_level-path.

  • APPEND ls_pred TO lt_pred.

  • ENDLOOP.

*

  • SORT lt_pred BY parent.

  • DELETE ADJACENT DUPLICATES FROM lt_pred.

*

  • LOOP AT lt_pred INTO ls_pred.

  • lv_cnt = 0.

  • LOOP AT lt_hier_level INTO ls_hier_level WHERE predecessor EQ ls_pred-parent.

  • lv_cnt = lv_cnt + 1.

  • lv_parent_path = ls_pred-path.

  • ls_hier_level-parent_path = lv_parent_path.

  • lv_path = ''.

  • pos = lv_cnt.

  • CONCATENATE lv_parent_path separator 'SUB_ENTRIES' separator pos INTO lv_path.

  • ls_hier_level-path = lv_path.

  • MODIFY lt_hier_level FROM ls_hier_level.

  • ENDLOOP.

  • ENDLOOP.

*

  • temp_level = temp_level + 1.

*

  • ENDWHILE.

*

*

*

********************************************************************************************

*

*

  • LOOP AT lt_hier_level INTO ls_hier_level.

  • LOOP AT lt_hier_return INTO ls_hier_return.

  • IF ls_hier_level-object_key = ls_hier_return-object_key.

  • MOVE-CORRESPONDING ls_hier_level TO ls_hier_return.

  • MODIFY lt_hier_return FROM ls_hier_return.

  • ENDIF.

  • ENDLOOP.

  • ENDLOOP.

*

  • SORT lt_hier_return BY path ASCENDING.

*****************************************************

**************************Delete the extra first character returned by PM_HIERARCHY_CALL******

LOOP AT lt_hier_return INTO ls_hier_return.

IF ls_hier_return-object_key(1) = 'T'.

SHIFT ls_hier_return-object_key BY 1 PLACES.

lv_object_key = ls_hier_return-object_key.

lv_funcloc_ext = lv_object_key.

CALL FUNCTION 'CONVERSION_EXIT_TPLNR_OUTPUT'

EXPORTING

input = lv_funcloc_ext

IMPORTING

output = lv_funcloc.

lv_int_obj_key = lv_funcloc.

ls_hier_return-object_key = lv_int_obj_key.

ELSEIF ls_hier_return-object_key(1) = 'E'.

SHIFT ls_hier_return-object_key BY 1 PLACES.

lv_object_key = ls_hier_return-object_key.

obj_len = strlen( lv_object_key ).

IF obj_len GE 18.

lv_object_key = lv_object_key+0(18).

ENDIF.

wd_comp_controller->conv_ext_2_int(

EXPORTING

iv_object_key_ext = lv_object_key " String

iv_object_type = 'EQUI' " String

IMPORTING

ev_object_key = lv_int_obj_key " String

).

SHIFT lv_int_obj_key LEFT DELETING LEADING '0'.

ls_hier_return-object_key = lv_int_obj_key.

ELSE.

SHIFT ls_hier_return-object_key BY 1 PLACES.

lv_object_key = ls_hier_return-object_key.

obj_len = strlen( lv_object_key ).

IF obj_len GE 18.

lv_object_key = lv_object_key+0(18).

ENDIF.

SHIFT lv_object_key LEFT DELETING LEADING '0'.

ls_hier_return-object_key = lv_object_key.

ENDIF.

MODIFY lt_hier_return FROM ls_hier_return TRANSPORTING object_key object_key.

ENDLOOP.

  • LOOP AT lt_hier_level INTO ls_hier_level.

*

  • IF ls_hier_level-object_key(1) = 'T'.

  • SHIFT ls_hier_level-object_key BY 1 PLACES.

  • lv_object_key = ls_hier_level-object_key.

*

  • lv_funcloc_ext = lv_object_key.

*

  • CALL FUNCTION 'CONVERSION_EXIT_TPLNR_OUTPUT'

  • EXPORTING

  • input = lv_funcloc_ext

  • IMPORTING

  • output = lv_funcloc.

*

  • lv_int_obj_key = lv_funcloc.

  • ls_hier_level-object_key = lv_int_obj_key.

*

  • ELSEIF ls_hier_level-object_key(1) = 'E'.

  • SHIFT ls_hier_level-object_key BY 1 PLACES.

  • lv_int_obj_key = ls_hier_level-object_key.

  • obj_len = strlen( lv_int_obj_key ).

*

  • IF obj_len GE 18.

  • lv_int_obj_key = lv_int_obj_key+0(18).

  • ENDIF.

*

*

*

  • wd_comp_controller->conv_ext_2_int(

  • EXPORTING

  • iv_object_key_ext = lv_int_obj_key " String

  • iv_object_type = 'EQUI' " String

  • IMPORTING

  • ev_object_key = lv_int_obj_key " String

  • ).

  • SHIFT lv_int_obj_key LEFT DELETING LEADING '0'.

  • ls_hier_level-object_key = lv_int_obj_key.

  • ELSE.

*

  • SHIFT ls_hier_level-object_key BY 1 PLACES.

  • lv_int_obj_key = ls_hier_level-object_key.

  • obj_len = strlen( lv_int_obj_key ).

*

*

*

  • IF obj_len GE 18.

*

  • lv_int_obj_key = lv_int_obj_key+0(18).

  • ENDIF.

  • SHIFT lv_int_obj_key LEFT DELETING LEADING '0'.

  • ls_hier_level-object_key = lv_int_obj_key.

*

  • ENDIF.

*

  • MODIFY lt_hier_level FROM ls_hier_level TRANSPORTING object_key object_key.

  • ENDLOOP.

*************************************************************************************************

*********************Getinfo if root node else call Get_Children_Info to generate the structure as well*******

IF lv_path EQ '1.ENTRIES.1'.

element = wd_context->path_get_element( lv_path ).

  • navigate from <ENTRIES> to <SUB_ENTRIES> via lead selection

node_sub_entries = element->get_child_node( name = 'SUB_ENTRIES' ).

element->get_attribute( EXPORTING name = 'OBJECT_KEY'

IMPORTING value = item_object_key ).

element->get_attribute( EXPORTING name = `OBJECT_TYPE`

IMPORTING value = item_object_type ).

****************Get Info of Technical Objects*************

wd_comp_controller->get_children_info(

EXPORTING

iv_lt_list = lt_hier_return " Rplm_Tt_Mt_Struc

iv_path = ''

iv_hier_level = lt_hier_level

IMPORTING

ev_lt_full = lt_hier_return " Rplm_Tt_Mt_Struc

).

  • Create the strcuture by binding the entries to Node which is bound to the table

element = wd_context->path_get_element( lc_path ).

  • Get children node

node_sub_entries = element->get_child_node( 'SUB_ENTRIES' ).

CALL METHOD node_sub_entries->bind_table

EXPORTING

new_items = lt_hier_return

set_initial_elements = abap_true.

************************************************************

*

    • @TODO handle not set lead selection

  • IF ( node_entries IS INITIAL ).

  • ENDIF.

  • lv_temp = 1.

***************Sort the LT_HIER_TABLE appropriately ******

*

  • LOOP AT lt_hier_return INTO ls_hier_return .

  • MOVE-CORRESPONDING ls_hier_return TO ls_hier_return_sort.

  • ls_hier_return_sort-path_length = strlen( ls_hier_return_sort-path ).

  • APPEND ls_hier_return_sort TO lt_hier_return_sort.

*

  • ENDLOOP.

*

  • SORT lt_hier_return_sort BY path_length ASCENDING path ASCENDING.

  • CLEAR lt_hier_return.

*

  • LOOP AT lt_hier_return_sort INTO ls_hier_return_sort.

  • MOVE-CORRESPONDING ls_hier_return_sort TO ls_hier_return.

  • APPEND ls_hier_return TO lt_hier_return.

  • ENDLOOP.

*

*wd_comp_controller->gv_master_data = lt_hier_return.

  • LOOP AT lt_hier_return INTO ls_hier_return.

*

*

  • lv_path = ls_hier_return-path.

*

  • lc_path = ls_hier_return-parent_path.

*

**********************************************************************

  • IF lv_path NE '1.ENTRIES.1'.

*

  • element = wd_context->path_get_element( lc_path ).

    • Get children node

*

  • node_sub_entries = element->get_child_node( 'SUB_ENTRIES' ).

*

*

    • Now, create the children elements

  • element->get_attribute( EXPORTING name = 'OBJECT_KEY'

  • IMPORTING value = ls_hier_level-predecessor ).

*

    • Create the strcuture by binding the entries to Node which is bound to the table

*

  • CALL METHOD node_sub_entries->bind_structure

  • EXPORTING

  • new_item = ls_hier_return

  • set_initial_elements = abap_false.

  • ENDIF.

*

  • ENDLOOP.

  • Only when a new level is reached we create one more child node

  • else we attach our elements to same child node

element = wd_context->path_get_element( item_path ).

  • Get children node

element->set_attribute(

value = abap_false

name = 'IS_EXPANDED' ).

ENDIF.

  • navigate from <CONTEXT> to <GENERAL> via lead selection

node_general = wd_context->get_child_node( name = wd_this->wdctx_general ).

  • get element via lead selection

elem_general = node_general->get_element( ).

  • get single attribute

elem_general->set_attribute(

name = `COLLAPSE_VISIBILITY`

value = abap_false ).

node_selected_entry = wd_context->get_child_node( name = if_structure_view_new=>wdctx_selected_entry ).

  • get element via lead selection

elem_selected_entry = node_selected_entry->get_element( ).

  • get single attribute

elem_selected_entry->set_attribute(

name = `OBJECT_KEY`

value = '' ).

elem_selected_entry->set_attribute(

name = `OBJECT_TYPE`

value = '' ).

  • get element via lead selection

elem_context = wd_context->get_element( ).

  • get single attribute

elem_context->set_attribute(

name = `EXPAND_ALL`

value = abap_false ).

wd_this->enable_buttons(

).

endmethod.

Former Member
0 Kudos

Great