<?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: ALV COLUMN TREE in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235675#M772093</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Sarvesh,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have displayed my ALV Tree using OOPS &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PFB The code Proceed step by step , Firstly pull all your data in one internal table &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form alv_hierarchy_display .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try.&lt;/P&gt;&lt;P&gt;cl_salv_tree=&amp;gt;factory(&lt;/P&gt;&lt;P&gt;importing&lt;/P&gt;&lt;P&gt;r_salv_tree = ob_tree&lt;/P&gt;&lt;P&gt;changing&lt;/P&gt;&lt;P&gt;t_table = pass ur internal table ).&lt;/P&gt;&lt;P&gt;catch cx_salv_error.&lt;/P&gt;&lt;P&gt;message e003.&lt;/P&gt;&lt;P&gt;endtry.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Build the Tree structure for display in Hierarchial List. &lt;/P&gt;&lt;P&gt;perform supply_data using( pass ur internal table ).&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;include own functions by setting own status &lt;/P&gt;&lt;P&gt;ob_tree-&amp;gt;set_screen_status(&lt;/P&gt;&lt;P&gt;pfstatus = '100'&lt;/P&gt;&lt;P&gt;report = sy-repid&lt;/P&gt;&lt;P&gt;set_functions = ob_tree-&amp;gt;c_functions_all ).&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;set the columns technical &lt;/P&gt;&lt;P&gt;ob_columns = ob_tree-&amp;gt;get_columns( ).&lt;/P&gt;&lt;P&gt;ob_columns-&amp;gt;set_optimize( abap_true ).&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Setting the Columns Technical and Using in ALV Columns &lt;/P&gt;&lt;P&gt;perform set_columns_technical using ob_columns.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;display the table &lt;/P&gt;&lt;P&gt;ob_tree-&amp;gt;display( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " alv_hierarchy_display&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form supply_data&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;P_IT_FT_LIST text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form supply_data using p_it_ft_list type standard table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT p_itab_empdetails by oprtuntdesc deptuntdesc orgunit. &lt;/P&gt;&lt;P&gt;loop at p_it_ft_list into wa_ft_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;on change of wa_ft_list-oprtunit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform add_optunit_line using wa_ft_list&lt;/P&gt;&lt;P&gt;''&lt;/P&gt;&lt;P&gt;changing v_optunit_key.&lt;/P&gt;&lt;P&gt;endon.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;on change of wa_ft_list-deptunit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform add_deptunit_line using wa_ft_list&lt;/P&gt;&lt;P&gt;v_optunit_key&lt;/P&gt;&lt;P&gt;changing v_deptunit_key.&lt;/P&gt;&lt;P&gt;endon.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;on change of wa_ft_list-orgeh.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform add_orgeh_line using wa_ft_list&lt;/P&gt;&lt;P&gt;v_deptunit_key&lt;/P&gt;&lt;P&gt;changing v_orgunit.&lt;/P&gt;&lt;P&gt;endon.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform add_last_line using wa_ft_list&lt;/P&gt;&lt;P&gt;v_orgunit&lt;/P&gt;&lt;P&gt;changing v_last_key.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " supply_data&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form add_optunit_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;P_WA_FT_LIST text &lt;/P&gt;&lt;P&gt;--&amp;gt;P_1165 text &lt;/P&gt;&lt;P&gt;&amp;lt;--P_V_OPTUNIT_KEY text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form add_optunit_line using p_wa_ft_list type ty_ft_list&lt;/P&gt;&lt;P&gt;p_key type lvc_nkey&lt;/P&gt;&lt;P&gt;changing p_l_optunit_key type lvc_nkey.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : wa_ft_list1 type ty_ft_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;working with nodes &lt;/P&gt;&lt;P&gt;ob_nodes = ob_tree-&amp;gt;get_nodes( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Moving the Emp Details of the Operating Unit Desc to the WorkArea &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-oprtunit to wa_ft_list1-oprtunit.&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-oprtuntdesc to wa_ft_list1-oprtuntdesc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;add a new node &lt;/P&gt;&lt;P&gt;set the data for the nes node &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_node = ob_nodes-&amp;gt;add_node( related_node = p_key&lt;/P&gt;&lt;P&gt;data_row = wa_ft_list1&lt;/P&gt;&lt;P&gt;relationship =&lt;/P&gt;&lt;P&gt;cl_gui_column_tree=&amp;gt;relat_last_child ).&lt;/P&gt;&lt;P&gt;ob_node-&amp;gt;set_text( text-018 ).&lt;/P&gt;&lt;P&gt;p_l_optunit_key = ob_node-&amp;gt;get_key( ).&lt;/P&gt;&lt;P&gt;catch cx_salv_msg.&lt;/P&gt;&lt;P&gt;message e003.&lt;/P&gt;&lt;P&gt;endtry.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " add_optunit_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form add_deptunit_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;P_WA_FT_LIST text &lt;/P&gt;&lt;P&gt;--&amp;gt;P_V_OPTUNIT_KEY text &lt;/P&gt;&lt;P&gt;&amp;lt;--P_V_DEPTUNIT_KEY text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form add_deptunit_line using p_wa_ft_list type ty_ft_list&lt;/P&gt;&lt;P&gt;p_l_orgeh type lvc_nkey&lt;/P&gt;&lt;P&gt;changing p_l_deptunit_key type lvc_nkey.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : wa_ft_list2 type ty_ft_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;working with nodes &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_nodes = ob_tree-&amp;gt;get_nodes( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Moving the Emp Details of the Dept Unit Desc to the WorkArea &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-deptunit to wa_ft_list2-deptunit.&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-deptuntdesc to wa_ft_list2-deptuntdesc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try.&lt;/P&gt;&lt;P&gt;ob_node = ob_nodes-&amp;gt;add_node( related_node = p_l_orgeh&lt;/P&gt;&lt;P&gt;data_row = wa_ft_list2&lt;/P&gt;&lt;P&gt;relationship =&lt;/P&gt;&lt;P&gt;cl_gui_column_tree=&amp;gt;relat_last_child ).&lt;/P&gt;&lt;P&gt;ob_node-&amp;gt;set_text( text-005 ).&lt;/P&gt;&lt;P&gt;p_l_deptunit_key = ob_node-&amp;gt;get_key( ).&lt;/P&gt;&lt;P&gt;catch cx_salv_msg.&lt;/P&gt;&lt;P&gt;message e003.&lt;/P&gt;&lt;P&gt;endtry.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " add_deptunit_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form add_orgeh_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;P_WA_FT_LIST text &lt;/P&gt;&lt;P&gt;--&amp;gt;P_V_DEPTUNIT_KEY text &lt;/P&gt;&lt;P&gt;&amp;lt;--P_V_ORGUNIT text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form add_orgeh_line using p_wa_ft_list type ty_ft_list&lt;/P&gt;&lt;P&gt;p_key type lvc_nkey&lt;/P&gt;&lt;P&gt;changing p_l_orgeh type lvc_nkey.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : wa_ft_list3 type ty_ft_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;working with nodes &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_nodes = ob_tree-&amp;gt;get_nodes( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Moving the Work Area Details to Local WorkArea3 &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-orgeh to wa_ft_list3-orgeh.&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-orgindeptdesc to wa_ft_list3-orgindeptdesc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;add a new node &lt;/P&gt;&lt;P&gt;set the data for the nes node &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_node = ob_nodes-&amp;gt;add_node( related_node = p_key&lt;/P&gt;&lt;P&gt;data_row = wa_ft_list3&lt;/P&gt;&lt;P&gt;relationship =&lt;/P&gt;&lt;P&gt;cl_gui_column_tree=&amp;gt;relat_last_child ).&lt;/P&gt;&lt;P&gt;ob_node-&amp;gt;set_text( text-004 ).&lt;/P&gt;&lt;P&gt;p_l_orgeh = ob_node-&amp;gt;get_key( ).&lt;/P&gt;&lt;P&gt;catch cx_salv_msg.&lt;/P&gt;&lt;P&gt;message e003.&lt;/P&gt;&lt;P&gt;endtry.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " add_orgeh_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form add_last_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;P_WA_FT_LIST text &lt;/P&gt;&lt;P&gt;--&amp;gt;P_V_ORGUNIT text &lt;/P&gt;&lt;P&gt;&amp;lt;--P_V_LAST_KEY text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form add_last_line using value(p_wa_ft_list) type ty_ft_list&lt;/P&gt;&lt;P&gt;value(p_l_optunit_key) type lvc_nkey&lt;/P&gt;&lt;P&gt;changing p_l_last_key type lvc_nkey.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;working with nodes &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_nodes = ob_tree-&amp;gt;get_nodes( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear: p_wa_ft_list-orgeh, " Clearing WorkArea&lt;/P&gt;&lt;P&gt;p_wa_ft_list-orgindeptdesc,&lt;/P&gt;&lt;P&gt;p_wa_ft_list-deptuntdesc,&lt;/P&gt;&lt;P&gt;p_wa_ft_list-oprtuntdesc,&lt;/P&gt;&lt;P&gt;p_wa_ft_list-deptunit,&lt;/P&gt;&lt;P&gt;p_wa_ft_list-oprtunit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try.&lt;/P&gt;&lt;P&gt;ob_node = ob_nodes-&amp;gt;add_node( related_node = p_l_optunit_key&lt;/P&gt;&lt;P&gt;data_row = p_wa_ft_list&lt;/P&gt;&lt;P&gt;relationship =&lt;/P&gt;&lt;P&gt;cl_gui_column_tree=&amp;gt;relat_last_child&lt;/P&gt;&lt;P&gt;).&lt;/P&gt;&lt;P&gt;p_l_last_key = ob_node-&amp;gt;get_key( ).&lt;/P&gt;&lt;P&gt;catch cx_salv_msg.&lt;/P&gt;&lt;P&gt;message e003.&lt;/P&gt;&lt;P&gt;endtry.&lt;/P&gt;&lt;P&gt;endform. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;kindly reward if found helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cheers,&lt;/P&gt;&lt;P&gt;Hema.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 11 Jan 2008 03:18:53 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-01-11T03:18:53Z</dc:date>
    <item>
      <title>ALV COLUMN TREE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235673#M772091</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi , can anyone please help me with ALV Column Tree Design . I have my data in a table GT_ZVBAP , now i want to display this as an ALV Column Tree with a field say 'ITEM' (parent) . I have seen standard programs and all but am not able to comprehend them fully and customize them to my program , please help me .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Jan 2008 12:22:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235673#M772091</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-10T12:22:06Z</dc:date>
    </item>
    <item>
      <title>Re: ALV COLUMN TREE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235674#M772092</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Check the below Forum some example programs are there&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="4441980"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="4393172"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="4685813"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kanagaraja L&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Jan 2008 12:29:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235674#M772092</guid>
      <dc:creator>Kanagaraja_L</dc:creator>
      <dc:date>2008-01-10T12:29:03Z</dc:date>
    </item>
    <item>
      <title>Re: ALV COLUMN TREE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235675#M772093</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Sarvesh,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have displayed my ALV Tree using OOPS &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PFB The code Proceed step by step , Firstly pull all your data in one internal table &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form alv_hierarchy_display .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try.&lt;/P&gt;&lt;P&gt;cl_salv_tree=&amp;gt;factory(&lt;/P&gt;&lt;P&gt;importing&lt;/P&gt;&lt;P&gt;r_salv_tree = ob_tree&lt;/P&gt;&lt;P&gt;changing&lt;/P&gt;&lt;P&gt;t_table = pass ur internal table ).&lt;/P&gt;&lt;P&gt;catch cx_salv_error.&lt;/P&gt;&lt;P&gt;message e003.&lt;/P&gt;&lt;P&gt;endtry.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Build the Tree structure for display in Hierarchial List. &lt;/P&gt;&lt;P&gt;perform supply_data using( pass ur internal table ).&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;include own functions by setting own status &lt;/P&gt;&lt;P&gt;ob_tree-&amp;gt;set_screen_status(&lt;/P&gt;&lt;P&gt;pfstatus = '100'&lt;/P&gt;&lt;P&gt;report = sy-repid&lt;/P&gt;&lt;P&gt;set_functions = ob_tree-&amp;gt;c_functions_all ).&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;set the columns technical &lt;/P&gt;&lt;P&gt;ob_columns = ob_tree-&amp;gt;get_columns( ).&lt;/P&gt;&lt;P&gt;ob_columns-&amp;gt;set_optimize( abap_true ).&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Setting the Columns Technical and Using in ALV Columns &lt;/P&gt;&lt;P&gt;perform set_columns_technical using ob_columns.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;display the table &lt;/P&gt;&lt;P&gt;ob_tree-&amp;gt;display( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " alv_hierarchy_display&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form supply_data&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;P_IT_FT_LIST text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form supply_data using p_it_ft_list type standard table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT p_itab_empdetails by oprtuntdesc deptuntdesc orgunit. &lt;/P&gt;&lt;P&gt;loop at p_it_ft_list into wa_ft_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;on change of wa_ft_list-oprtunit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform add_optunit_line using wa_ft_list&lt;/P&gt;&lt;P&gt;''&lt;/P&gt;&lt;P&gt;changing v_optunit_key.&lt;/P&gt;&lt;P&gt;endon.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;on change of wa_ft_list-deptunit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform add_deptunit_line using wa_ft_list&lt;/P&gt;&lt;P&gt;v_optunit_key&lt;/P&gt;&lt;P&gt;changing v_deptunit_key.&lt;/P&gt;&lt;P&gt;endon.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;on change of wa_ft_list-orgeh.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform add_orgeh_line using wa_ft_list&lt;/P&gt;&lt;P&gt;v_deptunit_key&lt;/P&gt;&lt;P&gt;changing v_orgunit.&lt;/P&gt;&lt;P&gt;endon.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform add_last_line using wa_ft_list&lt;/P&gt;&lt;P&gt;v_orgunit&lt;/P&gt;&lt;P&gt;changing v_last_key.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " supply_data&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form add_optunit_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;P_WA_FT_LIST text &lt;/P&gt;&lt;P&gt;--&amp;gt;P_1165 text &lt;/P&gt;&lt;P&gt;&amp;lt;--P_V_OPTUNIT_KEY text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form add_optunit_line using p_wa_ft_list type ty_ft_list&lt;/P&gt;&lt;P&gt;p_key type lvc_nkey&lt;/P&gt;&lt;P&gt;changing p_l_optunit_key type lvc_nkey.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : wa_ft_list1 type ty_ft_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;working with nodes &lt;/P&gt;&lt;P&gt;ob_nodes = ob_tree-&amp;gt;get_nodes( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Moving the Emp Details of the Operating Unit Desc to the WorkArea &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-oprtunit to wa_ft_list1-oprtunit.&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-oprtuntdesc to wa_ft_list1-oprtuntdesc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;add a new node &lt;/P&gt;&lt;P&gt;set the data for the nes node &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_node = ob_nodes-&amp;gt;add_node( related_node = p_key&lt;/P&gt;&lt;P&gt;data_row = wa_ft_list1&lt;/P&gt;&lt;P&gt;relationship =&lt;/P&gt;&lt;P&gt;cl_gui_column_tree=&amp;gt;relat_last_child ).&lt;/P&gt;&lt;P&gt;ob_node-&amp;gt;set_text( text-018 ).&lt;/P&gt;&lt;P&gt;p_l_optunit_key = ob_node-&amp;gt;get_key( ).&lt;/P&gt;&lt;P&gt;catch cx_salv_msg.&lt;/P&gt;&lt;P&gt;message e003.&lt;/P&gt;&lt;P&gt;endtry.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " add_optunit_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form add_deptunit_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;P_WA_FT_LIST text &lt;/P&gt;&lt;P&gt;--&amp;gt;P_V_OPTUNIT_KEY text &lt;/P&gt;&lt;P&gt;&amp;lt;--P_V_DEPTUNIT_KEY text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form add_deptunit_line using p_wa_ft_list type ty_ft_list&lt;/P&gt;&lt;P&gt;p_l_orgeh type lvc_nkey&lt;/P&gt;&lt;P&gt;changing p_l_deptunit_key type lvc_nkey.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : wa_ft_list2 type ty_ft_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;working with nodes &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_nodes = ob_tree-&amp;gt;get_nodes( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Moving the Emp Details of the Dept Unit Desc to the WorkArea &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-deptunit to wa_ft_list2-deptunit.&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-deptuntdesc to wa_ft_list2-deptuntdesc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try.&lt;/P&gt;&lt;P&gt;ob_node = ob_nodes-&amp;gt;add_node( related_node = p_l_orgeh&lt;/P&gt;&lt;P&gt;data_row = wa_ft_list2&lt;/P&gt;&lt;P&gt;relationship =&lt;/P&gt;&lt;P&gt;cl_gui_column_tree=&amp;gt;relat_last_child ).&lt;/P&gt;&lt;P&gt;ob_node-&amp;gt;set_text( text-005 ).&lt;/P&gt;&lt;P&gt;p_l_deptunit_key = ob_node-&amp;gt;get_key( ).&lt;/P&gt;&lt;P&gt;catch cx_salv_msg.&lt;/P&gt;&lt;P&gt;message e003.&lt;/P&gt;&lt;P&gt;endtry.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " add_deptunit_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form add_orgeh_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;P_WA_FT_LIST text &lt;/P&gt;&lt;P&gt;--&amp;gt;P_V_DEPTUNIT_KEY text &lt;/P&gt;&lt;P&gt;&amp;lt;--P_V_ORGUNIT text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form add_orgeh_line using p_wa_ft_list type ty_ft_list&lt;/P&gt;&lt;P&gt;p_key type lvc_nkey&lt;/P&gt;&lt;P&gt;changing p_l_orgeh type lvc_nkey.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : wa_ft_list3 type ty_ft_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;working with nodes &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_nodes = ob_tree-&amp;gt;get_nodes( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Moving the Work Area Details to Local WorkArea3 &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-orgeh to wa_ft_list3-orgeh.&lt;/P&gt;&lt;P&gt;move p_wa_ft_list-orgindeptdesc to wa_ft_list3-orgindeptdesc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;add a new node &lt;/P&gt;&lt;P&gt;set the data for the nes node &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_node = ob_nodes-&amp;gt;add_node( related_node = p_key&lt;/P&gt;&lt;P&gt;data_row = wa_ft_list3&lt;/P&gt;&lt;P&gt;relationship =&lt;/P&gt;&lt;P&gt;cl_gui_column_tree=&amp;gt;relat_last_child ).&lt;/P&gt;&lt;P&gt;ob_node-&amp;gt;set_text( text-004 ).&lt;/P&gt;&lt;P&gt;p_l_orgeh = ob_node-&amp;gt;get_key( ).&lt;/P&gt;&lt;P&gt;catch cx_salv_msg.&lt;/P&gt;&lt;P&gt;message e003.&lt;/P&gt;&lt;P&gt;endtry.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " add_orgeh_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form add_last_line&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;P_WA_FT_LIST text &lt;/P&gt;&lt;P&gt;--&amp;gt;P_V_ORGUNIT text &lt;/P&gt;&lt;P&gt;&amp;lt;--P_V_LAST_KEY text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form add_last_line using value(p_wa_ft_list) type ty_ft_list&lt;/P&gt;&lt;P&gt;value(p_l_optunit_key) type lvc_nkey&lt;/P&gt;&lt;P&gt;changing p_l_last_key type lvc_nkey.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;working with nodes &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_nodes = ob_tree-&amp;gt;get_nodes( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear: p_wa_ft_list-orgeh, " Clearing WorkArea&lt;/P&gt;&lt;P&gt;p_wa_ft_list-orgindeptdesc,&lt;/P&gt;&lt;P&gt;p_wa_ft_list-deptuntdesc,&lt;/P&gt;&lt;P&gt;p_wa_ft_list-oprtuntdesc,&lt;/P&gt;&lt;P&gt;p_wa_ft_list-deptunit,&lt;/P&gt;&lt;P&gt;p_wa_ft_list-oprtunit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try.&lt;/P&gt;&lt;P&gt;ob_node = ob_nodes-&amp;gt;add_node( related_node = p_l_optunit_key&lt;/P&gt;&lt;P&gt;data_row = p_wa_ft_list&lt;/P&gt;&lt;P&gt;relationship =&lt;/P&gt;&lt;P&gt;cl_gui_column_tree=&amp;gt;relat_last_child&lt;/P&gt;&lt;P&gt;).&lt;/P&gt;&lt;P&gt;p_l_last_key = ob_node-&amp;gt;get_key( ).&lt;/P&gt;&lt;P&gt;catch cx_salv_msg.&lt;/P&gt;&lt;P&gt;message e003.&lt;/P&gt;&lt;P&gt;endtry.&lt;/P&gt;&lt;P&gt;endform. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;kindly reward if found helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cheers,&lt;/P&gt;&lt;P&gt;Hema.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Jan 2008 03:18:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235675#M772093</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-11T03:18:53Z</dc:date>
    </item>
    <item>
      <title>Re: ALV COLUMN TREE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235676#M772094</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Sarvesh u can also  do like this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First write a program and then convert the program into alv tree column.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To convert your program into an alv tree take a look to BCALV_TREE_DEMO program.&lt;/P&gt;&lt;P&gt;In the form create_hierarchy insert the code that you have in the start-of-selection event and then register the event EXPAND_NO_CHILDREN. in the implement this method with the code that you have in the AT Line-Selection EVENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cheers,&lt;/P&gt;&lt;P&gt;Hema.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Jan 2008 03:21:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235676#M772094</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-11T03:21:08Z</dc:date>
    </item>
    <item>
      <title>Re: ALV COLUMN TREE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235677#M772095</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The above mentioned program is good.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also you may use thr SAP demo program for ALV Column tree&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;SAPSIMPLE_TREE_CONTROL_DEMO&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This will help you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Renjith Michael.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Jan 2008 06:22:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-column-tree/m-p/3235677#M772095</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-11T06:22:44Z</dc:date>
    </item>
  </channel>
</rss>

