<?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: how to use dynamic internal table in interactive report syntax in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788980#M650482</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;"Another Example  :&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT ZCLUST1 . 
* 
* Example: how to create a dynamic internal table 
*  
* The dynamic internal table stucture 
DATA: BEGIN OF STRUCT OCCURS 10, 
    FILDNAME(8) TYPE C, 
    ABPTYPE TYPE C, 
    LENGTH TYPE I, 
END OF STRUCT. 

* The dynamic program source table 
DATA: BEGIN OF INCTABL OCCURS 10, 
    LINE(72), 
END OF INCTABL. 

DATA: LNG TYPE I, TYPESRTING(6). 

* Sample dynamic internal table stucture 
STRUCT-FILDNAME = 'field1'. STRUCT-ABPTYPE = 'c'. STRUCT-LENGTH = '6'. 
APPEND STRUCT. CLEAR STRUCT. 

STRUCT-FILDNAME = 'field2'. STRUCT-ABPTYPE = 'd'. 
APPEND STRUCT. CLEAR STRUCT. 

STRUCT-FILDNAME = 'field3'. STRUCT-ABPTYPE = 'i'. 
APPEND STRUCT. CLEAR STRUCT. 

* Create the dynamic internal table definition in the dyn. program 
INCTABL-LINE = 'program zdynpro.'. APPEND INCTABL. 
INCTABL-LINE = 'data: begin of dyntab occurs 10,'. APPEND INCTABL. 

LOOP AT STRUCT. 
  INCTABL-LINE = STRUCT-FILDNAME. 
  LNG = STRLEN( STRUCT-FILDNAME ). 

  IF NOT STRUCT-LENGTH IS INITIAL . 
      TYPESRTING(1) = '('. 
      TYPESRTING+1 = STRUCT-LENGTH. 
      TYPESRTING+5 = ')'. 
      CONDENSE TYPESRTING NO-GAPS. 
      INCTABL-LINE+LNG = TYPESRTING. 
  ENDIF. 

  INCTABL-LINE+15 = 'type '. 
  INCTABL-LINE+21 = STRUCT-ABPTYPE. 
  INCTABL-LINE+22 = ','. 
  APPEND INCTABL. 
ENDLOOP. 
INCTABL-LINE = 'end of dyntab. '. 
APPEND INCTABL. 

* Create the code processes the dynamic internal table 
INCTABL-LINE = ' '. APPEND INCTABL. 
INCTABL-LINE = 'dyntab-field1 = ''aaaaaa''.'. APPEND INCTABL. 
INCTABL-LINE = 'dyntab-field1 = ''19970814''.'. APPEND INCTABL. 
INCTABL-LINE = 'dyntab-field1 = 1.'. APPEND INCTABL. 
INCTABL-LINE = 'append dyntab.'. APPEND INCTABL. 
INCTABL-LINE = ' '. APPEND INCTABL. 
INCTABL-LINE = 'loop at dyntab.'. APPEND INCTABL. 
INCTABL-LINE = 'write: / dyntab.'. APPEND INCTABL. 
INCTABL-LINE = 'endloop.'. APPEND INCTABL. 

* Create and run the dynamic program 
INSERT REPORT 'zdynpro'(001) FROM INCTABL. 
SUBMIT ZDYNPRO. 

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward  points if it is usefull ....&lt;/P&gt;&lt;P&gt;Girish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 11 Sep 2007 10:42:29 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-09-11T10:42:29Z</dc:date>
    <item>
      <title>how to use dynamic internal table in interactive report syntax</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788976#M650478</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;pls let me know&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Sep 2007 12:24:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788976#M650478</guid>
      <dc:creator>aarif_baig</dc:creator>
      <dc:date>2007-09-10T12:24:00Z</dc:date>
    </item>
    <item>
      <title>Re: how to use dynamic internal table in interactive report syntax</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788977#M650479</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;check below code....&lt;/P&gt;&lt;P&gt;  DATA: l_val(3) TYPE n,&lt;/P&gt;&lt;P&gt;        lf_mat(18) TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Moving the Components-List details to the internal table 1st column&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;which will be used for creation of dynamic internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR gf_xfc.&lt;/P&gt;&lt;P&gt;  gf_xfc-fieldname = text-t03.&lt;/P&gt;&lt;P&gt;  gf_xfc-datatype = c_val_c.&lt;/P&gt;&lt;P&gt;  gf_xfc-inttype = c_val_c.&lt;/P&gt;&lt;P&gt;  gf_xfc-intlen = 18.&lt;/P&gt;&lt;P&gt;  gf_xfc-decimals = 0.&lt;/P&gt;&lt;P&gt;  APPEND gf_xfc TO gf_ifc.&lt;/P&gt;&lt;P&gt;  CLEAR gf_xfc.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Moving the Description details to the internal table 2nd column&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;which will be used for creation of dynamic internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  gf_xfc-fieldname = text-t04.&lt;/P&gt;&lt;P&gt;  gf_xfc-datatype = c_val_c.&lt;/P&gt;&lt;P&gt;  gf_xfc-inttype = c_val_c.&lt;/P&gt;&lt;P&gt;  gf_xfc-intlen = 40.&lt;/P&gt;&lt;P&gt;  gf_xfc-decimals = 0.&lt;/P&gt;&lt;P&gt;  APPEND gf_xfc TO gf_ifc.&lt;/P&gt;&lt;P&gt;  CLEAR gf_xfc.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Moving the Count details to the internal table 3rd column which will&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;be used for creation of dynamic internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  gf_xfc-fieldname = text-t05.&lt;/P&gt;&lt;P&gt;  gf_xfc-datatype = c_val_c.&lt;/P&gt;&lt;P&gt;  gf_xfc-inttype = c_val_c.&lt;/P&gt;&lt;P&gt;  gf_xfc-intlen = 5.&lt;/P&gt;&lt;P&gt;  gf_xfc-decimals = 0.&lt;/P&gt;&lt;P&gt;  APPEND gf_xfc TO gf_ifc.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Moving the Material numbers are moved to the internal table from 4th&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;column onwards till all the material numbers are moved to the columns&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;which will be used for creation of dynamic internal table. Here&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;columns will be reffered to as Material001 ..... Materialxxn&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DO g_count TIMES.&lt;/P&gt;&lt;P&gt;    CLEAR gf_xfc.&lt;/P&gt;&lt;P&gt;    l_val = l_val + 1.&lt;/P&gt;&lt;P&gt;    CONCATENATE text-t06 l_val INTO lf_mat.&lt;/P&gt;&lt;P&gt;    gf_xfc-fieldname = lf_mat.&lt;/P&gt;&lt;P&gt;    gf_xfc-datatype = c_val_c.&lt;/P&gt;&lt;P&gt;    gf_xfc-inttype = c_val_c.&lt;/P&gt;&lt;P&gt;    gf_xfc-intlen = 18.&lt;/P&gt;&lt;P&gt;    gf_xfc-decimals = 0.&lt;/P&gt;&lt;P&gt;    APPEND gf_xfc TO gf_ifc.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Using the above data dynamic internal table is been created&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL METHOD cl_alv_table_create=&amp;gt;create_dynamic_table&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      it_fieldcatalog = gf_ifc&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      ep_table        = gf_table.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;The dynamic internal table which is created is been assigned to&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;field-symbol which holds the data of the columns of X-axis&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ASSIGN gf_table-&amp;gt;* TO &amp;lt;fs_dyn_table&amp;gt;.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Dynamic work area is been created usng the reference to the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;field-symbol which has the data and the line item is been assign to&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;field-symbol to hold line item data for reading purposes line by line&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CREATE DATA gf_line LIKE LINE OF &amp;lt;fs_dyn_table&amp;gt;.&lt;/P&gt;&lt;P&gt;  ASSIGN gf_line-&amp;gt;* TO &amp;lt;fs_dyn_wa&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if u need more info abt the code send an email to&lt;/P&gt;&lt;P&gt;rameshc@intelligroup.com&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Sep 2007 12:29:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788977#M650479</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-10T12:29:37Z</dc:date>
    </item>
    <item>
      <title>Re: how to use dynamic internal table in interactive report syntax</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788978#M650480</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Aarif,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go through the below code for better understanding:&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;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; Report  ZDYN_INT_TABLE_02                                           *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&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;                                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&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;&lt;/P&gt;&lt;P&gt;REPORT  ZDYN_INT_TABLE_02.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: slis.                      " ALV Global types&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b1.&lt;/P&gt;&lt;P&gt;PARAMETERS : p_max(3) TYPE n OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF wa_gt_data,&lt;/P&gt;&lt;P&gt;          matnr TYPE mara-matnr,&lt;/P&gt;&lt;P&gt;       END OF wa_gt_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA gt_data TYPE STANDARD TABLE OF wa_gt_data WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&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;*INITIALIZATION.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; v_1 = 'Maximum of records to read'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&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;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_read_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_display_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&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;     Form  f_read_data&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;FORM f_read_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT matnr INTO TABLE gt_data&lt;/P&gt;&lt;P&gt;           FROM mara&lt;/P&gt;&lt;P&gt;             UP TO p_max ROWS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " F_READ_DATA&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&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;     Form  F_DISPLAY_DATA&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;FORM f_display_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;    l_column    TYPE sy-tabix,&lt;/P&gt;&lt;P&gt;    lp_struct   TYPE REF TO data,&lt;/P&gt;&lt;P&gt;    lp_table    TYPE REF TO data,      " Pointer to dynamic table&lt;/P&gt;&lt;P&gt;    ls_lvc_cat  TYPE lvc_s_fcat,&lt;/P&gt;&lt;P&gt;    lt_lvc_cat  TYPE lvc_t_fcat,       " Field catalog&lt;/P&gt;&lt;P&gt;    lt_fcat     TYPE slis_t_fieldcat_alv,  " Field catalog&lt;/P&gt;&lt;P&gt;    ls_fieldcat TYPE slis_fieldcat_alv,&lt;/P&gt;&lt;P&gt;    lt_fieldcat TYPE slis_t_fieldcat_alv,  " Field catalog&lt;/P&gt;&lt;P&gt;    ls_layout   TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FIELD-SYMBOLS :&lt;/P&gt;&lt;P&gt;    &amp;lt;header&amp;gt;       TYPE ANY,&lt;/P&gt;&lt;P&gt;    &amp;lt;field_header&amp;gt; TYPE ANY,&lt;/P&gt;&lt;P&gt;    &amp;lt;field_mara&amp;gt;  TYPE ANY,&lt;/P&gt;&lt;P&gt;    &amp;lt;lt_data&amp;gt;      TYPE table.         " Data to display&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ls_lvc_cat-fieldname = 'COLUMNTEXT'.&lt;/P&gt;&lt;P&gt;  ls_lvc_cat-ref_table = 'LVC_S_DETA'.&lt;/P&gt;&lt;P&gt;  APPEND ls_lvc_cat TO lt_lvc_cat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'COLUMNTEXT'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'LVC_S_DETA'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key  = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO p_max TIMES.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  For each line, a column 'VALUEx' is created in the fieldcatalog&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Build Fieldcatalog&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   WRITE sy-index TO ls_lvc_cat-fieldname LEFT-JUSTIFIED.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CONCATENATE 'VALUE' ls_lvc_cat-fieldname&lt;/P&gt;&lt;P&gt;           INTO ls_lvc_cat-fieldname.&lt;/P&gt;&lt;P&gt;    ls_lvc_cat-ref_field = 'VALUE'.&lt;/P&gt;&lt;P&gt;    ls_lvc_cat-ref_table = 'LVC_S_DETA'.&lt;/P&gt;&lt;P&gt;    APPEND ls_lvc_cat TO lt_lvc_cat.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Build Fieldcatalog&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-fieldname = ls_lvc_cat-fieldname.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ref_fieldname = 'VALUE'.&lt;/P&gt;&lt;P&gt;    ls_fieldcat-ref_tabname = 'LVC_S_DETA'.&lt;/P&gt;&lt;P&gt;    APPEND ls_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL METHOD cl_alv_table_create=&amp;gt;create_dynamic_table&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      it_fieldcatalog = lt_lvc_cat&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      ep_table        = lp_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ASSIGN lp_table-&amp;gt;* TO &amp;lt;lt_data&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create structure = structure of the internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CREATE DATA lp_struct LIKE LINE OF &amp;lt;lt_data&amp;gt;.&lt;/P&gt;&lt;P&gt;  ASSIGN lp_struct-&amp;gt;* TO &amp;lt;header&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create field catalog from dictionary structure&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      i_structure_name       = 'MARA'&lt;/P&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      ct_fieldcat            = lt_fcat&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      inconsistent_interface = 1&lt;/P&gt;&lt;P&gt;      program_error          = 2&lt;/P&gt;&lt;P&gt;      OTHERS                 = 3.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT lt_fcat INTO ls_fieldcat WHERE fieldname = 'MATNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ASSIGN COMPONENT 1 OF STRUCTURE &amp;lt;header&amp;gt; TO &amp;lt;field_header&amp;gt;.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0. EXIT .ENDIF.&lt;/P&gt;&lt;P&gt;    READ TABLE lt_fcat INTO ls_fieldcat INDEX sy-index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    &amp;lt;field_header&amp;gt; = ls_fieldcat-seltext_m.&lt;/P&gt;&lt;P&gt;    IF &amp;lt;field_header&amp;gt; IS INITIAL.&lt;/P&gt;&lt;P&gt;      &amp;lt;field_header&amp;gt; = ls_fieldcat-fieldname.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT gt_data.&lt;/P&gt;&lt;P&gt;      l_column = sy-tabix + 1.&lt;/P&gt;&lt;P&gt;      ASSIGN COMPONENT 1 OF STRUCTURE gt_data TO &amp;lt;field_mara&amp;gt;.&lt;/P&gt;&lt;P&gt;      IF sy-subrc NE 0. EXIT .ENDIF.&lt;/P&gt;&lt;P&gt;      ASSIGN COMPONENT l_column OF STRUCTURE &amp;lt;header&amp;gt; TO &amp;lt;field_header&amp;gt;.&lt;/P&gt;&lt;P&gt;      IF sy-subrc NE 0. EXIT .ENDIF.&lt;/P&gt;&lt;P&gt;      WRITE &amp;lt;field_mara&amp;gt; TO &amp;lt;field_header&amp;gt; LEFT-JUSTIFIED.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    APPEND &amp;lt;header&amp;gt; TO &amp;lt;lt_data&amp;gt;.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  ls_layout-colwidth_optimize = 'X'.&lt;/P&gt;&lt;P&gt;  ls_layout-no_colhead = 'X'.&lt;/P&gt;&lt;P&gt;  ls_layout-zebra = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      is_layout   = ls_layout&lt;/P&gt;&lt;P&gt;      it_fieldcat = lt_fieldcat&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      t_outtab    = &amp;lt;lt_data&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " F_DISPLAY_DATA&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="12" type="ul"&gt;&lt;P&gt;END OF PROGRAM Z_ALV_LIST_TRANSPOSED *********************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&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;*Always reward point for helpful answers&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Amit&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Sep 2007 09:45:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788978#M650480</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-11T09:45:59Z</dc:date>
    </item>
    <item>
      <title>Re: how to use dynamic internal table in interactive report syntax</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788979#M650481</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;"How to create a Dynamic Internal Table or Array? 
'Can you create an internal table dynamically? (at run time) 

'Yes , you can create a Dynamic Internal table .Just chek out this program . 
   &lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt; type-pools : abap. 
  field-symbols: &amp;lt;dyn_table&amp;gt; type standard table, 
               &amp;lt;dyn_wa&amp;gt;, 
               &amp;lt;dyn_field&amp;gt;. 
  data: dy_table type ref to data, 
      dy_line  type ref to data, 
      xfc type lvc_s_fcat, 
      ifc type lvc_t_fcat. 
  selection-screen begin of block b1 with frame. 
parameters: p_table(30) type c default 'T001'. 
selection-screen end of block b1. 
  start-of-selection. 
    perform get_structure. 
  perform create_dynamic_itab.      **********Creates a dyanamic internal table********** 
  perform get_data. 
  perform write_out. 
  form get_structure. 
  data : idetails type abap_compdescr_tab, 
       xdetails type abap_compdescr. 
  data : ref_table_des type ref to cl_abap_structdescr. 
  * Get the structure of the table. 
  ref_table_des ?=  
      cl_abap_typedescr=&amp;gt;describe_by_name( p_table ). 
  idetails[] = ref_table_des-&amp;gt;components[]. 
    loop at idetails into xdetails. 
    clear xfc. 
    xfc-fieldname = xdetails-name . 
    xfc-datatype = xdetails-type_kind. 
    xfc-inttype = xdetails-type_kind. 
    xfc-intlen = xdetails-length. 
    xfc-decimals = xdetails-decimals. 
    append xfc to ifc. 
  endloop. 
  endform. 
  form create_dynamic_itab. 
  * Create dynamic internal table and assign to FS 
  call method cl_alv_table_create=&amp;gt;create_dynamic_table 
               exporting 
                  it_fieldcatalog = ifc 
               importing 
                  ep_table        = dy_table. 
    assign dy_table-&amp;gt;* to &amp;lt;dyn_table&amp;gt;. 
  * Create dynamic work area and assign to FS 
  create data dy_line like line of &amp;lt;dyn_table&amp;gt;. 
  assign dy_line-&amp;gt;* to &amp;lt;dyn_wa&amp;gt;. 
  endform. 
    
  form get_data. 
  * Select Data from table. 
  select * into table &amp;lt;dyn_table&amp;gt; 
             from (p_table). 
  endform. 
   Write out data from table. 
  loop at &amp;lt;dyn_table&amp;gt; into &amp;lt;dyn_wa&amp;gt;. 
    do. 
      assign component  sy-index   
         of structure &amp;lt;dyn_wa&amp;gt; to &amp;lt;dyn_field&amp;gt;. 
      if sy-subrc &amp;lt;&amp;gt; 0. 
        exit. 
      endif. 
      if sy-index = 1. 
        write:/ &amp;lt;dyn_field&amp;gt;. 
      else. 
        write: &amp;lt;dyn_field&amp;gt;. 
      endif. 
    enddo. 
  endloop.&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;Reward  points  if it is  usefull.......&lt;/P&gt;&lt;P&gt;Girish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Sep 2007 10:40:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788979#M650481</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-11T10:40:50Z</dc:date>
    </item>
    <item>
      <title>Re: how to use dynamic internal table in interactive report syntax</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788980#M650482</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;"Another Example  :&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT ZCLUST1 . 
* 
* Example: how to create a dynamic internal table 
*  
* The dynamic internal table stucture 
DATA: BEGIN OF STRUCT OCCURS 10, 
    FILDNAME(8) TYPE C, 
    ABPTYPE TYPE C, 
    LENGTH TYPE I, 
END OF STRUCT. 

* The dynamic program source table 
DATA: BEGIN OF INCTABL OCCURS 10, 
    LINE(72), 
END OF INCTABL. 

DATA: LNG TYPE I, TYPESRTING(6). 

* Sample dynamic internal table stucture 
STRUCT-FILDNAME = 'field1'. STRUCT-ABPTYPE = 'c'. STRUCT-LENGTH = '6'. 
APPEND STRUCT. CLEAR STRUCT. 

STRUCT-FILDNAME = 'field2'. STRUCT-ABPTYPE = 'd'. 
APPEND STRUCT. CLEAR STRUCT. 

STRUCT-FILDNAME = 'field3'. STRUCT-ABPTYPE = 'i'. 
APPEND STRUCT. CLEAR STRUCT. 

* Create the dynamic internal table definition in the dyn. program 
INCTABL-LINE = 'program zdynpro.'. APPEND INCTABL. 
INCTABL-LINE = 'data: begin of dyntab occurs 10,'. APPEND INCTABL. 

LOOP AT STRUCT. 
  INCTABL-LINE = STRUCT-FILDNAME. 
  LNG = STRLEN( STRUCT-FILDNAME ). 

  IF NOT STRUCT-LENGTH IS INITIAL . 
      TYPESRTING(1) = '('. 
      TYPESRTING+1 = STRUCT-LENGTH. 
      TYPESRTING+5 = ')'. 
      CONDENSE TYPESRTING NO-GAPS. 
      INCTABL-LINE+LNG = TYPESRTING. 
  ENDIF. 

  INCTABL-LINE+15 = 'type '. 
  INCTABL-LINE+21 = STRUCT-ABPTYPE. 
  INCTABL-LINE+22 = ','. 
  APPEND INCTABL. 
ENDLOOP. 
INCTABL-LINE = 'end of dyntab. '. 
APPEND INCTABL. 

* Create the code processes the dynamic internal table 
INCTABL-LINE = ' '. APPEND INCTABL. 
INCTABL-LINE = 'dyntab-field1 = ''aaaaaa''.'. APPEND INCTABL. 
INCTABL-LINE = 'dyntab-field1 = ''19970814''.'. APPEND INCTABL. 
INCTABL-LINE = 'dyntab-field1 = 1.'. APPEND INCTABL. 
INCTABL-LINE = 'append dyntab.'. APPEND INCTABL. 
INCTABL-LINE = ' '. APPEND INCTABL. 
INCTABL-LINE = 'loop at dyntab.'. APPEND INCTABL. 
INCTABL-LINE = 'write: / dyntab.'. APPEND INCTABL. 
INCTABL-LINE = 'endloop.'. APPEND INCTABL. 

* Create and run the dynamic program 
INSERT REPORT 'zdynpro'(001) FROM INCTABL. 
SUBMIT ZDYNPRO. 

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward  points if it is usefull ....&lt;/P&gt;&lt;P&gt;Girish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Sep 2007 10:42:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-use-dynamic-internal-table-in-interactive-report-syntax/m-p/2788980#M650482</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-11T10:42:29Z</dc:date>
    </item>
  </channel>
</rss>

