<?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/3247888#M775353</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Supriya,&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;*--  VARIABLES for function REUSE_ALV_DISPLAY&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Interface consistency check log output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_interface_check,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Ignore all buffers?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_bypassing_buffer TYPE  char01,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Buffer active&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_buffer_active          VALUE space,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Name of the calling program&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_callback_program       LIKE sy-repid VALUE space,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set EXIT rountine to status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_callback_pf_status_set TYPE slis_formname VALUE space,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXIT routine for command handling&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_callback_user_command  TYPE slis_formname VALUE space,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal output table structure name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_structure_name         LIKE dd02l-tabname,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;List layout specifications&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;is_layout                TYPE slis_layout_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Field catalog with field descriptions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_fieldcat              TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table of inactive function codes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_excluding             TYPE slis_t_extab,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Grouping fields for column selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_special_groups        TYPE slis_t_sp_group_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sort criteria for first list display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_sort                  TYPE slis_t_sortinfo_alv WITH HEADER LINE,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Filter criteria for first list output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_filter                TYPE slis_t_filter_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection information modification&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;is_sel_hide              TYPE slis_sel_hide_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Initial variant active/inactive logic&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_default                VALUE 'X',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Variants can be saved&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_save                   VALUE space,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Variant information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;is_variant               LIKE disvariant,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table of events to perform&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_events                TYPE slis_t_event,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Standard fcode exit requests table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_event_exit            TYPE slis_t_event_exit,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Print information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;is_print                 TYPE slis_print_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Initialization key for Re/Re interface&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;is_reprep_id             TYPE slis_reprep_id,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Coordinates for list in dialog box&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_screen_start_column    VALUE 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Coordinates for list in dialog box&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_screen_start_line      VALUE 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Coordinates for list in dialog box&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_screen_end_column      VALUE 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Coordinates for list in dialog box&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Temporary structure for it_fieldcat&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;xfield                   TYPE slis_fieldcat_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Temporary structure for it_events&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;xxevent                   TYPE slis_alv_event.&lt;/P&gt;&lt;P&gt;&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;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_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;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;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;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 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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; SET PAGE HEADER &amp;amp; END LIST.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Layout&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IS_LAYOUT-COLWIDTH_OPTIMIZE = ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;setting variant&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; is_variant-variant = p_var.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  is_variant-report = sy-repid.&lt;/P&gt;&lt;P&gt;  is_variant-username = sy-uname.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;others&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           i_screen_start_column    = i_screen_start_column&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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 &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;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;Regards,&lt;/P&gt;&lt;P&gt;Chandru&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 14 Jan 2008 04:20:25 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-01-14T04:20:25Z</dc:date>
    <item>
      <title>dynamic internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3247887#M775352</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt; how to make dynamic internal table and how to pass dynamic internal table to GUI_DOWNLOAD.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 14 Jan 2008 04:18:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3247887#M775352</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-14T04:18:37Z</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/3247888#M775353</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Supriya,&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;*--  VARIABLES for function REUSE_ALV_DISPLAY&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Interface consistency check log output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_interface_check,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Ignore all buffers?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_bypassing_buffer TYPE  char01,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Buffer active&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_buffer_active          VALUE space,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Name of the calling program&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_callback_program       LIKE sy-repid VALUE space,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set EXIT rountine to status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_callback_pf_status_set TYPE slis_formname VALUE space,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXIT routine for command handling&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_callback_user_command  TYPE slis_formname VALUE space,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal output table structure name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_structure_name         LIKE dd02l-tabname,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;List layout specifications&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;is_layout                TYPE slis_layout_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Field catalog with field descriptions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_fieldcat              TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table of inactive function codes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_excluding             TYPE slis_t_extab,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Grouping fields for column selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_special_groups        TYPE slis_t_sp_group_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sort criteria for first list display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_sort                  TYPE slis_t_sortinfo_alv WITH HEADER LINE,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Filter criteria for first list output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_filter                TYPE slis_t_filter_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection information modification&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;is_sel_hide              TYPE slis_sel_hide_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Initial variant active/inactive logic&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_default                VALUE 'X',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Variants can be saved&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_save                   VALUE space,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Variant information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;is_variant               LIKE disvariant,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table of events to perform&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_events                TYPE slis_t_event,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Standard fcode exit requests table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_event_exit            TYPE slis_t_event_exit,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Print information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;is_print                 TYPE slis_print_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Initialization key for Re/Re interface&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;is_reprep_id             TYPE slis_reprep_id,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Coordinates for list in dialog box&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_screen_start_column    VALUE 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Coordinates for list in dialog box&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_screen_start_line      VALUE 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Coordinates for list in dialog box&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_screen_end_column      VALUE 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Coordinates for list in dialog box&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Temporary structure for it_fieldcat&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;xfield                   TYPE slis_fieldcat_alv,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Temporary structure for it_events&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;xxevent                   TYPE slis_alv_event.&lt;/P&gt;&lt;P&gt;&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;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_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;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;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;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 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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; SET PAGE HEADER &amp;amp; END LIST.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Layout&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IS_LAYOUT-COLWIDTH_OPTIMIZE = ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;setting variant&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; is_variant-variant = p_var.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  is_variant-report = sy-repid.&lt;/P&gt;&lt;P&gt;  is_variant-username = sy-uname.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;others&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           i_screen_start_column    = i_screen_start_column&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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 &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;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;Regards,&lt;/P&gt;&lt;P&gt;Chandru&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 14 Jan 2008 04:20:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3247888#M775353</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-14T04:20:25Z</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/3247889#M775354</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Please clarify ur problem&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Nishant&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 14 Jan 2008 04:20:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3247889#M775354</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-14T04:20:56Z</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/3247890#M775355</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Supriya,&lt;/P&gt;&lt;P&gt;Check the link&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw2004s/helpdata/en/fc/eb35de358411d1829f0000e829fbfe/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw2004s/helpdata/en/fc/eb35de358411d1829f0000e829fbfe/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also 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;Chandru&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 14 Jan 2008 04:23:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3247890#M775355</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-14T04:23:08Z</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/3247891#M775356</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;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;&lt;/P&gt;&lt;P&gt;&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create dynamic internal table and assign to FS&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 = 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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create dynamic work area and assign to FS&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Gowri sankar &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if it is usful reward points&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Feb 2008 06:16:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-internal-table/m-p/3247891#M775356</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-14T06:16:08Z</dc:date>
    </item>
  </channel>
</rss>

