<?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 ALV tree code help-urgent in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-tree-code-help-urgent/m-p/3223851#M768883</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;can any one help me to include the following code in the program BCALV_TREE_SIMPLE_DEMO???&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  Z_MANFIELD.&lt;/P&gt;&lt;P&gt;DATA: d_screen TYPE REF TO cl_dynpro_info.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for field list of screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: ftab TYPE TABLE OF d021s,&lt;/P&gt;&lt;P&gt;wa_ftab TYPE d021s,&lt;/P&gt;&lt;P&gt;pltab TYPE TABLE OF d022s.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;name of modulpool&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: mpool TYPE repid,&lt;/P&gt;&lt;P&gt;      mpool2 type repid.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for screen attributes of field&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: es_screen TYPE screen.&lt;/P&gt;&lt;P&gt;DATA: back TYPE t588m-varky.&lt;/P&gt;&lt;P&gt;DATA: status.&lt;/P&gt;&lt;P&gt;DATA: pos TYPE i.&lt;/P&gt;&lt;P&gt;DATA: p_infty TYPE infty.&lt;/P&gt;&lt;P&gt;DATA: dynnr type dynnr value '2000'.&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;scf&amp;gt;.&lt;/P&gt;&lt;P&gt;TABLES: t588m, pme04,t588d.&lt;/P&gt;&lt;P&gt;constants: calc_molga type molga value '07'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for collection of mandatory fields&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF mf_tab OCCURS 0,&lt;/P&gt;&lt;P&gt;fnam TYPE d021s-fnam,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;added for distinction of default and T588M&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;group TYPE char4,&lt;/P&gt;&lt;P&gt;END OF mf_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF wa,&lt;/P&gt;&lt;P&gt;         infty TYPE infty,&lt;/P&gt;&lt;P&gt;       END OF wa.&lt;/P&gt;&lt;P&gt;DATA itab LIKE wa OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 1(12) text-001.&lt;/P&gt;&lt;P&gt;PARAMETER action TYPE t588d-itygr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for field attributes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT infty INTO CORRESPONDING FIELDS OF TABLE itab FROM t588d WHERE itygr = action.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    WRITE : / 'INFOTYPES FOR THIS ACTION TYPE ARE : '.&lt;/P&gt;&lt;P&gt;    SORT itab BY infty.&lt;/P&gt;&lt;P&gt;    DELETE ADJACENT DUPLICATES FROM itab COMPARING infty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT itab.&lt;/P&gt;&lt;P&gt;      WRITE : / itab-infty  HOTSPOT COLOR 6 INVERSE ON.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    WRITE /.&lt;/P&gt;&lt;P&gt;    WRITE : / ' CLICK AN INFOTYPE FOR GETTING ITS MANDATORY FIELDS'.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    WRITE : / 'SORRY,NO INFOTYPE FOR THIS ACTION TYPE'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT LINE-SELECTION.&lt;/P&gt;&lt;P&gt;  MOVE sy-lisel(6) TO p_infty.&lt;/P&gt;&lt;P&gt;  WRITE: / 'INFOTYPE - '.&lt;/P&gt;&lt;P&gt;  WRITE : p_infty.&lt;/P&gt;&lt;P&gt;  WRITE : /'MANDATORY FIELDS ARE :'.&lt;/P&gt;&lt;P&gt;  WRITE : / .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;build modulpool-name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CREATE OBJECT d_screen.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'MP' p_infty '00' INTO mpool2.&lt;/P&gt;&lt;P&gt;  CONCATENATE mpool2 '_CE' into mpool.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;maybe, you have to determin the screen-no first&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; perform determin_scrno CHANGING dynnr.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT SINGLE * FROM t588m WHERE repna = mpool&lt;/P&gt;&lt;P&gt;  AND dynnr = dynnr&lt;/P&gt;&lt;P&gt;  AND varky = calc_molga.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0. "not found -&amp;gt; switch to default MOLGA&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * FROM t588m WHERE repna LIKE mpool&lt;/P&gt;&lt;P&gt;                    AND dynnr = dynnr&lt;/P&gt;&lt;P&gt;                    AND varky = space.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0. "still not there -&amp;gt; fall back to dflt modulpool with MOLGA&lt;/P&gt;&lt;P&gt;       mpool = mpool2.&lt;/P&gt;&lt;P&gt;       SELECT SINGLE * FROM t588m WHERE repna = mpool&lt;/P&gt;&lt;P&gt;                      AND dynnr = dynnr&lt;/P&gt;&lt;P&gt;                      AND varky = calc_molga.&lt;/P&gt;&lt;P&gt;      IF sy-subrc ne 0. "Last try -&amp;gt; dflt modulpool + empty MOLGA&lt;/P&gt;&lt;P&gt;        SELECT SINGLE * FROM t588m WHERE repna LIKE mpool&lt;/P&gt;&lt;P&gt;                        AND dynnr = dynnr&lt;/P&gt;&lt;P&gt;                        AND varky = space.&lt;/P&gt;&lt;P&gt;        IF sy-subrc ne 0. "obviously, there isn't ana entry at all&lt;/P&gt;&lt;P&gt;          clear t588m.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&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;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;only to ensure that these fields are filled&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF t588m IS INITIAL.&lt;/P&gt;&lt;P&gt;    t588m-repna = mpool.&lt;/P&gt;&lt;P&gt;    t588m-dynnr = dynnr.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get fieldlist for screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'RS_IMPORT_DYNPRO'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    dylang = sy-langu&lt;/P&gt;&lt;P&gt;    dyname = t588m-repna&lt;/P&gt;&lt;P&gt;    dynumb = t588m-dynnr&lt;/P&gt;&lt;P&gt;    request = ' '&lt;/P&gt;&lt;P&gt;    suppress_checks = ' '&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  HEADER =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    ftab = ftab&lt;/P&gt;&lt;P&gt;    pltab = pltab&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    button_error = 1&lt;/P&gt;&lt;P&gt;    dylanguage_invalid = 2&lt;/P&gt;&lt;P&gt;    dylanguage_not_inst = 3&lt;/P&gt;&lt;P&gt;    dyname_invalid = 4&lt;/P&gt;&lt;P&gt;    dynproload_not_found = 5&lt;/P&gt;&lt;P&gt;    dynpro_old = 6&lt;/P&gt;&lt;P&gt;    dynumb_invalid = 7&lt;/P&gt;&lt;P&gt;    ftab_invalid = 8&lt;/P&gt;&lt;P&gt;    gen_error = 9&lt;/P&gt;&lt;P&gt;    gen_ok = 10&lt;/P&gt;&lt;P&gt;    header_invalid = 11&lt;/P&gt;&lt;P&gt;    internal_error = 12&lt;/P&gt;&lt;P&gt;    no_dynpro = 13&lt;/P&gt;&lt;P&gt;    no_ftab_row = 14&lt;/P&gt;&lt;P&gt;    no_memory = 15&lt;/P&gt;&lt;P&gt;    no_processlogic = 16&lt;/P&gt;&lt;P&gt;    pltab_invalid = 17&lt;/P&gt;&lt;P&gt;    request_invalid = 18&lt;/P&gt;&lt;P&gt;    OTHERS = 19&lt;/P&gt;&lt;P&gt;  .&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;error handling&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get rid of comments, frames and the like&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DELETE ftab WHERE aglt IS INITIAL.&lt;/P&gt;&lt;P&gt;  LOOP AT ftab INTO wa_ftab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Screen-Grp3 is the key to T588M-DBILD&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF wa_ftab-grp3 NE space.&lt;/P&gt;&lt;P&gt;      pos = wa_ftab-grp3 - 1.&lt;/P&gt;&lt;P&gt;      ASSIGN t588m-dbild+pos(1) TO  &amp;lt;scf&amp;gt;.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;mandatory fields are marked '+'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF &amp;lt;scf&amp;gt; EQ '+'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MOVE wa_ftab-fnam TO mf_tab-fnam.&lt;/P&gt;&lt;P&gt;        MOVE wa_ftab-grp3 TO mf_tab-group.&lt;/P&gt;&lt;P&gt;        APPEND mf_tab.&lt;/P&gt;&lt;P&gt;        CONTINUE.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;maybe the field is mandatory by default&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CALL METHOD d_screen-&amp;gt;get_screen_field_attr&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        iv_repid                    = t588m-repna&lt;/P&gt;&lt;P&gt;        iv_dynnr                    = t588m-dynnr&lt;/P&gt;&lt;P&gt;        iv_field                    = wa_ftab-fnam&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        es_screen                   = es_screen&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        exc_insufficient_parameters = 1&lt;/P&gt;&lt;P&gt;        exc_no_attributes           = 2&lt;/P&gt;&lt;P&gt;        OTHERS                      = 3.&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;error handling&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF es_screen-required NE space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MOVE wa_ftab-fnam TO mf_tab-fnam.&lt;/P&gt;&lt;P&gt;      MOVE 'Dflt' TO mf_tab-group.&lt;/P&gt;&lt;P&gt;      APPEND mf_tab.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;simple output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT mf_tab.&lt;/P&gt;&lt;P&gt;    WRITE: / mf_tab-fnam,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    mf_tab-group.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: mf_tab, mf_tab[].&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**********************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i want the output in the format(in the order)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;action(t588m-itygr),infotype(itab-infty),field name(mf_tab-fnam),group(mf_tab-group)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 10 Jan 2008 09:38:49 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-01-10T09:38:49Z</dc:date>
    <item>
      <title>ALV tree code help-urgent</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-tree-code-help-urgent/m-p/3223851#M768883</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;can any one help me to include the following code in the program BCALV_TREE_SIMPLE_DEMO???&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  Z_MANFIELD.&lt;/P&gt;&lt;P&gt;DATA: d_screen TYPE REF TO cl_dynpro_info.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for field list of screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: ftab TYPE TABLE OF d021s,&lt;/P&gt;&lt;P&gt;wa_ftab TYPE d021s,&lt;/P&gt;&lt;P&gt;pltab TYPE TABLE OF d022s.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;name of modulpool&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: mpool TYPE repid,&lt;/P&gt;&lt;P&gt;      mpool2 type repid.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for screen attributes of field&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: es_screen TYPE screen.&lt;/P&gt;&lt;P&gt;DATA: back TYPE t588m-varky.&lt;/P&gt;&lt;P&gt;DATA: status.&lt;/P&gt;&lt;P&gt;DATA: pos TYPE i.&lt;/P&gt;&lt;P&gt;DATA: p_infty TYPE infty.&lt;/P&gt;&lt;P&gt;DATA: dynnr type dynnr value '2000'.&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;scf&amp;gt;.&lt;/P&gt;&lt;P&gt;TABLES: t588m, pme04,t588d.&lt;/P&gt;&lt;P&gt;constants: calc_molga type molga value '07'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for collection of mandatory fields&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF mf_tab OCCURS 0,&lt;/P&gt;&lt;P&gt;fnam TYPE d021s-fnam,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;added for distinction of default and T588M&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;group TYPE char4,&lt;/P&gt;&lt;P&gt;END OF mf_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF wa,&lt;/P&gt;&lt;P&gt;         infty TYPE infty,&lt;/P&gt;&lt;P&gt;       END OF wa.&lt;/P&gt;&lt;P&gt;DATA itab LIKE wa OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 1(12) text-001.&lt;/P&gt;&lt;P&gt;PARAMETER action TYPE t588d-itygr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for field attributes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT infty INTO CORRESPONDING FIELDS OF TABLE itab FROM t588d WHERE itygr = action.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    WRITE : / 'INFOTYPES FOR THIS ACTION TYPE ARE : '.&lt;/P&gt;&lt;P&gt;    SORT itab BY infty.&lt;/P&gt;&lt;P&gt;    DELETE ADJACENT DUPLICATES FROM itab COMPARING infty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT itab.&lt;/P&gt;&lt;P&gt;      WRITE : / itab-infty  HOTSPOT COLOR 6 INVERSE ON.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    WRITE /.&lt;/P&gt;&lt;P&gt;    WRITE : / ' CLICK AN INFOTYPE FOR GETTING ITS MANDATORY FIELDS'.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    WRITE : / 'SORRY,NO INFOTYPE FOR THIS ACTION TYPE'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT LINE-SELECTION.&lt;/P&gt;&lt;P&gt;  MOVE sy-lisel(6) TO p_infty.&lt;/P&gt;&lt;P&gt;  WRITE: / 'INFOTYPE - '.&lt;/P&gt;&lt;P&gt;  WRITE : p_infty.&lt;/P&gt;&lt;P&gt;  WRITE : /'MANDATORY FIELDS ARE :'.&lt;/P&gt;&lt;P&gt;  WRITE : / .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;build modulpool-name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CREATE OBJECT d_screen.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'MP' p_infty '00' INTO mpool2.&lt;/P&gt;&lt;P&gt;  CONCATENATE mpool2 '_CE' into mpool.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;maybe, you have to determin the screen-no first&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; perform determin_scrno CHANGING dynnr.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT SINGLE * FROM t588m WHERE repna = mpool&lt;/P&gt;&lt;P&gt;  AND dynnr = dynnr&lt;/P&gt;&lt;P&gt;  AND varky = calc_molga.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0. "not found -&amp;gt; switch to default MOLGA&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * FROM t588m WHERE repna LIKE mpool&lt;/P&gt;&lt;P&gt;                    AND dynnr = dynnr&lt;/P&gt;&lt;P&gt;                    AND varky = space.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0. "still not there -&amp;gt; fall back to dflt modulpool with MOLGA&lt;/P&gt;&lt;P&gt;       mpool = mpool2.&lt;/P&gt;&lt;P&gt;       SELECT SINGLE * FROM t588m WHERE repna = mpool&lt;/P&gt;&lt;P&gt;                      AND dynnr = dynnr&lt;/P&gt;&lt;P&gt;                      AND varky = calc_molga.&lt;/P&gt;&lt;P&gt;      IF sy-subrc ne 0. "Last try -&amp;gt; dflt modulpool + empty MOLGA&lt;/P&gt;&lt;P&gt;        SELECT SINGLE * FROM t588m WHERE repna LIKE mpool&lt;/P&gt;&lt;P&gt;                        AND dynnr = dynnr&lt;/P&gt;&lt;P&gt;                        AND varky = space.&lt;/P&gt;&lt;P&gt;        IF sy-subrc ne 0. "obviously, there isn't ana entry at all&lt;/P&gt;&lt;P&gt;          clear t588m.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&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;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;only to ensure that these fields are filled&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF t588m IS INITIAL.&lt;/P&gt;&lt;P&gt;    t588m-repna = mpool.&lt;/P&gt;&lt;P&gt;    t588m-dynnr = dynnr.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get fieldlist for screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'RS_IMPORT_DYNPRO'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    dylang = sy-langu&lt;/P&gt;&lt;P&gt;    dyname = t588m-repna&lt;/P&gt;&lt;P&gt;    dynumb = t588m-dynnr&lt;/P&gt;&lt;P&gt;    request = ' '&lt;/P&gt;&lt;P&gt;    suppress_checks = ' '&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  HEADER =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    ftab = ftab&lt;/P&gt;&lt;P&gt;    pltab = pltab&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    button_error = 1&lt;/P&gt;&lt;P&gt;    dylanguage_invalid = 2&lt;/P&gt;&lt;P&gt;    dylanguage_not_inst = 3&lt;/P&gt;&lt;P&gt;    dyname_invalid = 4&lt;/P&gt;&lt;P&gt;    dynproload_not_found = 5&lt;/P&gt;&lt;P&gt;    dynpro_old = 6&lt;/P&gt;&lt;P&gt;    dynumb_invalid = 7&lt;/P&gt;&lt;P&gt;    ftab_invalid = 8&lt;/P&gt;&lt;P&gt;    gen_error = 9&lt;/P&gt;&lt;P&gt;    gen_ok = 10&lt;/P&gt;&lt;P&gt;    header_invalid = 11&lt;/P&gt;&lt;P&gt;    internal_error = 12&lt;/P&gt;&lt;P&gt;    no_dynpro = 13&lt;/P&gt;&lt;P&gt;    no_ftab_row = 14&lt;/P&gt;&lt;P&gt;    no_memory = 15&lt;/P&gt;&lt;P&gt;    no_processlogic = 16&lt;/P&gt;&lt;P&gt;    pltab_invalid = 17&lt;/P&gt;&lt;P&gt;    request_invalid = 18&lt;/P&gt;&lt;P&gt;    OTHERS = 19&lt;/P&gt;&lt;P&gt;  .&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;error handling&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get rid of comments, frames and the like&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DELETE ftab WHERE aglt IS INITIAL.&lt;/P&gt;&lt;P&gt;  LOOP AT ftab INTO wa_ftab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Screen-Grp3 is the key to T588M-DBILD&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF wa_ftab-grp3 NE space.&lt;/P&gt;&lt;P&gt;      pos = wa_ftab-grp3 - 1.&lt;/P&gt;&lt;P&gt;      ASSIGN t588m-dbild+pos(1) TO  &amp;lt;scf&amp;gt;.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;mandatory fields are marked '+'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF &amp;lt;scf&amp;gt; EQ '+'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MOVE wa_ftab-fnam TO mf_tab-fnam.&lt;/P&gt;&lt;P&gt;        MOVE wa_ftab-grp3 TO mf_tab-group.&lt;/P&gt;&lt;P&gt;        APPEND mf_tab.&lt;/P&gt;&lt;P&gt;        CONTINUE.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;maybe the field is mandatory by default&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CALL METHOD d_screen-&amp;gt;get_screen_field_attr&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        iv_repid                    = t588m-repna&lt;/P&gt;&lt;P&gt;        iv_dynnr                    = t588m-dynnr&lt;/P&gt;&lt;P&gt;        iv_field                    = wa_ftab-fnam&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        es_screen                   = es_screen&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        exc_insufficient_parameters = 1&lt;/P&gt;&lt;P&gt;        exc_no_attributes           = 2&lt;/P&gt;&lt;P&gt;        OTHERS                      = 3.&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;error handling&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF es_screen-required NE space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MOVE wa_ftab-fnam TO mf_tab-fnam.&lt;/P&gt;&lt;P&gt;      MOVE 'Dflt' TO mf_tab-group.&lt;/P&gt;&lt;P&gt;      APPEND mf_tab.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;simple output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT mf_tab.&lt;/P&gt;&lt;P&gt;    WRITE: / mf_tab-fnam,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    mf_tab-group.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: mf_tab, mf_tab[].&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**********************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i want the output in the format(in the order)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;action(t588m-itygr),infotype(itab-infty),field name(mf_tab-fnam),group(mf_tab-group)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Jan 2008 09:38:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-tree-code-help-urgent/m-p/3223851#M768883</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-10T09:38:49Z</dc:date>
    </item>
    <item>
      <title>Re: ALV tree code help-urgent</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-tree-code-help-urgent/m-p/3223852#M768884</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Report ZDEMO_ALVTREE *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;*&amp;amp; Example of a simple ALV Grid Report *&lt;/P&gt;&lt;P&gt;*&amp;amp; ................................... *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;*&amp;amp; The basic requirement for this demo is to display a number of *&lt;/P&gt;&lt;P&gt;*&amp;amp; fields from the EKPO and EKKO table in a tree structure. *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Amendment History * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;REPORT zdemo_alvgrid .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Data Declaration&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------" /&gt;&lt;P&gt;TABLES: ekko.&lt;/P&gt;&lt;P&gt;TYPE-POOLS: slis. "ALV Declarations&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_ekko,&lt;/P&gt;&lt;P&gt;ebeln TYPE ekpo-ebeln,&lt;/P&gt;&lt;P&gt;ebelp TYPE ekpo-ebelp,&lt;/P&gt;&lt;P&gt;statu TYPE ekpo-statu,&lt;/P&gt;&lt;P&gt;aedat TYPE ekpo-aedat,&lt;/P&gt;&lt;P&gt;matnr TYPE ekpo-matnr,&lt;/P&gt;&lt;P&gt;menge TYPE ekpo-menge,&lt;/P&gt;&lt;P&gt;meins TYPE ekpo-meins,&lt;/P&gt;&lt;P&gt;netpr TYPE ekpo-netpr,&lt;/P&gt;&lt;P&gt;peinh TYPE ekpo-peinh,&lt;/P&gt;&lt;P&gt;END OF t_ekko.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;it_ekpo TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;it_emptytab TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;wa_ekko TYPE t_ekko,&lt;/P&gt;&lt;P&gt;wa_ekpo TYPE t_ekko.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: ok_code like sy-ucomm, "OK-Code&lt;/P&gt;&lt;P&gt;save_ok like sy-ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*ALV data declarations&lt;/P&gt;&lt;P&gt;DATA: fieldcatalog TYPE lvc_t_fcat WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gd_fieldcat TYPE lvc_t_fcat,&lt;/P&gt;&lt;P&gt;gd_tab_group TYPE slis_t_sp_group_alv,&lt;/P&gt;&lt;P&gt;gd_layout TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*ALVtree data declarations&lt;/P&gt;&lt;P&gt;CLASS cl_gui_column_tree DEFINITION LOAD.&lt;/P&gt;&lt;P&gt;CLASS cl_gui_cfw DEFINITION LOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gd_tree TYPE REF TO cl_gui_alv_tree,&lt;/P&gt;&lt;P&gt;gd_hierarchy_header TYPE treev_hhdr,&lt;/P&gt;&lt;P&gt;gd_report_title TYPE slis_t_listheader,&lt;/P&gt;&lt;P&gt;gd_logo TYPE sdydo_value,&lt;/P&gt;&lt;P&gt;gd_variant TYPE disvariant.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Create container for alv-tree&lt;/P&gt;&lt;P&gt;DATA: l_tree_container_name(30) TYPE c,&lt;/P&gt;&lt;P&gt;l_custom_container TYPE REF TO cl_gui_custom_container.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;*Includes&lt;/P&gt;&lt;P&gt;*INCLUDE ZDEMO_ALVTREEO01. "Screen PBO Modules&lt;/P&gt;&lt;P&gt;*INCLUDE ZDEMO_ALVTREEI01. "Screen PAI Modules&lt;/P&gt;&lt;P&gt;*INCLUDE ZDEMO_ALVTREEF01. "ABAP Subroutines(FORMS)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;*Start-of-selection.&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ALVtree setup data &lt;/P&gt;&lt;P&gt;PERFORM data_retrieval.&lt;/P&gt;&lt;P&gt;PERFORM build_fieldcatalog.&lt;/P&gt;&lt;P&gt;PERFORM build_layout.&lt;/P&gt;&lt;P&gt;PERFORM build_hierarchy_header CHANGING gd_hierarchy_header.&lt;/P&gt;&lt;P&gt;PERFORM build_report_title USING gd_report_title gd_logo.&lt;/P&gt;&lt;P&gt;PERFORM build_variant.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Display ALVtree report &lt;/P&gt;&lt;P&gt;call screen 100.&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 DATA_RETRIEVAL&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Retrieve data into Internal tables &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM data_retrieval.&lt;/P&gt;&lt;P&gt;SELECT ebeln&lt;/P&gt;&lt;P&gt;UP TO 10 ROWS&lt;/P&gt;&lt;P&gt;FROM ekko&lt;/P&gt;&lt;P&gt;INTO corresponding fields of TABLE it_ekko.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at it_ekko into wa_ekko.&lt;/P&gt;&lt;P&gt;SELECT ebeln ebelp statu aedat matnr menge meins netpr peinh&lt;/P&gt;&lt;P&gt;FROM ekpo&lt;/P&gt;&lt;P&gt;appending TABLE it_ekpo&lt;/P&gt;&lt;P&gt;where ebeln eq wa_ekko-ebeln.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;ENDFORM. " DATA_RETRIEVAL&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 BUILD_FIELDCATALOG&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Build Fieldcatalog for ALV Report &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM build_fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please not there are a number of differences between the structure of &lt;/P&gt;&lt;P&gt;ALVtree fieldcatalogs and ALVgrid fieldcatalogs. &lt;/P&gt;&lt;P&gt;For example the field seltext_m is replace by scrtext_m in ALVtree. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldcatalog-fieldname = 'EBELN'. "Field name in itab&lt;/P&gt;&lt;P&gt;fieldcatalog-scrtext_m = 'Purchase Order'. "Column text&lt;/P&gt;&lt;P&gt;fieldcatalog-col_pos = 0. "Column position&lt;/P&gt;&lt;P&gt;fieldcatalog-outputlen = 15. "Column width&lt;/P&gt;&lt;P&gt;fieldcatalog-emphasize = 'X'. "Emphasize (X or SPACE)&lt;/P&gt;&lt;P&gt;fieldcatalog-key = 'X'. "Key Field? (X or SPACE)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldcatalog-do_sum = 'X'. "Sum Column? &lt;/P&gt;&lt;P&gt;fieldcatalog-no_zero = 'X'. "Don't display if zero &lt;/P&gt;&lt;P&gt;APPEND fieldcatalog TO gd_fieldcat.&lt;/P&gt;&lt;P&gt;CLEAR fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldcatalog-fieldname = 'EBELP'.&lt;/P&gt;&lt;P&gt;fieldcatalog-scrtext_m = 'PO Iten'.&lt;/P&gt;&lt;P&gt;fieldcatalog-outputlen = 15.&lt;/P&gt;&lt;P&gt;fieldcatalog-col_pos = 1.&lt;/P&gt;&lt;P&gt;APPEND fieldcatalog TO gd_fieldcat..&lt;/P&gt;&lt;P&gt;CLEAR fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldcatalog-fieldname = 'STATU'.&lt;/P&gt;&lt;P&gt;fieldcatalog-scrtext_m = 'Status'.&lt;/P&gt;&lt;P&gt;fieldcatalog-outputlen = 15.&lt;/P&gt;&lt;P&gt;fieldcatalog-col_pos = 2.&lt;/P&gt;&lt;P&gt;APPEND fieldcatalog TO gd_fieldcat..&lt;/P&gt;&lt;P&gt;CLEAR fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldcatalog-fieldname = 'AEDAT'.&lt;/P&gt;&lt;P&gt;fieldcatalog-scrtext_m = 'Item change date'.&lt;/P&gt;&lt;P&gt;fieldcatalog-outputlen = 15.&lt;/P&gt;&lt;P&gt;fieldcatalog-col_pos = 3.&lt;/P&gt;&lt;P&gt;APPEND fieldcatalog TO gd_fieldcat..&lt;/P&gt;&lt;P&gt;CLEAR fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldcatalog-fieldname = 'MATNR'.&lt;/P&gt;&lt;P&gt;fieldcatalog-scrtext_m = 'Material Number'.&lt;/P&gt;&lt;P&gt;fieldcatalog-outputlen = 15.&lt;/P&gt;&lt;P&gt;fieldcatalog-col_pos = 4.&lt;/P&gt;&lt;P&gt;APPEND fieldcatalog TO gd_fieldcat..&lt;/P&gt;&lt;P&gt;CLEAR fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldcatalog-fieldname = 'MENGE'.&lt;/P&gt;&lt;P&gt;fieldcatalog-scrtext_m = 'PO quantity'.&lt;/P&gt;&lt;P&gt;fieldcatalog-outputlen = 15.&lt;/P&gt;&lt;P&gt;fieldcatalog-col_pos = 5.&lt;/P&gt;&lt;P&gt;APPEND fieldcatalog TO gd_fieldcat..&lt;/P&gt;&lt;P&gt;CLEAR fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldcatalog-fieldname = 'MEINS'.&lt;/P&gt;&lt;P&gt;fieldcatalog-scrtext_m = 'Order Unit'.&lt;/P&gt;&lt;P&gt;fieldcatalog-outputlen = 15.&lt;/P&gt;&lt;P&gt;fieldcatalog-col_pos = 6.&lt;/P&gt;&lt;P&gt;APPEND fieldcatalog TO gd_fieldcat..&lt;/P&gt;&lt;P&gt;CLEAR fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldcatalog-fieldname = 'NETPR'.&lt;/P&gt;&lt;P&gt;fieldcatalog-scrtext_m = 'Net Price'.&lt;/P&gt;&lt;P&gt;fieldcatalog-outputlen = 15.&lt;/P&gt;&lt;P&gt;fieldcatalog-col_pos = 7.&lt;/P&gt;&lt;P&gt;fieldcatalog-datatype = 'CURR'.&lt;/P&gt;&lt;P&gt;APPEND fieldcatalog TO gd_fieldcat..&lt;/P&gt;&lt;P&gt;CLEAR fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldcatalog-fieldname = 'PEINH'.&lt;/P&gt;&lt;P&gt;fieldcatalog-scrtext_m = 'Price Unit'.&lt;/P&gt;&lt;P&gt;fieldcatalog-outputlen = 15.&lt;/P&gt;&lt;P&gt;fieldcatalog-col_pos = 8.&lt;/P&gt;&lt;P&gt;APPEND fieldcatalog TO gd_fieldcat..&lt;/P&gt;&lt;P&gt;CLEAR fieldcatalog.&lt;/P&gt;&lt;P&gt;ENDFORM. " BUILD_FIELDCATALOG&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 BUILD_LAYOUT&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Build layout for ALV grid report &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM build_layout.&lt;/P&gt;&lt;P&gt;gd_layout-no_input = 'X'.&lt;/P&gt;&lt;P&gt;gd_layout-colwidth_optimize = 'X'.&lt;/P&gt;&lt;P&gt;gd_layout-totals_text = 'Totals'(201).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gd_layout-totals_only = 'X'. &lt;/P&gt;&lt;P&gt;gd_layout-f2code = 'DISP'. "Sets fcode for when double &lt;/P&gt;&lt;P&gt;"click(press f2) &lt;/P&gt;&lt;P&gt;gd_layout-zebra = 'X'. &lt;/P&gt;&lt;P&gt;gd_layout-group_change_edit = 'X'. &lt;/P&gt;&lt;P&gt;gd_layout-header_text = 'helllllo'. &lt;/P&gt;&lt;P&gt;ENDFORM. " BUILD_LAYOUT&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 build_hierarchy_header&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;build hierarchy-header-information &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_L_HIERARCHY_HEADER structure for hierarchy-header &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM build_hierarchy_header CHANGING&lt;/P&gt;&lt;P&gt;p_hierarchy_header TYPE treev_hhdr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;p_hierarchy_header-heading = 'Hierarchy Header'(013).&lt;/P&gt;&lt;P&gt;p_hierarchy_header-tooltip = 'This is the Hierarchy Header !'(014).&lt;/P&gt;&lt;P&gt;p_hierarchy_header-width = 30.&lt;/P&gt;&lt;P&gt;p_hierarchy_header-width_pix = ''.&lt;/P&gt;&lt;P&gt;ENDFORM. " build_hierarchy_header&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 BUILD_REPORT_TITLE&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Build table for ALVtree header &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;-&amp;gt; p1 Header details &lt;/P&gt;&lt;P&gt;&amp;lt;-&amp;gt; p2 Logo value &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM build_report_title CHANGING&lt;/P&gt;&lt;P&gt;pt_report_title TYPE slis_t_listheader&lt;/P&gt;&lt;P&gt;pa_logo TYPE sdydo_value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: ls_line TYPE slis_listheader,&lt;/P&gt;&lt;P&gt;ld_date(10) TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;List Heading Line(TYPE H) &lt;/P&gt;&lt;P&gt;CLEAR ls_line.&lt;/P&gt;&lt;P&gt;ls_line-typ = 'H'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ls_line-key "Not Used For This Type(H) &lt;/P&gt;&lt;P&gt;ls_line-info = 'PO ALVTree Display'.&lt;/P&gt;&lt;P&gt;APPEND ls_line TO pt_report_title.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Status Line(TYPE S) &lt;/P&gt;&lt;P&gt;ld_date(2) = sy-datum+6(2).&lt;/P&gt;&lt;P&gt;ld_date+2(1) = '/'.&lt;/P&gt;&lt;P&gt;ld_date&lt;EM&gt;3(2) = sy-datum&lt;/EM&gt;4(2).&lt;/P&gt;&lt;P&gt;ld_date+5(1) = '/'.&lt;/P&gt;&lt;P&gt;ld_date+6(4) = sy-datum(4).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ls_line-typ = 'S'.&lt;/P&gt;&lt;P&gt;ls_line-key = 'Date'.&lt;/P&gt;&lt;P&gt;ls_line-info = ld_date.&lt;/P&gt;&lt;P&gt;APPEND ls_line TO pt_report_title.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Action Line(TYPE A) &lt;/P&gt;&lt;P&gt;CLEAR ls_line.&lt;/P&gt;&lt;P&gt;ls_line-typ = 'A'.&lt;/P&gt;&lt;P&gt;CONCATENATE 'Report: ' sy-repid INTO ls_line-info SEPARATED BY space.&lt;/P&gt;&lt;P&gt;APPEND ls_line TO pt_report_title.&lt;/P&gt;&lt;P&gt;ENDFORM.&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 BUILD_VARIANT&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Build variant &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form build_variant.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Set repid for storing variants &lt;/P&gt;&lt;P&gt;gd_variant-report = sy-repid.&lt;/P&gt;&lt;P&gt;endform. " BUILD_VARIANT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Jan 2008 09:41:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-tree-code-help-urgent/m-p/3223852#M768884</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-10T09:41:08Z</dc:date>
    </item>
    <item>
      <title>Re: ALV tree code help-urgent</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-tree-code-help-urgent/m-p/3223853#M768885</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;Check the sample program SAPSIMPLE_TREE_CONTROL_DEMO  .&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>Thu, 10 Jan 2008 10:03:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-tree-code-help-urgent/m-p/3223853#M768885</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-10T10:03:06Z</dc:date>
    </item>
  </channel>
</rss>

