<?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: internal table in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702209#M891383</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Check the Sample code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can do that using Dynamic Intenal tables.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here i took 9 items, depending on your items build your fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT  ztest_dynamic_code.

DATA: BEGIN OF it_tab OCCURS 0,
       abc(3),
       xyz(3),
       pqr(3),
       item,
     END OF it_tab.

DATA: it_fieldcatalog  TYPE lvc_t_fcat,
wa_fieldcat TYPE lvc_s_fcat.


DATA:  i_dyntab  TYPE REF TO data. " To create dyn.Itab
DATA:
       w_dref TYPE REF TO data,
       ind(2) TYPE n,
       w_data TYPE REF TO data,
       w_text(5),
       w_grid TYPE REF TO cl_gui_alv_grid.
DATA: grid TYPE REF TO cl_gui_alv_grid,
      cont TYPE REF TO cl_gui_custom_container.

FIELD-SYMBOLS: &amp;lt;t_itab&amp;gt; TYPE STANDARD TABLE,
               &amp;lt;fs_wa&amp;gt; TYPE ANY,&amp;lt;fs&amp;gt; TYPE ANY.
DATA: in TYPE i.


*Data population

it_tab-abc = 'ABC'.
it_tab-xyz = 'XYZ'.
it_tab-pqr = 'PQR'.
DO 9 TIMES.
  in = in + 1.
  it_tab-item = in.
  APPEND it_tab.
ENDDO.

*Field cat population.
wa_fieldcat-fieldname = 'ABC'.
wa_fieldcat-outputlen = 3.
wa_fieldcat-coltext = 'abc'.
APPEND wa_fieldcat TO it_fieldcatalog.

wa_fieldcat-fieldname = 'XYZ'.
wa_fieldcat-outputlen = 3.
wa_fieldcat-coltext = 'XYZ'.
APPEND wa_fieldcat TO it_fieldcatalog.

wa_fieldcat-fieldname = 'PQR'.
wa_fieldcat-outputlen = 3.
wa_fieldcat-coltext = 'pqr'.
APPEND wa_fieldcat TO it_fieldcatalog.
ind = 1.
DO 9 TIMES.
  CONCATENATE 'ITEM' ind INTO wa_fieldcat-fieldname.
  CONCATENATE 'ITEM' ind INTO wa_fieldcat-coltext.
  wa_fieldcat-outputlen = 1.
  APPEND wa_fieldcat TO it_fieldcatalog.
  CLEAR wa_fieldcat .
  ind  = ind + 1.
ENDDO.


*-Dynamic Table creation
CALL METHOD cl_alv_table_create=&amp;gt;create_dynamic_table
  EXPORTING
    it_fieldcatalog = it_fieldcatalog
  IMPORTING
    ep_table        = i_dyntab.

ASSIGN i_dyntab-&amp;gt;* TO &amp;lt;t_itab&amp;gt;.
CREATE DATA w_data LIKE LINE OF &amp;lt;t_itab&amp;gt;.
ASSIGN w_data-&amp;gt;* TO &amp;lt;fs_wa&amp;gt;.

SORT it_tab BY abc xyz pqr.
CLEAR ind.
ind = 4.

*-Final Internal table as per Requirement
LOOP AT it_tab.

  ASSIGN COMPONENT 1 OF STRUCTURE &amp;lt;fs_wa&amp;gt; TO &amp;lt;fs&amp;gt;.
  &amp;lt;fs&amp;gt; = it_tab-abc.
  ASSIGN COMPONENT 2 OF STRUCTURE &amp;lt;fs_wa&amp;gt; TO &amp;lt;fs&amp;gt;.
  &amp;lt;fs&amp;gt; = it_tab-xyz.
  UNASSIGN &amp;lt;fs&amp;gt;.
  ASSIGN COMPONENT 3 OF STRUCTURE &amp;lt;fs_wa&amp;gt; TO &amp;lt;fs&amp;gt;.
  &amp;lt;fs&amp;gt; = it_tab-pqr.
  UNASSIGN &amp;lt;fs&amp;gt;.

  ASSIGN COMPONENT ind OF STRUCTURE &amp;lt;fs_wa&amp;gt; TO &amp;lt;fs&amp;gt;.

  &amp;lt;fs&amp;gt; = it_tab-item.
  UNASSIGN &amp;lt;fs&amp;gt;.
  ind = ind + 1.

  AT END OF pqr.

    APPEND &amp;lt;fs_wa&amp;gt; TO &amp;lt;t_itab&amp;gt;.
    ind = 4.
    CLEAR &amp;lt;fs_wa&amp;gt;.

  ENDAT.

ENDLOOP.

*-Display

CALL SCREEN 100.


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  STATUS_0100  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  DATA: layout TYPE lvc_s_layo.

  CREATE OBJECT cont
     EXPORTING
       container_name              = 'CONT'
     EXCEPTIONS
       cntl_error                  = 1
       cntl_system_error           = 2
       create_error                = 3
       lifetime_error              = 4
       lifetime_dynpro_dynpro_link = 5
       OTHERS                      = 6
       .
  IF sy-subrc NE 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.

  CREATE OBJECT grid
    EXPORTING
      i_parent          = cont
    EXCEPTIONS
      error_cntl_create = 1
      error_cntl_init   = 2
      error_cntl_link   = 3
      error_dp_create   = 4
      OTHERS            = 5
      .
  IF sy-subrc NE 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
  grid-&amp;gt;set_table_for_first_display(
     EXPORTING
       is_layout                      =  layout
     CHANGING
       it_outtab                     = &amp;lt;t_itab&amp;gt;
       it_fieldcatalog               = it_fieldcatalog
   EXCEPTIONS
     invalid_parameter_combination = 1
     program_error                 = 2
     too_many_lines                = 3
          ).
  IF sy-subrc  NE 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.


ENDMODULE.                 " STATUS_0100  OUTPUT&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 18 Apr 2008 12:48:46 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-04-18T12:48:46Z</dc:date>
    <item>
      <title>internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702205#M891379</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;i have data like this in internal table header&lt;/P&gt;&lt;P&gt;ABC PQR XYZ 1&lt;/P&gt;&lt;P&gt;item&lt;/P&gt;&lt;P&gt;ABC PQR XYZ 2&lt;/P&gt;&lt;P&gt;ABC PQR XYZ 3&lt;/P&gt;&lt;P&gt;ABC PQR XYZ 4&lt;/P&gt;&lt;P&gt;but i want like this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ABC PQR XYZ &lt;STRONG&gt;1 2 3 4 ...&lt;/STRONG&gt;how it possible logic please.?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Point is assuerd&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 18 Apr 2008 11:43:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702205#M891379</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-18T11:43:33Z</dc:date>
    </item>
    <item>
      <title>Re: internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702206#M891380</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi monica use the alv hirarchial_list_display i can give the simple program..in this it will display like this..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;header&lt;/STRONG&gt; &lt;/P&gt;&lt;P&gt;item1&lt;/P&gt;&lt;P&gt;item2&lt;/P&gt;&lt;P&gt;item3..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZPR_02&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  ZPR_02.&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;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Tables Declaration.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: VBAK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS : C_X VALUE 'X',&lt;/P&gt;&lt;P&gt;            C_GT_VBAP TYPE SLIS_TABNAME VALUE 'IT_VBAP',&lt;/P&gt;&lt;P&gt;            C_GT_VBAK TYPE SLIS_TABNAME VALUE 'IT_VBAK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal tables and data declaration.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF IT_VBAK OCCURS 0,&lt;/P&gt;&lt;P&gt;        VBELN LIKE VBAK-VBELN,&lt;/P&gt;&lt;P&gt;        VKORG LIKE VBAK-VKORG,&lt;/P&gt;&lt;P&gt;        WAERK LIKE VBAK-WAERK,&lt;/P&gt;&lt;P&gt;        EXPAND TYPE XFELD,&lt;/P&gt;&lt;P&gt;      END OF IT_VBAK,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      BEGIN OF IT_VBAP OCCURS 0,&lt;/P&gt;&lt;P&gt;         VBELN LIKE VBAP-VBELN,&lt;/P&gt;&lt;P&gt;         POSNR LIKE VBAP-POSNR,&lt;/P&gt;&lt;P&gt;         MATNR LIKE VBAP-MATNR,&lt;/P&gt;&lt;P&gt;         NETWR LIKE VBAP-NETWR,&lt;/P&gt;&lt;P&gt;      END OF IT_VBAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: WA_FIELD_CAT TYPE SLIS_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;      IT_FIELD_CAT TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;      WA_KEYINFO TYPE SLIS_KEYINFO_ALV,&lt;/P&gt;&lt;P&gt;      IT_LAYOUT TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;      WA_SORT     TYPE SLIS_SORTINFO_ALV,&lt;/P&gt;&lt;P&gt;      IT_SORT     TYPE SLIS_T_SORTINFO_ALV. " Sort table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Selection Screen.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: BEGIN OF LINE,&lt;/P&gt;&lt;P&gt;                  COMMENT 5(25) V_1 FOR FIELD P_MAX.&lt;/P&gt;&lt;P&gt;PARAMETER P_MAX(2) TYPE N DEFAULT 10 OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: SKIP,&lt;/P&gt;&lt;P&gt;                  BEGIN OF LINE,&lt;/P&gt;&lt;P&gt;                  COMMENT 5(25) V_2 FOR FIELD P_EXPAND.&lt;/P&gt;&lt;P&gt;PARAMETER: P_EXPAND AS CHECKBOX DEFAULT 'X'.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Initialization&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;  V_1 = 'Max No of Record read'.&lt;/P&gt;&lt;P&gt;  V_2 = 'With expand'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Start Of selection.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Selecting the data.&lt;/P&gt;&lt;P&gt;  PERFORM SELECT_DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Populating the field catelogue.&lt;/P&gt;&lt;P&gt;  PERFORM BUILD_FIELD_CAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Displaying the final output.&lt;/P&gt;&lt;P&gt;  PERFORM DISPLY_OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Form USER_COMMAND                                             *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM USER_COMMAND USING I_UCOMM     TYPE SY-UCOMM&lt;/P&gt;&lt;P&gt;                        IS_SELFIELD TYPE SLIS_SELFIELD.     "#EC CALLED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA LS_VBAK LIKE IT_VBAK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE I_UCOMM.&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;IC1'.                       " Pick&lt;/P&gt;&lt;P&gt;      CASE IS_SELFIELD-TABNAME.&lt;/P&gt;&lt;P&gt;        WHEN C_GT_VBAP.&lt;/P&gt;&lt;P&gt;        WHEN C_GT_VBAK.&lt;/P&gt;&lt;P&gt;          READ TABLE IT_VBAK INDEX IS_SELFIELD-TABINDEX INTO LS_VBAK.&lt;/P&gt;&lt;P&gt;          IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Sales order number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            SET PARAMETER ID 'AUN' FIELD LS_VBAK-VBELN.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Display Sales Order&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " USER_COMMAND&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_data&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Selecting the data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM SELECT_DATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT VBELN&lt;/P&gt;&lt;P&gt;         VKORG&lt;/P&gt;&lt;P&gt;         WAERK FROM VBAK&lt;/P&gt;&lt;P&gt;       INTO TABLE IT_VBAK&lt;/P&gt;&lt;P&gt;       UP TO P_MAX ROWS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT IT_VBAK[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT VBELN&lt;/P&gt;&lt;P&gt;           POSNR&lt;/P&gt;&lt;P&gt;           MATNR&lt;/P&gt;&lt;P&gt;           NETWR FROM VBAP&lt;/P&gt;&lt;P&gt;         INTO TABLE IT_VBAP&lt;/P&gt;&lt;P&gt;         FOR ALL ENTRIES IN IT_VBAK&lt;/P&gt;&lt;P&gt;         WHERE VBELN = IT_VBAK-VBELN.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT IT_VBAP BY VBELN.&lt;/P&gt;&lt;P&gt;  SORT IT_VBAK BY VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Select_data&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  Build_field_cat&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Populating the field catelogue.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BUILD_FIELD_CAT .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DEFINE M_FIELDCAT.&lt;/P&gt;&lt;P&gt;    WA_FIELD_CAT-TABNAME = &amp;amp;1.&lt;/P&gt;&lt;P&gt;    WA_FIELD_CAT-FIELDNAME = &amp;amp;2.&lt;/P&gt;&lt;P&gt;    WA_FIELD_CAT-REF_TABNAME = &amp;amp;3.&lt;/P&gt;&lt;P&gt;    WA_FIELD_CAT-CFIELDNAME = &amp;amp;4.&lt;/P&gt;&lt;P&gt;    APPEND WA_FIELD_CAT TO IT_FIELD_CAT.&lt;/P&gt;&lt;P&gt;  END-OF-DEFINITION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DEFINE M_SORT.&lt;/P&gt;&lt;P&gt;    WA_SORT-TABNAME = &amp;amp;1.&lt;/P&gt;&lt;P&gt;    WA_SORT-FIELDNAME = &amp;amp;2.&lt;/P&gt;&lt;P&gt;    WA_SORT-UP        = C_X.&lt;/P&gt;&lt;P&gt;    APPEND WA_SORT TO IT_SORT.&lt;/P&gt;&lt;P&gt;  END-OF-DEFINITION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  M_FIELDCAT C_GT_VBAK 'VBELN' 'VBAK' ''.&lt;/P&gt;&lt;P&gt;  M_FIELDCAT C_GT_VBAK 'VKORG' 'VBAK' ''.&lt;/P&gt;&lt;P&gt;  M_FIELDCAT C_GT_VBAK 'WAERK' 'VBAK' ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  M_FIELDCAT C_GT_VBAP 'POSNR' 'VBAP' ''.&lt;/P&gt;&lt;P&gt;  M_FIELDCAT C_GT_VBAP 'MATNR' 'VBAP' ''.&lt;/P&gt;&lt;P&gt;  M_FIELDCAT C_GT_VBAP 'NETWR' 'VBAP' ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  M_SORT C_GT_VBAP 'NETWR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Build_field_cat&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  disply_output&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Displaying the final output.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM DISPLY_OUTPUT .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IT_LAYOUT-GROUP_CHANGE_EDIT = C_X.&lt;/P&gt;&lt;P&gt;  IT_LAYOUT-COLWIDTH_OPTIMIZE = C_X.&lt;/P&gt;&lt;P&gt;  IT_LAYOUT-ZEBRA             = C_X.&lt;/P&gt;&lt;P&gt;  IT_LAYOUT-DETAIL_POPUP      = C_X.&lt;/P&gt;&lt;P&gt;  IT_LAYOUT-GET_SELINFOS      = C_X.&lt;/P&gt;&lt;P&gt;  IF P_EXPAND = C_X.&lt;/P&gt;&lt;P&gt;    IT_LAYOUT-EXPAND_FIELDNAME  = 'EXPAND'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_KEYINFO-HEADER01 = 'VBELN'.&lt;/P&gt;&lt;P&gt;  WA_KEYINFO-ITEM01 = 'VBELN'.&lt;/P&gt;&lt;P&gt;  WA_KEYINFO-ITEM02 = 'POSNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      I_CALLBACK_PROGRAM      = SY-CPROG&lt;/P&gt;&lt;P&gt;      I_CALLBACK_USER_COMMAND = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt;      IS_LAYOUT               = IT_LAYOUT&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT             = IT_FIELD_CAT&lt;/P&gt;&lt;P&gt;      IT_SORT                 = IT_SORT&lt;/P&gt;&lt;P&gt;      I_TABNAME_HEADER        = C_GT_VBAK&lt;/P&gt;&lt;P&gt;      I_TABNAME_ITEM          = C_GT_VBAP&lt;/P&gt;&lt;P&gt;      IS_KEYINFO              = WA_KEYINFO&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB_HEADER         = IT_VBAK&lt;/P&gt;&lt;P&gt;      T_OUTTAB_ITEM           = IT_VBAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " disply_output&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;venkat.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 18 Apr 2008 11:57:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702206#M891380</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-18T11:57:44Z</dc:date>
    </item>
    <item>
      <title>Re: internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702207#M891381</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;this is an example, but works&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
DATA:
  BEGIN OF numrec,
    nums      TYPE c,
  END OF numrec.
DATA:
  BEGIN OF baserec,
    val1(3)   TYPE c,
    val2(3)   TYPE c,
    val3(3)   TYPE c,
    nums      TYPE c,
  END OF baserec.
DATA:
  BEGIN OF allrec,
    val1(3)   TYPE c,
    val2(3)   TYPE c,
    val3(3)   TYPE c,
    it_nums LIKE STANDARD TABLE OF numrec,
  END OF allrec.
DATA:
  it_base LIKE STANDARD TABLE OF baserec,
  it_all like standard table of allrec.

START-OF-SELECTION.

  baserec-val1 = 'ABC'.
  baserec-val2 = 'PRQ'.
  baserec-val3 = 'XYZ'.
  baserec-nums = '1'.
  APPEND baserec TO it_base.
  baserec-nums = '2'.
  APPEND baserec TO it_base.
  baserec-nums = '3'.
  APPEND baserec TO it_base.
  baserec-nums = '4'.
  APPEND baserec TO it_base.

  LOOP AT it_base INTO baserec.
    allrec-val1 = baserec-val1.
    allrec-val2 = baserec-val2.
    allrec-val3 = baserec-val3.
    numrec-nums = baserec-nums.
    APPEND numrec TO allrec-it_nums.
  ENDLOOP.
  APPEND allrec TO it_all.

  LOOP AT it_all INTO allrec.
    WRITE:/ allrec-val1,
            allrec-val2,
            allrec-val3.
    LOOP AT allrec-it_nums INTO numrec.
      WRITE numrec-nums.
    ENDLOOP.
  ENDLOOP.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 18 Apr 2008 12:01:13 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702207#M891381</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-18T12:01:13Z</dc:date>
    </item>
    <item>
      <title>Re: internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702208#M891382</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Monica,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Try this...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i_header :&lt;/P&gt;&lt;P&gt;ABC PQR XYZ 1&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i_item&lt;/P&gt;&lt;P&gt;ABC PQR XYZ 2&lt;/P&gt;&lt;P&gt;ABC PQR XYZ 3&lt;/P&gt;&lt;P&gt;ABC PQR XYZ 4&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i_combine :&lt;/P&gt;&lt;P&gt;field1 type &amp;lt;field of ABC&amp;gt;&lt;/P&gt;&lt;P&gt;field2 type &amp;lt;field of PQR&amp;gt;&lt;/P&gt;&lt;P&gt;field3 type &amp;lt;field of XYZ&amp;gt;.&lt;/P&gt;&lt;P&gt;field4(255) type c..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sort l_header by&lt;/P&gt;&lt;P&gt;&amp;lt;ABC_field&amp;gt; &amp;lt;PQR_field&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;XYZ_field&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sort l_item by &amp;lt;ABC_field&amp;gt; &amp;lt;PQR_field&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;XYZ_field&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at i_header.&lt;/P&gt;&lt;P&gt;read table i_item with key field1 = i_header-field1 field2 = i_header-field2 field3 = i_header-field3 binary search.&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;loop at i_item.&lt;/P&gt;&lt;P&gt;if i_item-field1 = i_header-field1 and&lt;/P&gt;&lt;P&gt;i_item-field2 = i_header-field2 and&lt;/P&gt;&lt;P&gt;i_item-field3 = i_header-field3.&lt;/P&gt;&lt;P&gt;i_combine-field1 = i_header-field1.&lt;/P&gt;&lt;P&gt;i_combine-field2 = i_header-field2.&lt;/P&gt;&lt;P&gt;i_combine-field3 = i_header-field3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if sy-tabix = 1.&lt;/P&gt;&lt;P&gt;i_combine-field4 = i_item-field4.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;concatenate i_combine-field4 i_item-field4 into&lt;/P&gt;&lt;P&gt;i_combine-field4 separated by space.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;append i_combine&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;exit.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endloop .&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Mohaiyuddin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 18 Apr 2008 12:10:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702208#M891382</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-18T12:10:31Z</dc:date>
    </item>
    <item>
      <title>Re: internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702209#M891383</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Check the Sample code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can do that using Dynamic Intenal tables.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here i took 9 items, depending on your items build your fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT  ztest_dynamic_code.

DATA: BEGIN OF it_tab OCCURS 0,
       abc(3),
       xyz(3),
       pqr(3),
       item,
     END OF it_tab.

DATA: it_fieldcatalog  TYPE lvc_t_fcat,
wa_fieldcat TYPE lvc_s_fcat.


DATA:  i_dyntab  TYPE REF TO data. " To create dyn.Itab
DATA:
       w_dref TYPE REF TO data,
       ind(2) TYPE n,
       w_data TYPE REF TO data,
       w_text(5),
       w_grid TYPE REF TO cl_gui_alv_grid.
DATA: grid TYPE REF TO cl_gui_alv_grid,
      cont TYPE REF TO cl_gui_custom_container.

FIELD-SYMBOLS: &amp;lt;t_itab&amp;gt; TYPE STANDARD TABLE,
               &amp;lt;fs_wa&amp;gt; TYPE ANY,&amp;lt;fs&amp;gt; TYPE ANY.
DATA: in TYPE i.


*Data population

it_tab-abc = 'ABC'.
it_tab-xyz = 'XYZ'.
it_tab-pqr = 'PQR'.
DO 9 TIMES.
  in = in + 1.
  it_tab-item = in.
  APPEND it_tab.
ENDDO.

*Field cat population.
wa_fieldcat-fieldname = 'ABC'.
wa_fieldcat-outputlen = 3.
wa_fieldcat-coltext = 'abc'.
APPEND wa_fieldcat TO it_fieldcatalog.

wa_fieldcat-fieldname = 'XYZ'.
wa_fieldcat-outputlen = 3.
wa_fieldcat-coltext = 'XYZ'.
APPEND wa_fieldcat TO it_fieldcatalog.

wa_fieldcat-fieldname = 'PQR'.
wa_fieldcat-outputlen = 3.
wa_fieldcat-coltext = 'pqr'.
APPEND wa_fieldcat TO it_fieldcatalog.
ind = 1.
DO 9 TIMES.
  CONCATENATE 'ITEM' ind INTO wa_fieldcat-fieldname.
  CONCATENATE 'ITEM' ind INTO wa_fieldcat-coltext.
  wa_fieldcat-outputlen = 1.
  APPEND wa_fieldcat TO it_fieldcatalog.
  CLEAR wa_fieldcat .
  ind  = ind + 1.
ENDDO.


*-Dynamic Table creation
CALL METHOD cl_alv_table_create=&amp;gt;create_dynamic_table
  EXPORTING
    it_fieldcatalog = it_fieldcatalog
  IMPORTING
    ep_table        = i_dyntab.

ASSIGN i_dyntab-&amp;gt;* TO &amp;lt;t_itab&amp;gt;.
CREATE DATA w_data LIKE LINE OF &amp;lt;t_itab&amp;gt;.
ASSIGN w_data-&amp;gt;* TO &amp;lt;fs_wa&amp;gt;.

SORT it_tab BY abc xyz pqr.
CLEAR ind.
ind = 4.

*-Final Internal table as per Requirement
LOOP AT it_tab.

  ASSIGN COMPONENT 1 OF STRUCTURE &amp;lt;fs_wa&amp;gt; TO &amp;lt;fs&amp;gt;.
  &amp;lt;fs&amp;gt; = it_tab-abc.
  ASSIGN COMPONENT 2 OF STRUCTURE &amp;lt;fs_wa&amp;gt; TO &amp;lt;fs&amp;gt;.
  &amp;lt;fs&amp;gt; = it_tab-xyz.
  UNASSIGN &amp;lt;fs&amp;gt;.
  ASSIGN COMPONENT 3 OF STRUCTURE &amp;lt;fs_wa&amp;gt; TO &amp;lt;fs&amp;gt;.
  &amp;lt;fs&amp;gt; = it_tab-pqr.
  UNASSIGN &amp;lt;fs&amp;gt;.

  ASSIGN COMPONENT ind OF STRUCTURE &amp;lt;fs_wa&amp;gt; TO &amp;lt;fs&amp;gt;.

  &amp;lt;fs&amp;gt; = it_tab-item.
  UNASSIGN &amp;lt;fs&amp;gt;.
  ind = ind + 1.

  AT END OF pqr.

    APPEND &amp;lt;fs_wa&amp;gt; TO &amp;lt;t_itab&amp;gt;.
    ind = 4.
    CLEAR &amp;lt;fs_wa&amp;gt;.

  ENDAT.

ENDLOOP.

*-Display

CALL SCREEN 100.


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  STATUS_0100  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  DATA: layout TYPE lvc_s_layo.

  CREATE OBJECT cont
     EXPORTING
       container_name              = 'CONT'
     EXCEPTIONS
       cntl_error                  = 1
       cntl_system_error           = 2
       create_error                = 3
       lifetime_error              = 4
       lifetime_dynpro_dynpro_link = 5
       OTHERS                      = 6
       .
  IF sy-subrc NE 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.

  CREATE OBJECT grid
    EXPORTING
      i_parent          = cont
    EXCEPTIONS
      error_cntl_create = 1
      error_cntl_init   = 2
      error_cntl_link   = 3
      error_dp_create   = 4
      OTHERS            = 5
      .
  IF sy-subrc NE 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
  grid-&amp;gt;set_table_for_first_display(
     EXPORTING
       is_layout                      =  layout
     CHANGING
       it_outtab                     = &amp;lt;t_itab&amp;gt;
       it_fieldcatalog               = it_fieldcatalog
   EXCEPTIONS
     invalid_parameter_combination = 1
     program_error                 = 2
     too_many_lines                = 3
          ).
  IF sy-subrc  NE 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.


ENDMODULE.                 " STATUS_0100  OUTPUT&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 18 Apr 2008 12:48:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702209#M891383</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-18T12:48:46Z</dc:date>
    </item>
    <item>
      <title>Re: internal table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702210#M891384</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks to all,&lt;/P&gt;&lt;P&gt;Point has been givn Poul..&lt;/P&gt;&lt;P&gt;Good logic.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 21 Apr 2008 05:48:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/internal-table/m-p/3702210#M891384</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-21T05:48:44Z</dc:date>
    </item>
  </channel>
</rss>

