Simple Requirement in Tree UI element

Hi All
I have the following requirement which is very simple in webdynpro java but the same changes are not reflecting in Tree UI element.
I have created the context struture as follows and i added this context node to the dataSource property of the Tree UI element.
but at the runtime the tree elements are not displayed as i added the context structure to the dataSource property.
i am getting the blank tree at runtime there is no elements at all.
Can you let us know if any settings are required to change the Tree UI properties.
Context Node Structure
A
  A1
  A2
B
  B1
  B2
C
  C1
  C2
Any pointers on this then it would be great help to me
Thanks
Trisha Rani
Edited by: Trisha Rani198 on May 21, 2009 6:25 PM

I gave you a complete example in your other thread.
Armin

Similar Messages

  • Tutorials and Documentation on Tree UI Element for ABAP

    Hi Everyone,
    I am having trouble finding documentation or tutorials on creating Tree structures in web dynpro for ABAP.
    Basically, I need some tutorials on using the "Tree" UI Element.  Also, how would I go about adding Check Boxes to such a control?  For example, someone would like to select the lowest item in a Tree using a check box.
    Tank you.
    Christiaan.

    Hi
    >a) How to check or how to write the code to check whether the current selected node is first level or second level or third level etc from the above example tree structure
    In the context node you have to have attribute level (integer). When you populate context nodes for the tree you have to set correct value 0, 1, 2, ... for the attribute. Then it'll be easy for you to read the value and understand what is the level.
    >b) How to insert a node only at the first level , second level and third level i etc from the above example
    It slightly depends on whether you use recursive nodes or not. But in general it's simple - just create a new element in the corresponding node
    >c) How to delete only leaf node . i have a requirement which says that i can delete only leaf nodes , if i delete a node which having children then it should not allow to me. i can delete a node which is not having any child
    IWDNode node;
    if (node.getChild("<child node name>").size() <= 0) {
    // leaf node
    >4) How to rename any node, once user selects any node then on click of any button then popup opens which retrieves the current textvalue of a node and user have an inputfield where he enters then on click of save then that new textvalue needs to be updated to the selected tree element
    Just bind the text property of a tree item to some node attribute (let say NAME). The just update a value of the attribute.
    BR, Siarhei

  • Webdynpro tree ui element

    hi all,
        i want to know from which tables can i pick the skill group and skills related to each skill group. And after getting these details i want to display them in the tree structure in my iView .
        it is very urgent can any body help me regarding this issue.
    Thanks & Regards,
    Sreelatha Gullapalli.

    Hi,
    for tree UI element look into the below PDF...
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f0ec6622-8da5-2a10-349b-868b6a553efa
    and for binding data to a table... simple way to do it is just right click on your container in LayOut tab and then click on Apply template, from there select Table and then select the corrosponding Context node from which you want to display data into the table....
    hope it will be helpful....
    Reward points if useful...
    Regards,
    Srini.

  • Drag and Drop in feature in Tree UI element

    Hello All,
    The requirement is as following. The webdynpro screen should show two nodes Node1 and Node2. Each node would have some attributes.
    Node1           
    __AAA
    __BBB
    Node2
       |__XXX
       |__YYY
    It should  be possible to drag and drop attributes from node to another node(Example , cut YYY from Node2 and add it to Node1).
    Now can we achieve this using Tree UI element? Please let me know your inputs?
    Regards,
    Raghu.

    it should be possible according to sap help[http://help.sap.com/saphelp_nw70ehp1/helpdata/en/a5/bf47414eca430794189fbb5919cc2f/content.htm|http://help.sap.com/saphelp_nw70ehp1/helpdata/en/a5/bf47414eca430794189fbb5919cc2f/content.htm]
    Edited by: Baskaran Senthivel on Jan 16, 2012 8:41 PM

  • Dynamic tree UI element in the view

    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.

    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.

  • In tree UI element inserting values from database

    hai all,
            Iam using tree UI element where I need to load the elements from database in tree.when the root node is selected the selected root node should be given as input to database and the subelements should be loaded to that particular root node.I ha ve alraedy gone thru the links in sdn where only static values are inserted in tree so plz help me to do that dynamically.Any suggesstions and guidance provided with this regard will be greatly appreciated.Its very urgent so plz help me in this .
    Thanks n Regards
    Sharanya.R

    hai armin ,
    how to get the selected value and give that as input and get the child nodes of tree loaded.iam not able to get that.also the user selected values need to be stored in database at last.how can this be done?
    Thanks n Regards
    Sharanya.R

  • My code to "select" an element in the Tree UI element is not consistently working

    Hi,
    I created a Web Dynpro component that does many things.  One feature is do display information in a Tree UI element.  I use the TreeNodeType and recursive context node to build a nice tree representing what the customer wants.  Since this tree could get very large, I implemented a search feature to help users locate items in the tree.  When found, I expand the tree, and call call set_lead_selection passing in the element where found.  This seems to generally work fine (and highlights the highlights the desired TreeNodeType), but only when going farther down in the tree. If I change the search so that it should find something "higher up" in the tree, the search still works, and it finds the data, but calling the set_lead_selection does not seem to unhighlight a previously located TreeNodeType.  I have added code to loop through all elements in the tree and call set_selected( ABAP_FALSE).  This didn't seem to help.  If I use the mouse and manually click on the root of the tree, it seems deselect previously highlight TreeNodeTypes, and the highlighting works again (but still just going forward).
    I implemented a Find Next feature that starts where the last search left off, and looks farther down the tree.  This works more consistent, but still occassionaly seems to "forget" to unhighlight a previously located TreeNodeType/element.
    What am I doing wrong?
    I am attaching a screen shot.

    Hi Perry,
    Before setting the lead selection of found result, try to clear all the selected elements from context node.
    Sample:
                   data lo_node type ref to if_wd_context_node.
                   lo_node = wd_context->get_child_node ( name = 'MY_NODE' ).
                   "Clear the current selection
                   lo_node->clear_selection( ).
                   " now, set the lead selection
                    lo_node->set_lead_selection( .... )
    Hope this helps you.
    Regards,
    Rama

  • Accessing BAPI through Tree UI Element

    Hi,
    I have one Tree Structure where i have to populate one BAPI and display the data on the browser .I have created two tree node elements and finished the binding  .The  tree is getting diaplayed in the browser.
    But i am facing difficulty in populating data from the BAPI into the tree .
    I tried to search in web dynpro tutorials regarding this but the exmples for tree are not much useful .
    They are populating manually created data and not the data from BAPI .
    Can anybody suggest me how to do this.If anybody can suggest some other tutorials for this then it will be very much useful for me .
    Thanks.

    Hi,
    take a look at this:
    http://help.sap.com/saphelp_nw04/helpdata/en/13/4cde139306304480e89d815ffcf891/content.htm
    here you will find links to create recursive as well as non-recursive tree.
    Though the example is of value node, you can extend that to be done from BAPI node. Simply replace the loop of value node by loop which iterate through the BAPI model class' output node.
    regards

  • Expand/Collapse All functionality in TREE UI Element

    Hi All,
    I'm using Tree UI Element in which Collapse All button is coming defaultly in that Tree Application . But i need to know how the function is taking place behind . Because i need to refer to do it for Expand All scenario for the same tree . Is that collapse is refering to any method in class ? . Can anyone brief out the coding of that . Or if anyone knows the coding of Expand all pls refer to me,

    Hello Ramesh Vinay,
    *Create a node which has attributes (EXPANDED, IS_LEAF,ROW_KEY and PARENT_ROW_KEY) to build a tree.
    Following code will be executed when COLLAPSE ALL button is clicked.
    DATA: lo_nd_tree            TYPE REF TO if_wd_context_node,
               lt_elements           TYPE             wdr_context_element_set.
    FIELD-SYMBOLS:
            <lo_element>          TYPE REF TO if_wd_context_element.
    lo_nd_tree = wd_context->get_child_node( name = wd_this->wdctx_tree).
      lt_elements = lo_nd_tree ->get_elements( ).
      LOOP AT lt_elements ASSIGNING <lo_element>.
        <lo_element>->set_attribute(
          EXPORTING value = abap_false
                    name  = u2018EXAPNDEDu2019 ).
      ENDLOOP.
    Following code will be executed when EXPAND ALL button is clicked.
    DATA: lo_nd_tree            TYPE REF TO if_wd_context_node,
               lt_elements           TYPE             wdr_context_element_set.
    FIELD-SYMBOLS:
            <lo_element>          TYPE REF TO if_wd_context_element.
    lo_nd_tree = wd_context->get_child_node( name = wd_this->wdctx_tree).
      lt_elements = lo_nd_tree ->get_elements( ).
      LOOP AT lt_elements ASSIGNING <lo_element>.
        <lo_element>->set_attribute(
          EXPORTING value = abap_true
                    name  = u2018EXAPNDEDu2019 ).
      ENDLOOP.
    Reply me if you have any questions.
    Thanks,
    Bharath.K

  • Urgent support by two simple requirements

    Hello,
    i need support by two simple requirements.
    Can someone tell me, whether it is possible to realize these in context of SAP XI /SAP Web AS
    Graph showing relationships between Tables, DB Spaces & OS File system?
    (Yes/No)
    Can all jobs and/or scripts be re-run after failure without risk to production data (i.e. stepwise recovery)?
    (Yes/No)
    Thank you very much!
    Regards
    A. Henke

    Hi Axel,
    As far as your first requirement is concerned we can do that in SAP WAS very well with the help of WebDynpro. You need to use Business Graphics for that purpose, see the following link for details,
    /people/sap.user72/blog/2005/03/23/business-graphics-in-webdynpro
    Well for the other one you need to use job scheduling in JAVA with the help of say Quartz or something like that so that you can run timely jobs.
    I hope it helps you.
    Best regards,
    Guru.

  • How to highlight/indicate particular tree Node in Tree UI element

    Hi All
    Can anybody let us know how to highlight/indicate specific node in a tree struture.
    currently i am able to display the tree struture with all the nodes & elements but it is always tasking firstnode as highlighted one or indicated one.
    if i want to highlight specific node in a tree struture...what was the procedure or any sample code then it would be great help to us.
    Thanks
    Trisha rani

    Hi Krishna
    Thanks for your reply
    I displayed the tree structure and i want to highlight specific parent node/child element , what was the sample code??
    for example my tree was displayed in the below struture and at the runtime specific child node i wanted to be highlighted i want to make selectable particular nodeType......
    Can you pls send sample codee code??
    my requirement
    A
    A1
       A2
       A3
    B
    B1      
       B2
       B3
       B4
       B5     
    now i want to make selectable or highlighted B4,B5 etc  or A2,A3 at runtime.
    The other guy who replied for this thread it is working for Parent nodes to make highlighted  like it is working for parent nodes which is have child nodes. i am able to hightlight at runtime for Nodes A,B etc .
    Now i want to highlight or make selected one for B4,A3 etc, pls provide sample code??
    it  would be great help to us
    Thanks
    Trisha Rani

  • Renaming of node in Tree UI Element

    Hi All
    I have populated  the Tree Structure as shown below
    A
    A1
    A2
    A3
    B
    B1
      B11     
      B12
      B13     
    B2
    B3
    C
    C1
    C2
      C21
      C22
      C23          
    C3
    C4
    Can you please let me know How to rename of nodes A,A1,B,B1,B11, and C21??
    my requirement is once i select any node either parent or child node or any node then popup opens where current value of a node can be retrieved and user can enter new name where he/she enters new name then that new name could be renamed to the selected node on click of an action.
    If any body helps for sample code on this requirement  then it would be great help to me.
    Thanks
    Kalki Reddy

    In release >= 7.1 I would do that using a context menu. In earlier releases you could use a static menu at the TreeNodeType or TreeItemType. But I would not open the renaming dialog on selection of a tree node.
    How to do that with a static menu?
    - Add menus to the TreeNodeType/TreeItemType instances of your tree.
    - Create an action "RenameTreeNode" with a parameter "treeNodeContextElement" of type IWDNodeElement.
    - Add MenuActionItem to the menu, assign above action and define event parameter mapping "nodeElement" -> "treeNodeContextElement"
    Then you will know the context element that represents the tree node where the menu is opened in the action handler of the menu item. In the action handler, open a popup window with an input field to enter the new name for the tree node. Use context mapping to pass the inout field value to the view controller that opens the popup. In the close action of the dialog, assign the edited value to the context element representing the tree node.
    Armin

  • Unable to set state to 'required' for RadioButtonGroupByKey UI element

    Hi all,
    I'm using RadioButtonGroupByKey UI element that is bounded to a simple type.
    Simple type looks like this:
    0 -- Sunday
    1 -- Monday
    2 -- ...
    The selectedKey property is bounded to the simple type.
    The state property is set to 'required'
    Although I'm using a radio button I don't want to set default selection.
    I cannot set label for RadioButtonGroupByKey (unlike inputField).
    I'm expecting to see a red asterisk near the radio button but I don't.
    What else do I need to set in order to see the red asterisk?
    I'm using 7.00.14
    Regards,
    Omri

    Hi
    We need to initialise the value before using it In validation case :
    First go through this [thread|How to highlight checkbox group UI element upon validation error.;
    for code sample refer [this|How to highlight checkbox group UI element upon validation error.;
    Best Regards
    Satish Kumar

  • Is There A Way To Create A Simple File/Folder Tree...

    Hi,
    Please forgive me if this has already been covered but I have searched and found no answer...
    I am trying to create a web page to run on my local network, through iweb and apache, and have got everything I need working except this. I aim to be able to access my work files (masses of word documents and power-points) through the website but I can see no obvious way of doing this through iweb (short of adding individual hyperlinks to each file). Is there a tool or process I can use to create a simple folder tree in html that I can add to my site that lists all my files and allows my to "save target as" in windows (our college techie is still devoted to windows) ?
    Thanks in advance for any help...
    KP

    If you wanted to send a video as an mms from a mobile phone, the best option for exporting would be 3G in the quicktime export menu ( File > Export and it's in the drop down list).
    Keep it short and small and you shouldn't have any probs. There are some miserly operators out there who block MMSs bigger than 100K

  • Check box in Tree ui element.

    Hi All
    I am using org.eclipse.swt.widgets.TreeItem for creating tree structure. Now I am trying to incorporate check box for last tree element. For example if I am preparing tree structure for files the check box should appear only for text file not for directory. User would select the file by checking the box. Here is my code..
    for (int i = 0; i < files.length; i++) {
    TreeItem item2 = new TreeItem(item1, 0);
    item2.setText(files.getName());
    item2.setData(files[i]);
    if (!files[i].isDirectory())
    //here i have to do some thing so that i can select the file in check box
    if (files[i].isDirectory()) {
    new TreeItem(item2, 0);
    I cant use java script here. So pls help me out without using js.
    Thanks a lot.
    Sunit

    in oninputprocessing use the following code to read all the form field values
    data: fields type tihttpnvp,
            field  type ihttpnvp.
    call method request->get_form_fields
      changing
        fields = fields.

Maybe you are looking for

  • Optmizing use of function in a query

    select a1.*, test_pkg.test_function(section_id) record_id from ( select project_id, student_id, max(se.section_id) section_id from college c, students s, sections se, zone z where c.college_id in (121, 123, 124) and s.student_id = c.student_id and s.

  • Laserjet 3050 with MacBook Pro

    I saw another support message say that the HP laserjet 3050 is no longer supported on the Mac. Is this true? After a recent Mac update I have been unable to print. The printer dialog just says "Waiting for printer to become available." And it never b

  • No verification e-mail for Icloud

    I can open up the ICloud page on my Windows PC but when I put my Icloud details in, it tells me that I will receive a verification e-mail on what to do next to set up my account. However, it seems as if this mail doesn't get sent to me. I tried numer

  • How do I download pictures from a disk to iPhotos on my MacBook Pro?

    I am working on an album for a friend whom sent me a disk of photos.  How do I download pictures from the disk to my iPhotos so I can then pick and choose which ones to print?  Thanks!  Cyndy

  • Form Captcha Issues - Error message when not filled vs. traditional "Please fill in the following:"

    Just discovered an issue regarding a form using a CAPTCHA. When I formerly submitted other forms on sites with CAPTCHA's in the forms I created, when one did not fill out the form, a pop-up window would appear allerting the customer to "Fill in the f