<?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: Dynamic internal tablw in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119055#M108364</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can create dynamic internal tables using..&lt;/P&gt;&lt;P&gt;field-symbols: &amp;lt;table&amp;gt; type any.&lt;/P&gt;&lt;P&gt;types: fieldref type ref to data.&lt;/P&gt;&lt;P&gt;data: dyn_table type fieldref.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As for the actual code to generate the table:&lt;/P&gt;&lt;P&gt;create data dyn_table type (SAP Table).&lt;/P&gt;&lt;P&gt;assign dyn_table-&amp;gt;* to table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT zselect_dynamic  LINE-SIZE 132&lt;/P&gt;&lt;P&gt;                        LINE-COUNT 65(1)&lt;/P&gt;&lt;P&gt;                        NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                        MESSAGE-ID z1.&lt;/P&gt;&lt;P&gt;TYPES ztab LIKE dcobjdef-name .&lt;/P&gt;&lt;P&gt;PARAMETERS: tab_name TYPE ztab   DEFAULT 'Z?????' ,&lt;/P&gt;&lt;P&gt;            tab_nam2 TYPE ztab   DEFAULT 'Z?????' ,&lt;/P&gt;&lt;P&gt;            pclient AS CHECKBOX .&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP .&lt;/P&gt;&lt;P&gt;PARAMETERS: where1(80) ,&lt;/P&gt;&lt;P&gt;            where2(80) ,&lt;/P&gt;&lt;P&gt;            where3(80) ,&lt;/P&gt;&lt;P&gt;            where4(80) .&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;DATA : lcode(72),&lt;/P&gt;&lt;P&gt;       prog_tab LIKE lcode OCCURS 0 WITH HEADER LINE .&lt;/P&gt;&lt;P&gt;DEFINE append_line.&lt;/P&gt;&lt;P&gt;  append &amp;amp;1 to prog_tab.&lt;/P&gt;&lt;P&gt;END-OF-DEFINITION.&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF nametab OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE dntab.&lt;/P&gt;&lt;P&gt;DATA:    END OF nametab.&lt;/P&gt;&lt;P&gt;DATA:  BEGIN  OF  twhere OCCURS  20,&lt;/P&gt;&lt;P&gt;        line(80),&lt;/P&gt;&lt;P&gt;END  OF twhere.&lt;/P&gt;&lt;P&gt;DATA: zprogram LIKE sy-cprog,&lt;/P&gt;&lt;P&gt;      no_line  TYPE i,&lt;/P&gt;&lt;P&gt;      zmessage(150) ,&lt;/P&gt;&lt;P&gt;      count_commit TYPE i .&lt;/P&gt;&lt;P&gt;DATA:  d_ref       TYPE REF TO data,&lt;/P&gt;&lt;P&gt;       d_ref2      TYPE REF TO data ,&lt;/P&gt;&lt;P&gt;       lt_alv_cat  TYPE TABLE OF lvc_s_fcat,&lt;/P&gt;&lt;P&gt;       ls_alv_cat  LIKE LINE OF lt_alv_cat.&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS :      TYPE table,&lt;/P&gt;&lt;P&gt;                  ,&lt;/P&gt;&lt;P&gt;                  ,"TYPE ANY ,&lt;/P&gt;&lt;P&gt;                  ,&lt;/P&gt;&lt;P&gt;                 .&lt;/P&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------" /&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Main program.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------" /&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------" /&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Main program.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------" /&gt;&lt;P&gt;  PERFORM z_define_itab .&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;      Form  z_define_itab&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;FORM z_define_itab .&lt;/P&gt;&lt;P&gt;  CHECK ( tab_name(01) = 'Z'  OR  tab_name(01) = 'Y' )&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if you want treat tables with your namespace, insert here your code&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  AND   ( tab_nam2(01) = 'Z'  OR  tab_nam2(01) = 'Y' ) .&lt;/P&gt;&lt;P&gt;  REFRESH  nametab.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'NAMETAB_GET'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            langu          = sy-langu&lt;/P&gt;&lt;P&gt;            tabname        = tab_name&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            nametab        = nametab&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            no_texts_found = 1.&lt;/P&gt;&lt;P&gt;  LOOP AT nametab .&lt;/P&gt;&lt;P&gt;    ls_alv_cat-fieldname     = nametab-fieldname .&lt;/P&gt;&lt;P&gt;    ls_alv_cat-ref_table     = tab_name.&lt;/P&gt;&lt;P&gt;    ls_alv_cat-ref_field     = nametab-fieldname .&lt;/P&gt;&lt;P&gt;    APPEND ls_alv_cat TO lt_alv_cat.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;internal table build&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 it_fieldcatalog = lt_alv_cat&lt;/P&gt;&lt;P&gt;     IMPORTING ep_table = d_ref .&lt;/P&gt;&lt;P&gt;  ASSIGN d_ref-&amp;gt;* TO .&lt;/P&gt;&lt;P&gt;  IF where1 IS INITIAL AND where2 IS INITIAL&lt;/P&gt;&lt;P&gt;  AND where3 IS INITIAL AND where4 IS INITIAL .&lt;/P&gt;&lt;P&gt;    SELECT * FROM (tab_name) INTO  TABLE  .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            ORDER BY PRIMARY KEY.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ELSE .&lt;/P&gt;&lt;P&gt;    PERFORM select_with_where .&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE  LINES sy-tfill .&lt;/P&gt;&lt;P&gt;  IF sy-tfill = 0 .&lt;/P&gt;&lt;P&gt;    MESSAGE i000 WITH&lt;/P&gt;&lt;P&gt;      'Data not selected, verify the tables or conditions ! ' .&lt;/P&gt;&lt;P&gt;    STOP .&lt;/P&gt;&lt;P&gt;  ELSE .&lt;/P&gt;&lt;P&gt;    MESSAGE s000 WITH 'You have successfully treated yours tables.'.&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  CREATE DATA d_ref2 TYPE (tab_nam2).&lt;/P&gt;&lt;P&gt;  ASSIGN d_ref2-&amp;gt;* TO    .&lt;/P&gt;&lt;P&gt;  LOOP AT  ASSIGNING  .&lt;/P&gt;&lt;P&gt;    CLEAR  .&lt;/P&gt;&lt;P&gt;    LOOP AT nametab .&lt;/P&gt;&lt;P&gt;      ASSIGN COMPONENT nametab-fieldname&lt;/P&gt;&lt;P&gt;                          OF STRUCTURE  TO .&lt;/P&gt;&lt;P&gt;      IF sy-subrc &amp;lt;&amp;gt; 0. EXIT. ENDIF.&lt;/P&gt;&lt;P&gt;      ASSIGN COMPONENT nametab-fieldname OF STRUCTURE  TO .&lt;/P&gt;&lt;P&gt;      IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;         = .&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP .&lt;/P&gt;&lt;P&gt;    CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    INSERT INTO (tab_nam2) VALUES .&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0 .&lt;/P&gt;&lt;P&gt;      UPDATE (tab_nam2) FROM .&lt;/P&gt;&lt;P&gt;    ENDIF .&lt;/P&gt;&lt;P&gt;    ADD 1 TO count_commit .&lt;/P&gt;&lt;P&gt;    IF count_commit = '10000' .&lt;/P&gt;&lt;P&gt;      COMMIT WORK .&lt;/P&gt;&lt;P&gt;      count_commit = 0 .&lt;/P&gt;&lt;P&gt;    ENDIF .&lt;/P&gt;&lt;P&gt;    WRITE :    .&lt;/P&gt;&lt;P&gt;  ENDLOOP .&lt;/P&gt;&lt;P&gt;ENDFORM.              " z_define_itab&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;      Form  select_with_where&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;FORM select_with_where.&lt;/P&gt;&lt;P&gt;  IF NOT where1 IS INITIAL .&lt;/P&gt;&lt;P&gt;    twhere-line = where1 . APPEND twhere .&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  IF NOT where2 IS INITIAL .&lt;/P&gt;&lt;P&gt;    twhere-line = where2 . APPEND twhere .&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  IF NOT where3 IS INITIAL .&lt;/P&gt;&lt;P&gt;    twhere-line = where3 . APPEND twhere .&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  IF NOT where4 IS INITIAL .&lt;/P&gt;&lt;P&gt;    twhere-line = where4 . APPEND twhere .&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  REFRESH prog_tab.&lt;/P&gt;&lt;P&gt;  append_line 'REPORT ZGEN .'.&lt;/P&gt;&lt;P&gt;  append_line 'TABLES:'.&lt;/P&gt;&lt;P&gt;  append_line tab_name.&lt;/P&gt;&lt;P&gt;  append_line '.'.&lt;/P&gt;&lt;P&gt;  append_line 'DATA: ITAB LIKE'.&lt;/P&gt;&lt;P&gt;  append_line tab_name.&lt;/P&gt;&lt;P&gt;  append_line 'OCCURS 0 WITH HEADER LINE.'.&lt;/P&gt;&lt;P&gt;  append_line 'FORM SELECT_TABLE.'.&lt;/P&gt;&lt;P&gt;  append_line 'SELECT * FROM'.&lt;/P&gt;&lt;P&gt;  append_line tab_name.&lt;/P&gt;&lt;P&gt;  IF  pclient = 'X'.&lt;/P&gt;&lt;P&gt;    append_line 'CLIENT SPECIFIED'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  append_line 'INTO TABLE ITAB'.&lt;/P&gt;&lt;P&gt;  append_line 'WHERE '.&lt;/P&gt;&lt;P&gt;  LOOP AT twhere.&lt;/P&gt;&lt;P&gt;    append_line twhere.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  append_line ' . '.&lt;/P&gt;&lt;P&gt;  append_line 'ENDFORM.'.&lt;/P&gt;&lt;P&gt;  PERFORM generate_form .&lt;/P&gt;&lt;P&gt;ENDFORM.                    " select_with_where&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;      Form  generate_form&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;FORM generate_form .&lt;/P&gt;&lt;P&gt;  GENERATE SUBROUTINE POOL prog_tab   NAME zprogram&lt;/P&gt;&lt;P&gt;           MESSAGE zmessage LINE no_line .&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    WRITE: / 'Syntax error : ', zmessage,&lt;/P&gt;&lt;P&gt;           / 'in line', no_line .&lt;/P&gt;&lt;P&gt;    STOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  SELECT * FROM (tab_name) INTO  TABLE &lt;/P&gt;&lt;P&gt;  WHERE (twhere)  .&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also see this &lt;A class="jive_macro jive_macro_thread" href="https://community.sap.com/" __jive_macro_name="thread" modifiedtitle="true" __default_attr="73116"&gt;&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 01 Feb 2006 04:56:11 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-02-01T04:56:11Z</dc:date>
    <item>
      <title>Dynamic internal tablw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119054#M108363</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi friends,do anyone of  u have any  matereial or doc to get familiar to create Dynamic internal table in  sap,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;please send me.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Deepak Sodhi - Siemens.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Feb 2006 04:52:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119054#M108363</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-01T04:52:21Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal tablw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119055#M108364</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can create dynamic internal tables using..&lt;/P&gt;&lt;P&gt;field-symbols: &amp;lt;table&amp;gt; type any.&lt;/P&gt;&lt;P&gt;types: fieldref type ref to data.&lt;/P&gt;&lt;P&gt;data: dyn_table type fieldref.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As for the actual code to generate the table:&lt;/P&gt;&lt;P&gt;create data dyn_table type (SAP Table).&lt;/P&gt;&lt;P&gt;assign dyn_table-&amp;gt;* to table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT zselect_dynamic  LINE-SIZE 132&lt;/P&gt;&lt;P&gt;                        LINE-COUNT 65(1)&lt;/P&gt;&lt;P&gt;                        NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                        MESSAGE-ID z1.&lt;/P&gt;&lt;P&gt;TYPES ztab LIKE dcobjdef-name .&lt;/P&gt;&lt;P&gt;PARAMETERS: tab_name TYPE ztab   DEFAULT 'Z?????' ,&lt;/P&gt;&lt;P&gt;            tab_nam2 TYPE ztab   DEFAULT 'Z?????' ,&lt;/P&gt;&lt;P&gt;            pclient AS CHECKBOX .&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP .&lt;/P&gt;&lt;P&gt;PARAMETERS: where1(80) ,&lt;/P&gt;&lt;P&gt;            where2(80) ,&lt;/P&gt;&lt;P&gt;            where3(80) ,&lt;/P&gt;&lt;P&gt;            where4(80) .&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;DATA : lcode(72),&lt;/P&gt;&lt;P&gt;       prog_tab LIKE lcode OCCURS 0 WITH HEADER LINE .&lt;/P&gt;&lt;P&gt;DEFINE append_line.&lt;/P&gt;&lt;P&gt;  append &amp;amp;1 to prog_tab.&lt;/P&gt;&lt;P&gt;END-OF-DEFINITION.&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF nametab OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE dntab.&lt;/P&gt;&lt;P&gt;DATA:    END OF nametab.&lt;/P&gt;&lt;P&gt;DATA:  BEGIN  OF  twhere OCCURS  20,&lt;/P&gt;&lt;P&gt;        line(80),&lt;/P&gt;&lt;P&gt;END  OF twhere.&lt;/P&gt;&lt;P&gt;DATA: zprogram LIKE sy-cprog,&lt;/P&gt;&lt;P&gt;      no_line  TYPE i,&lt;/P&gt;&lt;P&gt;      zmessage(150) ,&lt;/P&gt;&lt;P&gt;      count_commit TYPE i .&lt;/P&gt;&lt;P&gt;DATA:  d_ref       TYPE REF TO data,&lt;/P&gt;&lt;P&gt;       d_ref2      TYPE REF TO data ,&lt;/P&gt;&lt;P&gt;       lt_alv_cat  TYPE TABLE OF lvc_s_fcat,&lt;/P&gt;&lt;P&gt;       ls_alv_cat  LIKE LINE OF lt_alv_cat.&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS :      TYPE table,&lt;/P&gt;&lt;P&gt;                  ,&lt;/P&gt;&lt;P&gt;                  ,"TYPE ANY ,&lt;/P&gt;&lt;P&gt;                  ,&lt;/P&gt;&lt;P&gt;                 .&lt;/P&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------" /&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Main program.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------" /&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------" /&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Main program.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------" /&gt;&lt;P&gt;  PERFORM z_define_itab .&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;      Form  z_define_itab&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;FORM z_define_itab .&lt;/P&gt;&lt;P&gt;  CHECK ( tab_name(01) = 'Z'  OR  tab_name(01) = 'Y' )&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if you want treat tables with your namespace, insert here your code&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  AND   ( tab_nam2(01) = 'Z'  OR  tab_nam2(01) = 'Y' ) .&lt;/P&gt;&lt;P&gt;  REFRESH  nametab.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'NAMETAB_GET'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            langu          = sy-langu&lt;/P&gt;&lt;P&gt;            tabname        = tab_name&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            nametab        = nametab&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            no_texts_found = 1.&lt;/P&gt;&lt;P&gt;  LOOP AT nametab .&lt;/P&gt;&lt;P&gt;    ls_alv_cat-fieldname     = nametab-fieldname .&lt;/P&gt;&lt;P&gt;    ls_alv_cat-ref_table     = tab_name.&lt;/P&gt;&lt;P&gt;    ls_alv_cat-ref_field     = nametab-fieldname .&lt;/P&gt;&lt;P&gt;    APPEND ls_alv_cat TO lt_alv_cat.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;internal table build&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 it_fieldcatalog = lt_alv_cat&lt;/P&gt;&lt;P&gt;     IMPORTING ep_table = d_ref .&lt;/P&gt;&lt;P&gt;  ASSIGN d_ref-&amp;gt;* TO .&lt;/P&gt;&lt;P&gt;  IF where1 IS INITIAL AND where2 IS INITIAL&lt;/P&gt;&lt;P&gt;  AND where3 IS INITIAL AND where4 IS INITIAL .&lt;/P&gt;&lt;P&gt;    SELECT * FROM (tab_name) INTO  TABLE  .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            ORDER BY PRIMARY KEY.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ELSE .&lt;/P&gt;&lt;P&gt;    PERFORM select_with_where .&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE  LINES sy-tfill .&lt;/P&gt;&lt;P&gt;  IF sy-tfill = 0 .&lt;/P&gt;&lt;P&gt;    MESSAGE i000 WITH&lt;/P&gt;&lt;P&gt;      'Data not selected, verify the tables or conditions ! ' .&lt;/P&gt;&lt;P&gt;    STOP .&lt;/P&gt;&lt;P&gt;  ELSE .&lt;/P&gt;&lt;P&gt;    MESSAGE s000 WITH 'You have successfully treated yours tables.'.&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  CREATE DATA d_ref2 TYPE (tab_nam2).&lt;/P&gt;&lt;P&gt;  ASSIGN d_ref2-&amp;gt;* TO    .&lt;/P&gt;&lt;P&gt;  LOOP AT  ASSIGNING  .&lt;/P&gt;&lt;P&gt;    CLEAR  .&lt;/P&gt;&lt;P&gt;    LOOP AT nametab .&lt;/P&gt;&lt;P&gt;      ASSIGN COMPONENT nametab-fieldname&lt;/P&gt;&lt;P&gt;                          OF STRUCTURE  TO .&lt;/P&gt;&lt;P&gt;      IF sy-subrc &amp;lt;&amp;gt; 0. EXIT. ENDIF.&lt;/P&gt;&lt;P&gt;      ASSIGN COMPONENT nametab-fieldname OF STRUCTURE  TO .&lt;/P&gt;&lt;P&gt;      IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;         = .&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP .&lt;/P&gt;&lt;P&gt;    CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    INSERT INTO (tab_nam2) VALUES .&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0 .&lt;/P&gt;&lt;P&gt;      UPDATE (tab_nam2) FROM .&lt;/P&gt;&lt;P&gt;    ENDIF .&lt;/P&gt;&lt;P&gt;    ADD 1 TO count_commit .&lt;/P&gt;&lt;P&gt;    IF count_commit = '10000' .&lt;/P&gt;&lt;P&gt;      COMMIT WORK .&lt;/P&gt;&lt;P&gt;      count_commit = 0 .&lt;/P&gt;&lt;P&gt;    ENDIF .&lt;/P&gt;&lt;P&gt;    WRITE :    .&lt;/P&gt;&lt;P&gt;  ENDLOOP .&lt;/P&gt;&lt;P&gt;ENDFORM.              " z_define_itab&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;      Form  select_with_where&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;FORM select_with_where.&lt;/P&gt;&lt;P&gt;  IF NOT where1 IS INITIAL .&lt;/P&gt;&lt;P&gt;    twhere-line = where1 . APPEND twhere .&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  IF NOT where2 IS INITIAL .&lt;/P&gt;&lt;P&gt;    twhere-line = where2 . APPEND twhere .&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  IF NOT where3 IS INITIAL .&lt;/P&gt;&lt;P&gt;    twhere-line = where3 . APPEND twhere .&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  IF NOT where4 IS INITIAL .&lt;/P&gt;&lt;P&gt;    twhere-line = where4 . APPEND twhere .&lt;/P&gt;&lt;P&gt;  ENDIF .&lt;/P&gt;&lt;P&gt;  REFRESH prog_tab.&lt;/P&gt;&lt;P&gt;  append_line 'REPORT ZGEN .'.&lt;/P&gt;&lt;P&gt;  append_line 'TABLES:'.&lt;/P&gt;&lt;P&gt;  append_line tab_name.&lt;/P&gt;&lt;P&gt;  append_line '.'.&lt;/P&gt;&lt;P&gt;  append_line 'DATA: ITAB LIKE'.&lt;/P&gt;&lt;P&gt;  append_line tab_name.&lt;/P&gt;&lt;P&gt;  append_line 'OCCURS 0 WITH HEADER LINE.'.&lt;/P&gt;&lt;P&gt;  append_line 'FORM SELECT_TABLE.'.&lt;/P&gt;&lt;P&gt;  append_line 'SELECT * FROM'.&lt;/P&gt;&lt;P&gt;  append_line tab_name.&lt;/P&gt;&lt;P&gt;  IF  pclient = 'X'.&lt;/P&gt;&lt;P&gt;    append_line 'CLIENT SPECIFIED'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  append_line 'INTO TABLE ITAB'.&lt;/P&gt;&lt;P&gt;  append_line 'WHERE '.&lt;/P&gt;&lt;P&gt;  LOOP AT twhere.&lt;/P&gt;&lt;P&gt;    append_line twhere.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  append_line ' . '.&lt;/P&gt;&lt;P&gt;  append_line 'ENDFORM.'.&lt;/P&gt;&lt;P&gt;  PERFORM generate_form .&lt;/P&gt;&lt;P&gt;ENDFORM.                    " select_with_where&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;      Form  generate_form&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;FORM generate_form .&lt;/P&gt;&lt;P&gt;  GENERATE SUBROUTINE POOL prog_tab   NAME zprogram&lt;/P&gt;&lt;P&gt;           MESSAGE zmessage LINE no_line .&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    WRITE: / 'Syntax error : ', zmessage,&lt;/P&gt;&lt;P&gt;           / 'in line', no_line .&lt;/P&gt;&lt;P&gt;    STOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  SELECT * FROM (tab_name) INTO  TABLE &lt;/P&gt;&lt;P&gt;  WHERE (twhere)  .&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also see this &lt;A class="jive_macro jive_macro_thread" href="https://community.sap.com/" __jive_macro_name="thread" modifiedtitle="true" __default_attr="73116"&gt;&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Feb 2006 04:56:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119055#M108364</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-01T04:56:11Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal tablw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119056#M108365</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI &lt;/P&gt;&lt;P&gt;Try this&lt;/P&gt;&lt;P&gt;===================================== &lt;/P&gt;&lt;P&gt;REPORT zmaschl_create_data_dynamic . &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: slis. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: it_fcat TYPE slis_t_fieldcat_alv, &lt;/P&gt;&lt;P&gt;is_fcat LIKE LINE OF it_fcat. &lt;/P&gt;&lt;P&gt;DATA: it_fieldcat TYPE lvc_t_fcat, &lt;/P&gt;&lt;P&gt;is_fieldcat LIKE LINE OF it_fieldcat. &lt;/P&gt;&lt;P&gt;DATA: new_table TYPE REF TO data. &lt;/P&gt;&lt;P&gt;DATA: new_line TYPE REF TO data. &lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;l_table&amp;gt; TYPE ANY TABLE, &lt;/P&gt;&lt;P&gt;&amp;lt;l_line&amp;gt; TYPE ANY, &lt;/P&gt;&lt;P&gt;&amp;lt;l_field&amp;gt; TYPE ANY. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Build fieldcat &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 = 'SYST' &lt;/P&gt;&lt;P&gt;CHANGING &lt;/P&gt;&lt;P&gt;ct_fieldcat = it_fcat[]. &lt;/P&gt;&lt;P&gt;LOOP AT it_fcat INTO is_fcat WHERE NOT reptext_ddic IS initial. &lt;/P&gt;&lt;P&gt;MOVE-CORRESPONDING is_fcat TO is_fieldcat. &lt;/P&gt;&lt;P&gt;is_fieldcat-fieldname = is_fcat-fieldname. &lt;/P&gt;&lt;P&gt;is_fieldcat-ref_field = is_fcat-fieldname. &lt;/P&gt;&lt;P&gt;is_fieldcat-ref_table = is_fcat-ref_tabname. &lt;/P&gt;&lt;P&gt;APPEND is_fieldcat TO it_fieldcat. &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;Create a new 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 = it_fieldcat &lt;/P&gt;&lt;P&gt;IMPORTING &lt;/P&gt;&lt;P&gt;ep_table = new_table. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create a new Line with the same structure of the table. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ASSIGN new_table-&amp;gt;* TO &amp;lt;l_table&amp;gt;. &lt;/P&gt;&lt;P&gt;CREATE DATA new_line LIKE LINE OF &amp;lt;l_table&amp;gt;. &lt;/P&gt;&lt;P&gt;ASSIGN new_line-&amp;gt;* TO &amp;lt;l_line&amp;gt;. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Test it... &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DO 30 TIMES. &lt;/P&gt;&lt;P&gt;ASSIGN COMPONENT 'SUBRC' OF STRUCTURE &amp;lt;l_line&amp;gt; TO &amp;lt;l_field&amp;gt;. &lt;/P&gt;&lt;P&gt;&amp;lt;l_field&amp;gt; = sy-index. &lt;/P&gt;&lt;P&gt;INSERT &amp;lt;l_line&amp;gt; INTO TABLE &amp;lt;l_table&amp;gt;. &lt;/P&gt;&lt;P&gt;ENDDO. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT &amp;lt;l_table&amp;gt; ASSIGNING &amp;lt;l_line&amp;gt;. &lt;/P&gt;&lt;P&gt;ASSIGN COMPONENT 'SUBRC' OF STRUCTURE &amp;lt;l_line&amp;gt; TO &amp;lt;l_field&amp;gt;. &lt;/P&gt;&lt;P&gt;WRITE &amp;lt;l_field&amp;gt;. &lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers:)&lt;/P&gt;&lt;P&gt;Mithlesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Feb 2006 04:58:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119056#M108365</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-01T04:58:32Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal tablw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119057#M108366</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt;You can create a simple dynamic table using this piece of code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: i_table type  ref to data.&lt;/P&gt;&lt;P&gt;field-symbols : &amp;lt;list&amp;gt;     type  table . &lt;/P&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_alv_cat&lt;/P&gt;&lt;P&gt;       importing&lt;/P&gt;&lt;P&gt;         ep_table        = i_table .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;assign i_table-&amp;gt;* to &amp;lt;list&amp;gt; .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Feb 2006 04:59:18 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119057#M108366</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-01T04:59:18Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal tablw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119058#M108367</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Deepak,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check this thread..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_thread" href="https://community.sap.com/" __jive_macro_name="thread" modifiedtitle="true" __default_attr="79166"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and search for some topics..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Feb 2006 04:59:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119058#M108367</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-01T04:59:26Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal tablw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119059#M108368</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;&lt;/P&gt;&lt;P&gt;refer this link for simple example&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/ab030.htm" target="test_blank"&gt;http://www.sap-img.com/ab030.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;kishore&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Feb 2006 05:00:48 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119059#M108368</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-01T05:00:48Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal tablw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119060#M108369</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;for creating dynmic int table follow the following steps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;example: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of itab occurs 0,&lt;/P&gt;&lt;P&gt;sno type i,&lt;/P&gt;&lt;P&gt;sname(10),&lt;/P&gt;&lt;P&gt;marks type i,&lt;/P&gt;&lt;P&gt;end of itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now my requirement is like below, marks should become headings of alv grid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; we donno how many marks will come. so , the requirement is dynamic.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sno| sname| 80 | 90 | 78 | 77...........&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;build a LVC fieldcat like below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ls_fieldcat-fieldname = 'SNO'.&lt;/P&gt;&lt;P&gt;ls_fieldcat-col_text = 'SNO'.&lt;/P&gt;&lt;P&gt;append ls_fieldcat to lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ls_fieldcat-fieldname = 'SNAME'.&lt;/P&gt;&lt;P&gt;ls_fieldcat-col_text = 'SNAME'.&lt;/P&gt;&lt;P&gt;append ls_fieldcat to lt_fieldcat.&lt;/P&gt;&lt;P&gt;*******&lt;STRONG&gt;for marks&lt;/STRONG&gt;*********&lt;/P&gt;&lt;P&gt;loop at itab&lt;/P&gt;&lt;P&gt;ls_fieldcat-fieldname = itab-marks.&lt;/P&gt;&lt;P&gt;ls_fieldcat-col_text = itab-marks.&lt;/P&gt;&lt;P&gt;append ls_fieldcat to lt_fieldcat.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;**************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. NOW THE FIELDCAT IS UILT.  WE HAVE TO BUILD AN INTERNAL TABLE FROM THE FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: DREF TYPE REF TO DATA,WA_REF TYPE REF TO DATA.&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;TEMP_TAB&amp;gt; TYPE TABLE, &amp;lt;TEMP_WA&amp;gt; TYPE ANY.&lt;/P&gt;&lt;P&gt;&lt;/P&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_LVCFIELDCAT&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      EP_TABLE        = DREF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ASSIGN dref-&amp;gt;*  TO &amp;lt;TEMP_TAB&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;temp_tab&amp;gt; is the dynamic internal table built from fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. NOW FILL THE DYNAMIC INTERNAL TABLE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CREATE DATA WA_REF LIKE LINE OF &amp;lt;TEMP_TAB&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ASSIGN WA_REF-&amp;gt;* TO &amp;lt;TEMP_WA&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT ITAB.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING ITAB TO &amp;lt;TEMP_WA&amp;gt;.&lt;/P&gt;&lt;P&gt;    APPEND &amp;lt;TEMP_WA&amp;gt; TO &amp;lt;TEMP_TAB&amp;gt;.&lt;/P&gt;&lt;P&gt;    CLEAR IT_ITAB.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " FILL_DYN_TAB&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Feb 2006 05:02:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119060#M108369</guid>
      <dc:creator>hymavathi_oruganti</dc:creator>
      <dc:date>2006-02-01T05:02:21Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal tablw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119061#M108370</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;You can also Try this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: mara, makt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: slis.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: it_fcat&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fcat LIKE LINE OF it_fcat,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ls_layout TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: it_fieldcat TYPE lvc_t_fcat,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fieldcat LIKE LINE OF&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: new_table TYPE REF TO data,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;new_line TYPE REF TO data,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_cont_alv TYPE REF TO cl_gui_custom_container,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ob_alv TYPE REF TO cl_gui_alv_grid,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;vg_campos(255) TYPE c,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i_campos LIKE TABLE OF vg_campos,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;vg_campo(30) TYPE c,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;vg_tables(60) TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DATA: e_params LIKE zutsvga_alv_01.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;l_table&amp;gt; TYPE table,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;l_line&amp;gt; TYPE ANY,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;l_field&amp;gt; TYPE ANY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: p_max(2) TYPE n DEFAULT '20' OBLIGATORY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fcat-fieldname = 'COL01'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fcat-ref_fieldname = 'MATNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fcat-ref_tabname = 'MARA'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND is_fcat TO it_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fcat-fieldname = 'COL02'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fcat-ref_fieldname = 'MAKTX'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fcat-ref_tabname = 'MAKT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND is_fcat TO it_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT it_fcat INTO is_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fieldcat-fieldname = is_fcat-fieldname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fieldcat-ref_field = is_fcat-ref_fieldname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is_fieldcat-ref_table = is_fcat-ref_tabname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND is_fieldcat TO it_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONCATENATE is_fieldcat-ref_table is_fieldcat-ref_field INTO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;vg_campos SEPARATED BY '~'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND vg_campos TO i_campos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*... Create the dynamic internal table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL METHOD cl_alv_table_create=&amp;gt;create_dynamic_table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it_fieldcatalog = it_fieldcat&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ep_table = new_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*... Create a new line&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ASSIGN new_table-&amp;gt;* TO &amp;lt;l_table&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CREATE DATA new_line LIKE LINE OF &amp;lt;l_table&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ASSIGN new_line-&amp;gt;* TO &amp;lt;l_line&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT (i_campos) FROM mara INNER JOIN makt ON mara&lt;SUB&gt;matnr = makt&lt;/SUB&gt;matnr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;UP TO P_MAX ROWS INTO TABLE &amp;lt;l_table&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;describe table &amp;lt;l_table&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; sy-tfill.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT &amp;lt;l_table&amp;gt; INTO &amp;lt;l_line&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT it_fcat INTO is_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ASSIGN COMPONENT is_fcat-fieldname OF STRUCTURE &amp;lt;l_line&amp;gt; TO &amp;lt;l_field&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF sy-tabix = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE: /2 &amp;lt;l_field&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE: &amp;lt;l_field&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers:)&lt;/P&gt;&lt;P&gt;Mithlesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Feb 2006 05:03:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119061#M108370</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-01T05:03:21Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal tablw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119062#M108371</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Deepak,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can refer to :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/people/subramanian.venkateswaran2/blog/2004/11/19/dynamic-internal-table&lt;/P&gt;&lt;P&gt;/people/rich.heilman2/blog/2005/07/27/dynamic-internal-tables-and-structures--abap&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and many more weblogs... just use the search button on the top left hand and there are many articles on Dynamic internal table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;Subramanian V.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Feb 2006 05:13:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-tablw/m-p/1119062#M108371</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-01T05:13:50Z</dc:date>
    </item>
  </channel>
</rss>

