<?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 table in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656224#M880693</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;please refer to this link there u can find examples on dynamic itab&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;rgds,&lt;/P&gt;&lt;P&gt;bharat.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 03 Apr 2008 09:00:04 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-04-03T09:00:04Z</dc:date>
    <item>
      <title>Dynamic internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656223#M880692</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi to all&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     Can you explain me what is dynamic internal table?&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;thanks in advance&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Apr 2008 08:58:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656223#M880692</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-03T08:58:34Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656224#M880693</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;please refer to this link there u can find examples on dynamic itab&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;rgds,&lt;/P&gt;&lt;P&gt;bharat.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Apr 2008 09:00:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656224#M880693</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-03T09:00:04Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656225#M880694</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;PRE&gt;&lt;CODE&gt;REPORT Z_DYNITALV.

TYPE-POOLS: slis.
DATA :



VARIABLES for function REUSE_ALV_DISPLAY 
Interface consistency check log output 
i_interface_check,

Ignore all buffers? 
i_bypassing_buffer TYPE char01,

Buffer active 
i_buffer_active VALUE space,

Name of the calling program 
i_callback_program LIKE sy-repid VALUE space,

Set EXIT rountine to status 
i_callback_pf_status_set TYPE slis_formname VALUE space,

EXIT routine for command handling 
i_callback_user_command TYPE slis_formname VALUE space,

Internal output table structure name 
i_structure_name LIKE dd02l-tabname,

List layout specifications 
is_layout TYPE slis_layout_alv,

Field catalog with field descriptions 
it_fieldcat TYPE slis_t_fieldcat_alv,

Table of inactive function codes 
it_excluding TYPE slis_t_extab,

Grouping fields for column selection 
it_special_groups TYPE slis_t_sp_group_alv,

Sort criteria for first list display 
it_sort TYPE slis_t_sortinfo_alv WITH HEADER LINE,

Filter criteria for first list output 
it_filter TYPE slis_t_filter_alv,

Selection information modification 
is_sel_hide TYPE slis_sel_hide_alv,

Initial variant active/inactive logic 
i_default VALUE 'X',

Variants can be saved 
i_save VALUE space,

Variant information 
is_variant LIKE disvariant,

Table of events to perform 
it_events TYPE slis_t_event,

Standard fcode exit requests table 
it_event_exit TYPE slis_t_event_exit,

Print information 
is_print TYPE slis_print_alv,

Initialization key for Re/Re interface 
is_reprep_id TYPE slis_reprep_id,

Coordinates for list in dialog box 
i_screen_start_column VALUE 0,

Coordinates for list in dialog box 
i_screen_start_line VALUE 0,

Coordinates for list in dialog box 
i_screen_end_column VALUE 0,

Coordinates for list in dialog box 
i_screen_end_line VALUE 0,
e_exit_caused_by_caller,
es_exit_caused_by_user TYPE slis_exit_by_user,

Temporary structure for it_fieldcat 
xfield TYPE slis_fieldcat_alv,

Temporary structure for it_events 
xxevent TYPE slis_alv_event.

DATA: new_table TYPE REF TO data,
new_line TYPE REF TO data,
IS_LVC_CAT type LVC_S_FCAT,
IT_LVC_CAT type LVC_T_FCAT,
IS_FIELDCAT type SLIS_FIELDCAT_ALV.

FIELD-SYMBOLS: &amp;lt;l_table&amp;gt; TYPE TABLE,
&amp;lt;l_line&amp;gt; TYPE ANY,
&amp;lt;l_field&amp;gt; TYPE ANY.Main Program

START-OF-SELECTION.
PERFORM Field_Catalog.
PERFORM SET_DATA.
PERFORM DISPLAY_ALV.FORM Field_Catalog.
Here we create the field catalog for dynamic internal table.
And create table dynamicly using method: create_dynamic_table from class: cl_alv_table_create.

FORM Field_Catalog .

IS_LVC_CAT-fieldname = 'BUKRS'.
IS_LVC_CAT-ref_field = 'BUKRS'.
IS_LVC_CAT-ref_table = 'PA0001'.
IS_LVC_CAT-SCRTEXT_S = IS_LVC_CAT-SCRTEXT_M =
IS_LVC_CAT-SCRTEXT_L = 'Company Code'.
APPEND IS_LVC_CAT TO IT_LVC_CAT.

IS_FIELDCAT-fieldname = 'BUKRS'.
IS_FIELDCAT-ref_fieldname = 'BUKRS'.
IS_FIELDCAT-ref_tabname = 'PA0001'.
IS_FIELDCAT-OUTPUTLEN = 10.
IS_FIELDCAT-SELTEXT_S = IS_FIELDCAT-SELTEXT_M =
IS_FIELDCAT-SELTEXT_L = 'Company Code'.
APPEND IS_FIELDCAT TO IT_FIELDCAT.

IS_LVC_CAT-fieldname = 'WERKS'.
IS_LVC_CAT-ref_field = 'WERKS'.
IS_LVC_CAT-ref_table = 'PA0001'.
IS_LVC_CAT-SCRTEXT_S = IS_LVC_CAT-SCRTEXT_M =
IS_LVC_CAT-SCRTEXT_L = 'Pers.Area'.
APPEND IS_LVC_CAT TO IT_LVC_CAT.

IS_FIELDCAT-fieldname = 'WERKS'.
IS_FIELDCAT-ref_fieldname = 'WERKS'.
IS_FIELDCAT-ref_tabname = 'PA0001'.
IS_FIELDCAT-OUTPUTLEN = 10.
IS_FIELDCAT-SELTEXT_S = IS_FIELDCAT-SELTEXT_M =
IS_FIELDCAT-SELTEXT_L = 'Pers.Area'.
APPEND IS_FIELDCAT TO IT_FIELDCAT.

IS_LVC_CAT-fieldname = 'BTRTL'.
IS_LVC_CAT-ref_field = 'BTRTL'.
IS_LVC_CAT-ref_table = 'PA0001'.
IS_LVC_CAT-SCRTEXT_S = IS_LVC_CAT-SCRTEXT_M =
IS_LVC_CAT-SCRTEXT_L = 'Pers.SubArea'.
APPEND IS_LVC_CAT TO IT_LVC_CAT.

IS_FIELDCAT-fieldname = 'BTRTL'.
IS_FIELDCAT-ref_fieldname = 'BTRTL'.
IS_FIELDCAT-ref_tabname = 'PA0001'.
IS_FIELDCAT-OUTPUTLEN = 10.
IS_FIELDCAT-SELTEXT_S = IS_FIELDCAT-SELTEXT_M =
IS_FIELDCAT-SELTEXT_L = 'Pers.SubArea'.
APPEND IS_FIELDCAT TO IT_FIELDCAT.

IS_LVC_CAT-fieldname = 'CNAME'.
IS_LVC_CAT-ref_field = 'CNAME'.
IS_LVC_CAT-ref_table = 'PA0002'.
IS_LVC_CAT-SCRTEXT_S = IS_LVC_CAT-SCRTEXT_M =
IS_LVC_CAT-SCRTEXT_L = 'Name'.
APPEND IS_LVC_CAT TO IT_LVC_CAT.

IS_FIELDCAT-fieldname = 'CNAME'.
IS_FIELDCAT-ref_fieldname = 'CNAME'.
IS_FIELDCAT-ref_tabname = 'PA0002'.
IS_FIELDCAT-OUTPUTLEN = 20.
IS_FIELDCAT-SELTEXT_S = IS_FIELDCAT-SELTEXT_M =
IS_FIELDCAT-SELTEXT_L = 'Name'.
APPEND IS_FIELDCAT TO IT_FIELDCAT.



Create a new Table 
CALL METHOD cl_alv_table_create=&amp;gt;create_dynamic_table
EXPORTING
it_fieldcatalog = IT_LVC_CAT
IMPORTING
ep_table = new_table.


Create a new Line with the same structure of the table. 
ASSIGN new_table-&amp;gt;* TO &amp;lt;l_table&amp;gt;.
CREATE DATA new_line LIKE LINE OF &amp;lt;l_table&amp;gt;.
ASSIGN new_line-&amp;gt;* TO &amp;lt;l_line&amp;gt;.

ENDFORM. " CREATE_LAYOUTForm Set_Data.
Here we input our data.

FORM SET_DATA .

Test it... 
DO 3 TIMES.
ASSIGN COMPONENT 'BUKRS' OF STRUCTURE &amp;lt;l_line&amp;gt; TO &amp;lt;l_field&amp;gt;.
&amp;lt;l_field&amp;gt; = '8369'.

ASSIGN COMPONENT 'WERKS' OF STRUCTURE &amp;lt;l_line&amp;gt; TO &amp;lt;l_field&amp;gt;.
&amp;lt;l_field&amp;gt; = '1000'.

ASSIGN COMPONENT 'BTRTL' OF STRUCTURE &amp;lt;l_line&amp;gt; TO &amp;lt;l_field&amp;gt;.
&amp;lt;l_field&amp;gt; = '0100'.

ASSIGN COMPONENT 'CNAME' OF STRUCTURE &amp;lt;l_line&amp;gt; TO &amp;lt;l_field&amp;gt;.
&amp;lt;l_field&amp;gt; = 'Test Employee Name'.

INSERT &amp;lt;l_line&amp;gt; INTO TABLE &amp;lt;l_table&amp;gt;.
ENDDO.
ENDFORM. " SET_DATAForm Display_ALV
We display our data using FM: 'REUSE_ALV_LIST_DISPLAY'.

FORM DISPLAY_ALV .


SET PAGE HEADER &amp;amp; END LIST. 
CLEAR xxevent.
xxevent-name = 'TOP_OF_PAGE'.
xxevent-form = 'TOP_OF_PAGE_ALV'.
APPEND xxevent TO it_events.

CLEAR xxevent.
xxevent-name = 'END_OF_LIST'.
xxevent-form = 'END_OF_LIST_ALV'.
APPEND xxevent TO it_events.


Layout 
IS_LAYOUT-COLWIDTH_OPTIMIZE = ''.


setting variant 
is_variant-variant = p_var. 
is_variant-report = sy-repid.
is_variant-username = sy-uname.

others 
i_save = 'A'.
i_callback_program = sy-repid.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_interface_check = i_interface_check
i_bypassing_buffer = i_bypassing_buffer
i_buffer_active = i_buffer_active
i_callback_program = i_callback_program
i_callback_pf_status_set = i_callback_pf_status_set
i_callback_user_command = i_callback_user_command
i_structure_name = i_structure_name
is_layout = is_layout
it_fieldcat = it_fieldcat
it_excluding = it_excluding
it_special_groups = it_special_groups
it_sort = it_sort[]
it_filter = it_filter
is_sel_hide = is_sel_hide
i_default = i_default
i_save = i_save
is_variant = is_variant
it_events = it_events
it_event_exit = it_event_exit
is_print = is_print
is_reprep_id = is_reprep_id

i_screen_start_column = i_screen_start_column 
i_screen_start_line = i_screen_start_line
i_screen_end_column = i_screen_end_column
i_screen_end_line = i_screen_end_line
IMPORTING
e_exit_caused_by_caller = e_exit_caused_by_caller
es_exit_caused_by_user = es_exit_caused_by_user
TABLES
t_outtab = &amp;lt;l_table&amp;gt;
EXCEPTIONS
program_error = 1
OTHERS = 2.

.
IF SY-SUBRC 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " DISPLAY_ALVForm TOP_OF_PAGE_ALV and END_OF_LIST_ALV.
Here where we can put Report header and footer text.

FORM TOP_OF_PAGE_ALV .
WRITE: 'Here Your Report Header'.
WRITE:/'Sub Report Header '.
SKIP.
ENDFORM. " TOP_OF_PAGE_ALV

FORM END_OF_LIST_ALV .
WRITE:/'Here Your Report Footer'.
WRITE:/'Sub Report Footer '.
SKIP.
ENDFORM. " END_OF_LIST_ALV&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;V.Balaji&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward if Usefull...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Apr 2008 09:00:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656225#M880694</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-03T09:00:50Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656226#M880695</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mahesh,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;DEFINITION&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Dynamic internal table is internal table that we create on the fly with flexible column numbers. &lt;/P&gt;&lt;P&gt;For sample code, please look at this code tutorial. Hopefully it can help you &lt;SPAN __jive_emoticon_name="wink"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;SAMPLE CODE&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;pls go through this program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report z_dynamic.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;type-pools : abap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;field-symbols: &amp;lt;dyn_table&amp;gt; type standard table,&lt;/P&gt;&lt;P&gt;&amp;lt;dyn_wa&amp;gt;,&lt;/P&gt;&lt;P&gt;&amp;lt;dyn_field&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: dy_table type ref to data,&lt;/P&gt;&lt;P&gt;dy_line type ref to data,&lt;/P&gt;&lt;P&gt;xfc type lvc_s_fcat,&lt;/P&gt;&lt;P&gt;ifc type lvc_t_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen begin of block b1 with frame.&lt;/P&gt;&lt;P&gt;parameters: p_table(30) type c default 'T001'.&lt;/P&gt;&lt;P&gt;selection-screen end of block b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform get_structure.&lt;/P&gt;&lt;P&gt;perform create_dynamic_itab.&lt;/P&gt;&lt;P&gt;perform get_data.&lt;/P&gt;&lt;P&gt;perform write_out.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form create_dynamic_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Create dynamic internal table and assign to FS &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 = ifc&lt;/P&gt;&lt;P&gt;importing&lt;/P&gt;&lt;P&gt;ep_table = dy_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;assign dy_table-&amp;gt;* to &amp;lt;dyn_table&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Create dynamic work area and assign to FS &lt;/P&gt;&lt;P&gt;create data dy_line like line of &amp;lt;dyn_table&amp;gt;.&lt;/P&gt;&lt;P&gt;assign dy_line-&amp;gt;* to &amp;lt;dyn_wa&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Kindly Reward Points If You Found The Reply Helpful&lt;/STRONG&gt;,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Chaitanya.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Apr 2008 09:01:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656226#M880695</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-03T09:01:38Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656227#M880696</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;Description:&lt;/P&gt;&lt;P&gt;Below is a simple program that create Internal Table dynamicly and display it as ALV with header and footer text.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Type, Data and Fields-Symbols declaration:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT Z_DYNITALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: slis.&lt;/P&gt;&lt;P&gt;DATA :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;VARIABLES for function REUSE_ALV_DISPLAY &lt;/P&gt;&lt;P&gt;Interface consistency check log output &lt;/P&gt;&lt;P&gt;i_interface_check,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ignore all buffers? &lt;/P&gt;&lt;P&gt;i_bypassing_buffer TYPE char01,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Buffer active &lt;/P&gt;&lt;P&gt;i_buffer_active VALUE space,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Name of the calling program &lt;/P&gt;&lt;P&gt;i_callback_program LIKE sy-repid VALUE space,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Set EXIT rountine to status &lt;/P&gt;&lt;P&gt;i_callback_pf_status_set TYPE slis_formname VALUE space,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EXIT routine for command handling &lt;/P&gt;&lt;P&gt;i_callback_user_command TYPE slis_formname VALUE space,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Internal output table structure name &lt;/P&gt;&lt;P&gt;i_structure_name LIKE dd02l-tabname,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;List layout specifications &lt;/P&gt;&lt;P&gt;is_layout TYPE slis_layout_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Field catalog with field descriptions &lt;/P&gt;&lt;P&gt;it_fieldcat TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Table of inactive function codes &lt;/P&gt;&lt;P&gt;it_excluding TYPE slis_t_extab,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Grouping fields for column selection &lt;/P&gt;&lt;P&gt;it_special_groups TYPE slis_t_sp_group_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sort criteria for first list display &lt;/P&gt;&lt;P&gt;it_sort TYPE slis_t_sortinfo_alv WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Filter criteria for first list output &lt;/P&gt;&lt;P&gt;it_filter TYPE slis_t_filter_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Selection information modification &lt;/P&gt;&lt;P&gt;is_sel_hide TYPE slis_sel_hide_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Initial variant active/inactive logic &lt;/P&gt;&lt;P&gt;i_default VALUE 'X',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Variants can be saved &lt;/P&gt;&lt;P&gt;i_save VALUE space,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Variant information &lt;/P&gt;&lt;P&gt;is_variant LIKE disvariant,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Table of events to perform &lt;/P&gt;&lt;P&gt;it_events TYPE slis_t_event,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Standard fcode exit requests table &lt;/P&gt;&lt;P&gt;it_event_exit TYPE slis_t_event_exit,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Print information &lt;/P&gt;&lt;P&gt;is_print TYPE slis_print_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Initialization key for Re/Re interface &lt;/P&gt;&lt;P&gt;is_reprep_id TYPE slis_reprep_id,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Coordinates for list in dialog box &lt;/P&gt;&lt;P&gt;i_screen_start_column VALUE 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Coordinates for list in dialog box &lt;/P&gt;&lt;P&gt;i_screen_start_line VALUE 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Coordinates for list in dialog box &lt;/P&gt;&lt;P&gt;i_screen_end_column VALUE 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Coordinates for list in dialog box &lt;/P&gt;&lt;P&gt;i_screen_end_line VALUE 0,&lt;/P&gt;&lt;P&gt;e_exit_caused_by_caller,&lt;/P&gt;&lt;P&gt;es_exit_caused_by_user TYPE slis_exit_by_user,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Temporary structure for it_fieldcat &lt;/P&gt;&lt;P&gt;xfield TYPE slis_fieldcat_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Temporary structure for it_events &lt;/P&gt;&lt;P&gt;xxevent TYPE slis_alv_event.&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;new_line TYPE REF TO data,&lt;/P&gt;&lt;P&gt;IS_LVC_CAT type LVC_S_FCAT,&lt;/P&gt;&lt;P&gt;IT_LVC_CAT type LVC_T_FCAT,&lt;/P&gt;&lt;P&gt;IS_FIELDCAT type SLIS_FIELDCAT_ALV.&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;&amp;lt;l_line&amp;gt; TYPE ANY,&lt;/P&gt;&lt;P&gt;&amp;lt;l_field&amp;gt; TYPE ANY.Main Program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;PERFORM Field_Catalog.&lt;/P&gt;&lt;P&gt;PERFORM SET_DATA.&lt;/P&gt;&lt;P&gt;PERFORM DISPLAY_ALV.FORM Field_Catalog.&lt;/P&gt;&lt;P&gt;Here we create the field catalog for dynamic internal table.&lt;/P&gt;&lt;P&gt;And create table dynamicly using method: create_dynamic_table from class: cl_alv_table_create.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Field_Catalog .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-ref_field = 'BUKRS'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-ref_table = 'PA0001'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-SCRTEXT_S = IS_LVC_CAT-SCRTEXT_M =&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-SCRTEXT_L = 'Company Code'.&lt;/P&gt;&lt;P&gt;APPEND IS_LVC_CAT TO IT_LVC_CAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-ref_fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-ref_tabname = 'PA0001'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-SELTEXT_S = IS_FIELDCAT-SELTEXT_M =&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-SELTEXT_L = 'Company Code'.&lt;/P&gt;&lt;P&gt;APPEND IS_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-fieldname = 'WERKS'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-ref_field = 'WERKS'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-ref_table = 'PA0001'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-SCRTEXT_S = IS_LVC_CAT-SCRTEXT_M =&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-SCRTEXT_L = 'Pers.Area'.&lt;/P&gt;&lt;P&gt;APPEND IS_LVC_CAT TO IT_LVC_CAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-fieldname = 'WERKS'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-ref_fieldname = 'WERKS'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-ref_tabname = 'PA0001'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-SELTEXT_S = IS_FIELDCAT-SELTEXT_M =&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-SELTEXT_L = 'Pers.Area'.&lt;/P&gt;&lt;P&gt;APPEND IS_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-fieldname = 'BTRTL'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-ref_field = 'BTRTL'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-ref_table = 'PA0001'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-SCRTEXT_S = IS_LVC_CAT-SCRTEXT_M =&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-SCRTEXT_L = 'Pers.SubArea'.&lt;/P&gt;&lt;P&gt;APPEND IS_LVC_CAT TO IT_LVC_CAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-fieldname = 'BTRTL'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-ref_fieldname = 'BTRTL'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-ref_tabname = 'PA0001'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-SELTEXT_S = IS_FIELDCAT-SELTEXT_M =&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-SELTEXT_L = 'Pers.SubArea'.&lt;/P&gt;&lt;P&gt;APPEND IS_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-fieldname = 'CNAME'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-ref_field = 'CNAME'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-ref_table = 'PA0002'.&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-SCRTEXT_S = IS_LVC_CAT-SCRTEXT_M =&lt;/P&gt;&lt;P&gt;IS_LVC_CAT-SCRTEXT_L = 'Name'.&lt;/P&gt;&lt;P&gt;APPEND IS_LVC_CAT TO IT_LVC_CAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-fieldname = 'CNAME'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-ref_fieldname = 'CNAME'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-ref_tabname = 'PA0002'.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-OUTPUTLEN = 20.&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-SELTEXT_S = IS_FIELDCAT-SELTEXT_M =&lt;/P&gt;&lt;P&gt;IS_FIELDCAT-SELTEXT_L = 'Name'.&lt;/P&gt;&lt;P&gt;APPEND IS_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Create a new 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 = IT_LVC_CAT&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;P&gt;&lt;/P&gt;&lt;P&gt;Create a new Line with the same structure of the table. &lt;/P&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;P&gt;ENDFORM. " CREATE_LAYOUTForm Set_Data.&lt;/P&gt;&lt;P&gt;Here we input our data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM SET_DATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Test it... &lt;/P&gt;&lt;P&gt;DO 3 TIMES.&lt;/P&gt;&lt;P&gt;ASSIGN COMPONENT 'BUKRS' 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; = '8369'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ASSIGN COMPONENT 'WERKS' 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; = '1000'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ASSIGN COMPONENT 'BTRTL' 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; = '0100'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ASSIGN COMPONENT 'CNAME' 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; = 'Test Employee Name'.&lt;/P&gt;&lt;P&gt;&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;ENDFORM. " SET_DATAForm Display_ALV&lt;/P&gt;&lt;P&gt;We display our data using FM: 'REUSE_ALV_LIST_DISPLAY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM DISPLAY_ALV .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SET PAGE HEADER &amp;amp; END LIST. &lt;/P&gt;&lt;P&gt;CLEAR xxevent.&lt;/P&gt;&lt;P&gt;xxevent-name = 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;xxevent-form = 'TOP_OF_PAGE_ALV'.&lt;/P&gt;&lt;P&gt;APPEND xxevent TO it_events.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR xxevent.&lt;/P&gt;&lt;P&gt;xxevent-name = 'END_OF_LIST'.&lt;/P&gt;&lt;P&gt;xxevent-form = 'END_OF_LIST_ALV'.&lt;/P&gt;&lt;P&gt;APPEND xxevent TO it_events.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Layout &lt;/P&gt;&lt;P&gt;IS_LAYOUT-COLWIDTH_OPTIMIZE = ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;setting variant &lt;/P&gt;&lt;P&gt;is_variant-variant = p_var. &lt;/P&gt;&lt;P&gt;is_variant-report = sy-repid.&lt;/P&gt;&lt;P&gt;is_variant-username = sy-uname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;others &lt;/P&gt;&lt;P&gt;i_save = 'A'.&lt;/P&gt;&lt;P&gt;i_callback_program = sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;i_interface_check = i_interface_check&lt;/P&gt;&lt;P&gt;i_bypassing_buffer = i_bypassing_buffer&lt;/P&gt;&lt;P&gt;i_buffer_active = i_buffer_active&lt;/P&gt;&lt;P&gt;i_callback_program = i_callback_program&lt;/P&gt;&lt;P&gt;i_callback_pf_status_set = i_callback_pf_status_set&lt;/P&gt;&lt;P&gt;i_callback_user_command = i_callback_user_command&lt;/P&gt;&lt;P&gt;i_structure_name = i_structure_name&lt;/P&gt;&lt;P&gt;is_layout = is_layout&lt;/P&gt;&lt;P&gt;it_fieldcat = it_fieldcat&lt;/P&gt;&lt;P&gt;it_excluding = it_excluding&lt;/P&gt;&lt;P&gt;it_special_groups = it_special_groups&lt;/P&gt;&lt;P&gt;it_sort = it_sort[]&lt;/P&gt;&lt;P&gt;it_filter = it_filter&lt;/P&gt;&lt;P&gt;is_sel_hide = is_sel_hide&lt;/P&gt;&lt;P&gt;i_default = i_default&lt;/P&gt;&lt;P&gt;i_save = i_save&lt;/P&gt;&lt;P&gt;is_variant = is_variant&lt;/P&gt;&lt;P&gt;it_events = it_events&lt;/P&gt;&lt;P&gt;it_event_exit = it_event_exit&lt;/P&gt;&lt;P&gt;is_print = is_print&lt;/P&gt;&lt;P&gt;is_reprep_id = is_reprep_id&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i_screen_start_column = i_screen_start_column &lt;/P&gt;&lt;P&gt;i_screen_start_line = i_screen_start_line&lt;/P&gt;&lt;P&gt;i_screen_end_column = i_screen_end_column&lt;/P&gt;&lt;P&gt;i_screen_end_line = i_screen_end_line&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;e_exit_caused_by_caller = e_exit_caused_by_caller&lt;/P&gt;&lt;P&gt;es_exit_caused_by_user = es_exit_caused_by_user&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;t_outtab = &amp;lt;l_table&amp;gt;&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;program_error = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC 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;ENDFORM. " DISPLAY_ALVForm TOP_OF_PAGE_ALV and END_OF_LIST_ALV.&lt;/P&gt;&lt;P&gt;Here where we can put Report header and footer text.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM TOP_OF_PAGE_ALV .&lt;/P&gt;&lt;P&gt;WRITE: 'Here Your Report Header'.&lt;/P&gt;&lt;P&gt;WRITE:/'Sub Report Header '.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;ENDFORM. " TOP_OF_PAGE_ALV&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM END_OF_LIST_ALV .&lt;/P&gt;&lt;P&gt;WRITE:/'Here Your Report Footer'.&lt;/P&gt;&lt;P&gt;WRITE:/'Sub Report Footer '.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;ENDFORM. " END_OF_LIST_ALV&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Reward Points if found helpfull..&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Cheers,&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Chandra Sekhar.&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Apr 2008 09:05:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656227#M880696</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-03T09:05:00Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656228#M880697</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;check the blog&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;Regards,&lt;/P&gt;&lt;P&gt;jyothsna.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 Apr 2008 09:14:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3656228#M880697</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-04T09:14:16Z</dc:date>
    </item>
  </channel>
</rss>

