<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Tree view control in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/tree-view-control/m-p/1773742#M333924</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here is one using classes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Create a screen 9000 with a custom control named TREE. And in PBO add a new module init_9000.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  zkb_tree_example.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_sbook,&lt;/P&gt;&lt;P&gt;        customid TYPE sbook-customid,&lt;/P&gt;&lt;P&gt;        fldate TYPE sbook-fldate,&lt;/P&gt;&lt;P&gt;        bookid TYPE sbook-bookid,&lt;/P&gt;&lt;P&gt;      END OF t_sbook.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: i_sbook TYPE TABLE OF t_sbook,&lt;/P&gt;&lt;P&gt;      w_sbook TYPE t_sbook.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_custid FOR w_sbook-customid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: o_custom_container  TYPE REF TO cl_gui_custom_container,&lt;/P&gt;&lt;P&gt;      o_tree              TYPE REF TO cl_gui_simple_tree.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: t_node_table LIKE TABLE OF trstree.&lt;/P&gt;&lt;P&gt;DATA: i_node TYPE t_node_table,&lt;/P&gt;&lt;P&gt;      w_node TYPE LINE OF t_node_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL SCREEN 9000.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Module  status_9000  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE status_9000 OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SET PF-STATUS '9000'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE.                 " status_9000  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Module  user_command_9000  INPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_9000 INPUT.&lt;/P&gt;&lt;P&gt;  CASE sy-ucomm .&lt;/P&gt;&lt;P&gt;    WHEN 'BACK' OR 'EXIT'.&lt;/P&gt;&lt;P&gt;      SET SCREEN 0.&lt;/P&gt;&lt;P&gt;      LEAVE SCREEN.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE.                 " user_command_9000  INPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Module  init_9000  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE init_9000 OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: lw_sbook TYPE t_sbook.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT customid fldate bookid FROM sbook&lt;/P&gt;&lt;P&gt;         INTO TABLE i_sbook WHERE customid IN s_custid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT i_sbook BY customid ASCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CREATE OBJECT o_custom_container&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            container_name              = 'TREE'&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            cntl_error                  = 1&lt;/P&gt;&lt;P&gt;            cntl_system_error           = 2&lt;/P&gt;&lt;P&gt;            create_error                = 3&lt;/P&gt;&lt;P&gt;            lifetime_error              = 4&lt;/P&gt;&lt;P&gt;            lifetime_dynpro_dynpro_link = 5.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'Error Creating Container' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CREATE OBJECT o_tree&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;           parent                      = o_custom_container&lt;/P&gt;&lt;P&gt;           node_selection_mode         =&lt;/P&gt;&lt;P&gt;                             cl_gui_simple_tree=&amp;gt;node_sel_mode_single&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;           lifetime_error              = 1&lt;/P&gt;&lt;P&gt;           cntl_system_error           = 2&lt;/P&gt;&lt;P&gt;           create_error                = 3&lt;/P&gt;&lt;P&gt;           failed                      = 4&lt;/P&gt;&lt;P&gt;           illegal_node_selection_mode = 5.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'Error Creating Tree' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Add ROOT Folder&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR w_node.&lt;/P&gt;&lt;P&gt;  w_node-node_key  = 'ROOT'.&lt;/P&gt;&lt;P&gt;  w_node-text      = 'Root'.&lt;/P&gt;&lt;P&gt;  w_node-isfolder  = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND w_node TO i_node.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR lw_sbook .&lt;/P&gt;&lt;P&gt;  LOOP AT  i_sbook INTO w_sbook.&lt;/P&gt;&lt;P&gt;    IF lw_sbook-customid NE w_sbook-customid.&lt;/P&gt;&lt;P&gt;      lw_sbook-customid = w_sbook-customid.&lt;/P&gt;&lt;P&gt;      CLEAR w_node.&lt;/P&gt;&lt;P&gt;      w_node-node_key  = w_sbook-customid.&lt;/P&gt;&lt;P&gt;      w_node-text      = w_sbook-customid.&lt;/P&gt;&lt;P&gt;      w_node-relatkey  = 'ROOT'.&lt;/P&gt;&lt;P&gt;      w_node-relatship = cl_gui_simple_tree=&amp;gt;relat_last_child.&lt;/P&gt;&lt;P&gt;      w_node-isfolder  = 'X'.&lt;/P&gt;&lt;P&gt;      APPEND w_node TO i_node.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CLEAR w_node.&lt;/P&gt;&lt;P&gt;    w_node-node_key  = w_sbook-bookid.&lt;/P&gt;&lt;P&gt;    w_node-relatkey  = w_sbook-customid.&lt;/P&gt;&lt;P&gt;    w_node-relatship = cl_gui_simple_tree=&amp;gt;relat_last_child.&lt;/P&gt;&lt;P&gt;    w_node-text      = w_sbook-bookid.&lt;/P&gt;&lt;P&gt;    APPEND w_node TO i_node.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD o_tree-&amp;gt;add_nodes&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      table_structure_name           = 'TRSTREE'&lt;/P&gt;&lt;P&gt;      node_table                     = i_node&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      failed                         = 1&lt;/P&gt;&lt;P&gt;      error_in_node_table            = 2&lt;/P&gt;&lt;P&gt;      dp_error                       = 3&lt;/P&gt;&lt;P&gt;      table_structure_name_not_found = 4&lt;/P&gt;&lt;P&gt;      OTHERS                         = 5.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'Error Adding Node to Tree' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Expand tree&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL METHOD o_tree-&amp;gt;expand_root_nodes&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      level_count    = 2&lt;/P&gt;&lt;P&gt;      expand_subtree = ' '&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      OTHERS         = 1.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'Error Expanding Tree' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE.                 " init_9000  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Kathirvel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 06 Dec 2006 14:37:17 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-12-06T14:37:17Z</dc:date>
    <item>
      <title>Tree view control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/tree-view-control/m-p/1773740#M333922</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all&lt;/P&gt;&lt;P&gt;please help me.I have to display values in tree view form based on the one input value called partner number.using this partner number i have to search a table zrelation and all the dependent relativ numbers on this partner should be displayed under this partner.If these dependent numbers are independent then no problem otherwise i have to display the numbers which or dependent on these relation numbers.Please help me to do this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Giri.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Dec 2006 14:12:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/tree-view-control/m-p/1773740#M333922</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-06T14:12:47Z</dc:date>
    </item>
    <item>
      <title>Re: Tree view control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/tree-view-control/m-p/1773741#M333923</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI ,&lt;/P&gt;&lt;P&gt;You need to use&amp;lt;b&amp;gt; 'RS_TREE_CONSTRUCT'&amp;lt;/b&amp;gt; function moduel ..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;look at the sameple program ..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;*******start of code

REPORT  Ztree_TEST_PGM.

Type-pools : fibs,stree.

data : t_node type snodetext.

data : node_tab like t_node occurs 0 with header line.

clear : node_tab, node_tab[].

node_tab-type = 'T'.
node_tab-name = 'Earth'.
node_tab-tlevel = '01'.
node_tab-nlength = '5'.
node_tab-color = '4'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 3.
append node_tab.
clear node_tab.

node_tab-type = 'P'.
node_tab-name = 'Europe'.
node_tab-tlevel = '02'.
node_tab-nlength = '6'.
node_tab-color = '1'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 4.
append node_tab.
clear node_tab.

node_tab-type = 'P'.
node_tab-name = 'Germany'.
node_tab-tlevel = '03'.
node_tab-nlength = '7'.
node_tab-color = '4'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 4.
append node_tab.
clear node_tab.

node_tab-type = 'P'.
node_tab-name = 'Berlin'.
node_tab-tlevel = '04'.
node_tab-nlength = '6'.
node_tab-color = '4'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 3.
append node_tab.
clear node_tab.

node_tab-type = 'P'.
node_tab-name = 'Asia'.
node_tab-tlevel = '02'.
node_tab-nlength = '4'.
node_tab-color = '1'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 3.
append node_tab.
clear node_tab.

node_tab-type = 'P'.
node_tab-name = 'India'.
node_tab-tlevel = '03-'.
node_tab-nlength = '5'.
node_tab-color = '1'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 3.
append node_tab.
clear node_tab.

node_tab-type = 'P'.
node_tab-name = 'Bombay'.
node_tab-tlevel = '04-'.
node_tab-nlength = '6'.
node_tab-color = '1'.
node_tab-text = 'Hello'.
node_tab-tlength ='5'.
node_tab-tcolor = 3.
append node_tab.
clear node_tab.


CALL FUNCTION 'RS_TREE_CONSTRUCT'
* EXPORTING
*   INSERT_ID                = '000000'
*   RELATIONSHIP             = ' '
*   LOG                      =
  TABLES
    NODETAB                  = node_tab
* EXCEPTIONS
*   TREE_FAILURE             = 1
*   ID_NOT_FOUND             = 2
*   WRONG_RELATIONSHIP       = 3
*   OTHERS                   = 4
          .
IF SY-SUBRC &amp;lt;&amp;gt; 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

  DATA: type_mapping TYPE stree_ctl_type_mapping_tab.
  DATA: wa_type TYPE stree_ctl_type_mapping.
  CLEAR: type_mapping[].

    wa_type-type = 'A'.
    wa_type-icon = '@BL@'.
    APPEND wa_type TO type_mapping.


*CALL FUNCTION 'RS_TREE_CONTROL_PREPARE'
* EXPORTING
**   CONTROL_PATTERN             = STREE_CTL_GENERIC
*    CONTROL_PATTERN             = 'PH'
*
**   HIERARCHY_HEADER            =
**   INITIAL_HEADER_WIDTH        =
**   LIST_ITEM_HEADER            =
*   MULTIPLE_SELECTION          = 'X'
**   ITEM_SELECTION              = STREE_FALSE
**   SUPPRESS_NODE_ICON          = STREE_FALSE
**   SUPPRESS_FOLDER_ICON        = STREE_FALSE
**   CALLBACK_PROGRAM            =
**   CALLBACK_ITEM_DISPLAY       =
**   COLOR_MAPPING               =
*     TYPE_MAPPING                = type_mapping
** IMPORTING
**   SUBSCREEN_PROGRAM           =
**   SUBSCREEN_DYNNR             =
** EXCEPTIONS
**   NOT_AVAILABLE               = 1
**   OTHERS                      = 2
*          .
*IF SY-SUBRC &amp;lt;&amp;gt; 0.
** MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
**         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
*ENDIF.
*

*CALL FUNCTION 'RS_TREE_SET_CURRENT_LAYOUT'
** EXPORTING
**   CURSOR_COLUMN             = 3
**   CURSOR_LINE               = 2
**   FIRST_NODE                = 1
**   FIRST_NODE_TYPE           = ' '
**   LIST_COLUMN               = 1
**   LIST_LINE                 = 1
**   LAYOUT_MODE               = STREE_LAYOUT_NORMAL
** IMPORTING
**   INCONSISTENT_LAYOUT       =
** TABLES
**   LAYOUT                    =
*          .

CALL FUNCTION 'RS_TREE_LIST_DISPLAY'
 EXPORTING
*   CALLBACK_PROGRAM                =
*   CALLBACK_USER_COMMAND           =
*   CALLBACK_TEXT_DISPLAY           =
*   CALLBACK_MOREINFO_DISPLAY       =
*   CALLBACK_COLOR_DISPLAY          =
*   CALLBACK_TOP_OF_PAGE            =
*   CALLBACK_GUI_STATUS             =
*   CALLBACK_CONTEXT_MENU           =
*   STATUS                          = 'IMPLICIT'
*   CHECK_DUPLICATE_NAME            = '1'
*   COLOR_OF_NODE                   = '4'
*   COLOR_OF_MARK                   = '3'
*   COLOR_OF_LINK                   = '1'
*   COLOR_OF_MATCH                  = '5'
*   LOWER_CASE_SENSITIVE            = ' '
*   MODIFICATION_LOG                = ' '
*   NODE_LENGTH                     = 30
*   TEXT_LENGTH                     = 75
*   TEXT_LENGTH1                    = 0
*   TEXT_LENGTH2                    = 0
*   RETURN_MARKED_SUBTREE           = ' '
*   SCREEN_START_COLUMN             = 0
*   SCREEN_START_LINE               = 0
*   SCREEN_END_COLUMN               = 0
*   SCREEN_END_LINE                 = 0
*   SUPPRESS_NODE_OUTPUT            = ' '
*   LAYOUT_MODE                     = ' '
*   USE_CONTROL                     = STREE_USE_LIST
   USE_CONTROL                     = 'L'.
* IMPORTING
*   F15                             =
**********end of program           . &lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;A list of other function modules that can also be used to construct tree reports:&amp;lt;/b&amp;gt; &lt;/P&gt;&lt;P&gt;SEUT,                            Hierarchy framework&lt;/P&gt;&lt;P&gt;RS_TREE_ADD_NODE                 Insert nodes&lt;/P&gt;&lt;P&gt;RS_TREE_AUTOMATIC_REFRESH&lt;/P&gt;&lt;P&gt;RS_TREE_COMPRESS                 Hide subtree(s)&lt;/P&gt;&lt;P&gt;RS_TREE_CONSTRUCT                Construct new hierarchy or insert subtree&lt;/P&gt;&lt;P&gt;RS_TREE_CONTROL_PREPARE&lt;/P&gt;&lt;P&gt;RS_TREE_CREATE                   Create hierarchy&lt;/P&gt;&lt;P&gt;RS_TREE_DELETE_NODE              Delete node with associated sub-tree&lt;/P&gt;&lt;P&gt;RS_TREE_EXPAND                   Expand subtree&lt;/P&gt;&lt;P&gt;RS_TREE_GET_CURRENT_LAYOUT       Get layout information for displayed hierarchy&lt;/P&gt;&lt;P&gt;RS_TREE_GET_CURRENT_NODE         Get node at which cursor is positioned&lt;/P&gt;&lt;P&gt;RS_TREE_GET_CURRENT_ROOT         Get current root node&lt;/P&gt;&lt;P&gt;RS_TREE_GET_CURRENT_TREE         Get structure information for displayed hierarchy&lt;/P&gt;&lt;P&gt;RS_TREE_GET_INPUT                Get entires from input fields&lt;/P&gt;&lt;P&gt;RS_TREE_GET_MARKED_NODES         Get selected nodes&lt;/P&gt;&lt;P&gt;RS_TREE_GET_MODIFICATION_LOG     Get change log for hierarchy&lt;/P&gt;&lt;P&gt;RS_TREE_GET_NODE                 Get nodes for specified ID&lt;/P&gt;&lt;P&gt;RS_TREE_GET_NODE_BY_NAME         Get node for specified node name&lt;/P&gt;&lt;P&gt;RS_TREE_GET_PREDECESSOR          Get preceding node&lt;/P&gt;&lt;P&gt;RS_TREE_GET_SEARCHSTRING         Get last search strinng&lt;/P&gt;&lt;P&gt;RS_TREE_LIST                     Simulate hierarchy or subtree display&lt;/P&gt;&lt;P&gt;RS_TREE_LIST_DISPLAY             Display hierarchy&lt;/P&gt;&lt;P&gt;RS_TREE_LIST_DISPLAY             Display hierarchy&lt;/P&gt;&lt;P&gt;RS_TREE_MODIFY_NODE&lt;/P&gt;&lt;P&gt;RS_TREE_MOVE                     Reassign node with subtree&lt;/P&gt;&lt;P&gt;RS_TREE_POP                      Get hierarchy from the stack and restore&lt;/P&gt;&lt;P&gt;RS_TREE_PUSH                     Place hierarchy on the stack&lt;/P&gt;&lt;P&gt;RS_TREE_RESET_LOCK               Deselect node&lt;/P&gt;&lt;P&gt;RS_TREE_SET_CURRENT_LAYOUT       Set layout with marked cursor position&lt;/P&gt;&lt;P&gt;RS_TREE_SET_CURRENT_TREE         Set other hierarchy&lt;/P&gt;&lt;P&gt;RS_TREE_SET_LOCK                 Select node&lt;/P&gt;&lt;P&gt;RS_TREE_SET_NODE                 Change Nodes&lt;/P&gt;&lt;P&gt;RS_TREE_SET_SCROLL_POS           Position node at the beginning of the page&lt;/P&gt;&lt;P&gt;RS_TREE_SLEEP&lt;/P&gt;&lt;P&gt;RS_TREE_SORT_CHILDREN&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Dec 2006 14:17:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/tree-view-control/m-p/1773741#M333923</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-06T14:17:08Z</dc:date>
    </item>
    <item>
      <title>Re: Tree view control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/tree-view-control/m-p/1773742#M333924</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here is one using classes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Create a screen 9000 with a custom control named TREE. And in PBO add a new module init_9000.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  zkb_tree_example.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_sbook,&lt;/P&gt;&lt;P&gt;        customid TYPE sbook-customid,&lt;/P&gt;&lt;P&gt;        fldate TYPE sbook-fldate,&lt;/P&gt;&lt;P&gt;        bookid TYPE sbook-bookid,&lt;/P&gt;&lt;P&gt;      END OF t_sbook.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: i_sbook TYPE TABLE OF t_sbook,&lt;/P&gt;&lt;P&gt;      w_sbook TYPE t_sbook.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_custid FOR w_sbook-customid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: o_custom_container  TYPE REF TO cl_gui_custom_container,&lt;/P&gt;&lt;P&gt;      o_tree              TYPE REF TO cl_gui_simple_tree.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: t_node_table LIKE TABLE OF trstree.&lt;/P&gt;&lt;P&gt;DATA: i_node TYPE t_node_table,&lt;/P&gt;&lt;P&gt;      w_node TYPE LINE OF t_node_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL SCREEN 9000.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Module  status_9000  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE status_9000 OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SET PF-STATUS '9000'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE.                 " status_9000  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Module  user_command_9000  INPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_9000 INPUT.&lt;/P&gt;&lt;P&gt;  CASE sy-ucomm .&lt;/P&gt;&lt;P&gt;    WHEN 'BACK' OR 'EXIT'.&lt;/P&gt;&lt;P&gt;      SET SCREEN 0.&lt;/P&gt;&lt;P&gt;      LEAVE SCREEN.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE.                 " user_command_9000  INPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Module  init_9000  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE init_9000 OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: lw_sbook TYPE t_sbook.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT customid fldate bookid FROM sbook&lt;/P&gt;&lt;P&gt;         INTO TABLE i_sbook WHERE customid IN s_custid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT i_sbook BY customid ASCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CREATE OBJECT o_custom_container&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            container_name              = 'TREE'&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            cntl_error                  = 1&lt;/P&gt;&lt;P&gt;            cntl_system_error           = 2&lt;/P&gt;&lt;P&gt;            create_error                = 3&lt;/P&gt;&lt;P&gt;            lifetime_error              = 4&lt;/P&gt;&lt;P&gt;            lifetime_dynpro_dynpro_link = 5.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'Error Creating Container' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CREATE OBJECT o_tree&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;           parent                      = o_custom_container&lt;/P&gt;&lt;P&gt;           node_selection_mode         =&lt;/P&gt;&lt;P&gt;                             cl_gui_simple_tree=&amp;gt;node_sel_mode_single&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;           lifetime_error              = 1&lt;/P&gt;&lt;P&gt;           cntl_system_error           = 2&lt;/P&gt;&lt;P&gt;           create_error                = 3&lt;/P&gt;&lt;P&gt;           failed                      = 4&lt;/P&gt;&lt;P&gt;           illegal_node_selection_mode = 5.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'Error Creating Tree' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Add ROOT Folder&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR w_node.&lt;/P&gt;&lt;P&gt;  w_node-node_key  = 'ROOT'.&lt;/P&gt;&lt;P&gt;  w_node-text      = 'Root'.&lt;/P&gt;&lt;P&gt;  w_node-isfolder  = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND w_node TO i_node.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR lw_sbook .&lt;/P&gt;&lt;P&gt;  LOOP AT  i_sbook INTO w_sbook.&lt;/P&gt;&lt;P&gt;    IF lw_sbook-customid NE w_sbook-customid.&lt;/P&gt;&lt;P&gt;      lw_sbook-customid = w_sbook-customid.&lt;/P&gt;&lt;P&gt;      CLEAR w_node.&lt;/P&gt;&lt;P&gt;      w_node-node_key  = w_sbook-customid.&lt;/P&gt;&lt;P&gt;      w_node-text      = w_sbook-customid.&lt;/P&gt;&lt;P&gt;      w_node-relatkey  = 'ROOT'.&lt;/P&gt;&lt;P&gt;      w_node-relatship = cl_gui_simple_tree=&amp;gt;relat_last_child.&lt;/P&gt;&lt;P&gt;      w_node-isfolder  = 'X'.&lt;/P&gt;&lt;P&gt;      APPEND w_node TO i_node.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CLEAR w_node.&lt;/P&gt;&lt;P&gt;    w_node-node_key  = w_sbook-bookid.&lt;/P&gt;&lt;P&gt;    w_node-relatkey  = w_sbook-customid.&lt;/P&gt;&lt;P&gt;    w_node-relatship = cl_gui_simple_tree=&amp;gt;relat_last_child.&lt;/P&gt;&lt;P&gt;    w_node-text      = w_sbook-bookid.&lt;/P&gt;&lt;P&gt;    APPEND w_node TO i_node.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD o_tree-&amp;gt;add_nodes&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      table_structure_name           = 'TRSTREE'&lt;/P&gt;&lt;P&gt;      node_table                     = i_node&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      failed                         = 1&lt;/P&gt;&lt;P&gt;      error_in_node_table            = 2&lt;/P&gt;&lt;P&gt;      dp_error                       = 3&lt;/P&gt;&lt;P&gt;      table_structure_name_not_found = 4&lt;/P&gt;&lt;P&gt;      OTHERS                         = 5.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'Error Adding Node to Tree' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Expand tree&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL METHOD o_tree-&amp;gt;expand_root_nodes&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      level_count    = 2&lt;/P&gt;&lt;P&gt;      expand_subtree = ' '&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      OTHERS         = 1.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'Error Expanding Tree' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE.                 " init_9000  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Kathirvel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Dec 2006 14:37:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/tree-view-control/m-p/1773742#M333924</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-06T14:37:17Z</dc:date>
    </item>
  </channel>
</rss>

