<?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 Alv report in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767859#M1117651</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;U can create dynamic Internal table this way..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is just a sample code....&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
DATA: struct_type TYPE REF TO cl_abap_structdescr,
      comp_tab    TYPE cl_abap_structdescr=&amp;gt;component_table,
      dref        TYPE REF TO data,
      itab_type   TYPE REF TO cl_abap_tabledescr,
      wa_comp     LIKE LINE OF comp_tab,
      index       TYPE char10.

FIELD-SYMBOLS : &amp;lt;tab&amp;gt; TYPE STANDARD TABLE,
                &amp;lt;wa&amp;gt; TYPE ANY.

PARAMETER col TYPE i.

DO col TIMES.
  index = sy-index.
  CONCATENATE 'COL' index INTO wa_comp-name.    "Field name
  CONDENSE wa_comp-name NO-GAPS.
  wa_comp-type ?= cl_abap_datadescr=&amp;gt;describe_by_name( 'I' ).     "Data type of Fields...
  APPEND  wa_comp TO comp_tab.
ENDDO.

struct_type = cl_abap_structdescr=&amp;gt;create( comp_tab ).
itab_type   = cl_abap_tabledescr=&amp;gt;create( struct_type ).
CREATE DATA dref TYPE HANDLE itab_type.
ASSIGN dref-&amp;gt;* TO &amp;lt;tab&amp;gt;.      " Internal Table
CREATE DATA dref TYPE HANDLE struct_type.
ASSIGN dref-&amp;gt;* TO &amp;lt;wa&amp;gt;.      " Work Area..

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 07 Nov 2008 04:04:29 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-11-07T04:04:29Z</dc:date>
    <item>
      <title>Dynamic Alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767857#M1117649</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have to create a ALV report where the fields have to be created dynamically.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the report will look like :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                           Oct 08    Nov 08       Dec 08&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sales                   200         300           4000&lt;/P&gt;&lt;P&gt;Other Expense       40           40              50&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. in the selection screen. , based on the number of months i specify, the number of columns will have to change.&lt;/P&gt;&lt;P&gt;2. the First column in the alv ie....SALES will be a hard coded one.&lt;/P&gt;&lt;P&gt;3. the other columns will get the NETWR value or a  value with some calculations.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can Any one give me some help on this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;Vikki.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How do i design the internal table for this.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Nov 2008 03:59:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767857#M1117649</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-11-07T03:59:01Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic Alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767858#M1117650</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You mean to say that &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sales: 200 300 4000........................&lt;/P&gt;&lt;P&gt;Other Expense 40 40 50.......................&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;there will be 2 rows but any no. of columns.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Nov 2008 04:02:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767858#M1117650</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-11-07T04:02:56Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic Alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767859#M1117651</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;U can create dynamic Internal table this way..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is just a sample code....&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
DATA: struct_type TYPE REF TO cl_abap_structdescr,
      comp_tab    TYPE cl_abap_structdescr=&amp;gt;component_table,
      dref        TYPE REF TO data,
      itab_type   TYPE REF TO cl_abap_tabledescr,
      wa_comp     LIKE LINE OF comp_tab,
      index       TYPE char10.

FIELD-SYMBOLS : &amp;lt;tab&amp;gt; TYPE STANDARD TABLE,
                &amp;lt;wa&amp;gt; TYPE ANY.

PARAMETER col TYPE i.

DO col TIMES.
  index = sy-index.
  CONCATENATE 'COL' index INTO wa_comp-name.    "Field name
  CONDENSE wa_comp-name NO-GAPS.
  wa_comp-type ?= cl_abap_datadescr=&amp;gt;describe_by_name( 'I' ).     "Data type of Fields...
  APPEND  wa_comp TO comp_tab.
ENDDO.

struct_type = cl_abap_structdescr=&amp;gt;create( comp_tab ).
itab_type   = cl_abap_tabledescr=&amp;gt;create( struct_type ).
CREATE DATA dref TYPE HANDLE itab_type.
ASSIGN dref-&amp;gt;* TO &amp;lt;tab&amp;gt;.      " Internal Table
CREATE DATA dref TYPE HANDLE struct_type.
ASSIGN dref-&amp;gt;* TO &amp;lt;wa&amp;gt;.      " Work Area..

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Nov 2008 04:04:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767859#M1117651</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-11-07T04:04:29Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic Alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767860#M1117652</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi See this blog,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;we can not give exact sol, so try to get an idea from this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_blogpost" href="https://community.sap.com/" __jive_macro_name="blogpost" modifiedtitle="true" __default_attr="42904"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Amresh.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Nov 2008 04:05:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767860#M1117652</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-11-07T04:05:04Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic Alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767861#M1117653</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The First Column will be having some 10 rows. All the text there will be hard coded.&lt;/P&gt;&lt;P&gt;                   Oct 08          Nov 08        Dec 08&lt;/P&gt;&lt;P&gt;Sales&lt;/P&gt;&lt;P&gt;Expense&lt;/P&gt;&lt;P&gt;variences&lt;/P&gt;&lt;P&gt;frieght&lt;/P&gt;&lt;P&gt;spending&lt;/P&gt;&lt;P&gt;net sales&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;etc like this. All these will come in the first column.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;we will have as many number of columns depending on the number of months specified.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;only thing is the First col should get the above text.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Nov 2008 04:09:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767861#M1117653</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-11-07T04:09:26Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic Alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767862#M1117654</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tre in this way&lt;/P&gt;&lt;P&gt;first identify the total no of records then create the field catalog&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO y_lv_cntr_max TIMES.&lt;/P&gt;&lt;P&gt;    y_v_charno          = y_v_charno + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE 'SALES' '-'&lt;/P&gt;&lt;P&gt;                y_v_charno&lt;/P&gt;&lt;P&gt;                INTO y_wa_fcat-fieldname.&lt;/P&gt;&lt;P&gt;    CONCATENATE text-037&lt;/P&gt;&lt;P&gt;                y_v_charno&lt;/P&gt;&lt;P&gt;                INTO y_wa_fcat-scrtext_m .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND y_wa_fcat TO y_i_fcat.&lt;/P&gt;&lt;P&gt;    CLEAR y_wa_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    y_wa_fcat-ref_field = 'CLASS'.&lt;/P&gt;&lt;P&gt;    y_wa_fcat-ref_table   = 'KLAH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE 'CLASS' '-'&lt;/P&gt;&lt;P&gt;                 y_v_charno&lt;/P&gt;&lt;P&gt;                 INTO y_wa_fcat-fieldname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE text-038&lt;/P&gt;&lt;P&gt;                y_v_charno&lt;/P&gt;&lt;P&gt;                INTO y_wa_fcat-scrtext_m .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND y_wa_fcat TO y_i_fcat.&lt;/P&gt;&lt;P&gt;    CLEAR y_wa_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FIELD-SYMBOLS :   &amp;lt;y_fld&amp;gt;    TYPE ANY.&lt;/P&gt;&lt;P&gt;  DATA:             y_lv_comp  TYPE string.&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;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; CREATE OBJECT y_obj.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD cl_alv_table_create=&amp;gt;create_dynamic_table&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      it_fieldcatalog = y_i_fcat&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;  CLEAR y_v_charno .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT y_i_out BY objnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT y_i_final_output INTO y_wa_final_output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      y_v_charno = y_v_charno + 1.&lt;/P&gt;&lt;P&gt;      CONCATENATE 'ATNAM' '-'&lt;/P&gt;&lt;P&gt;                  y_v_charno&lt;/P&gt;&lt;P&gt;                  INTO y_lv_comp.&lt;/P&gt;&lt;P&gt;      ASSIGN COMPONENT  y_lv_comp OF STRUCTURE &amp;lt;dyn_wa&amp;gt; TO  &amp;lt;y_fld&amp;gt; .&lt;/P&gt;&lt;P&gt;      &amp;lt;y_fld&amp;gt; = y_wa_out-atnam.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'CLASS' '-'&lt;/P&gt;&lt;P&gt;                  y_v_charno&lt;/P&gt;&lt;P&gt;                  INTO y_lv_comp.&lt;/P&gt;&lt;P&gt;      ASSIGN COMPONENT  y_lv_comp OF STRUCTURE &amp;lt;dyn_wa&amp;gt; TO  &amp;lt;y_fld&amp;gt; .&lt;/P&gt;&lt;P&gt;      &amp;lt;y_fld&amp;gt; = y_wa_out-class.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Endloop,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND &amp;lt;dyn_wa&amp;gt; TO  &amp;lt;dyn_table&amp;gt;.&lt;/P&gt;&lt;P&gt;    FREE:  &amp;lt;dyn_wa&amp;gt;, &amp;lt;y_fld&amp;gt; .&lt;/P&gt;&lt;P&gt;    CLEAR  y_v_charno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT y_i_fcat INTO y_wa_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE: y_wa_fcat-fieldname  TO y_wa_fieldcat-fieldname,&lt;/P&gt;&lt;P&gt;          y_wa_fcat-tabname    TO y_wa_fieldcat-tabname,&lt;/P&gt;&lt;P&gt;          y_wa_fcat-col_pos    TO y_wa_fieldcat-col_pos,&lt;/P&gt;&lt;P&gt;          y_wa_fcat-scrtext_m  TO y_wa_fieldcat-seltext_m,&lt;/P&gt;&lt;P&gt;          y_wa_fcat-datatype   TO y_wa_fieldcat-datatype,&lt;/P&gt;&lt;P&gt;          y_wa_fcat-intlen     TO y_wa_fieldcat-intlen,&lt;/P&gt;&lt;P&gt;          y_wa_fcat-decimals_o TO y_wa_fieldcat-decimals_out.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND y_wa_fieldcat TO y_i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.      "LOOP AT y_i_fcat INTO y_wa_fcat.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Nov 2008 04:09:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767862#M1117654</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-11-07T04:09:45Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic Alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767863#M1117655</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Vikki&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There may be reasons why your matrix should look like you described but I think it should be just the other way around:&lt;/P&gt;&lt;P&gt;Columns = Sales   /  Expenses / ... / additional row: Period&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The following sample report may demonstrate what I mean:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Report  ZUS_SDN_DYNAMIC_VS_STATIC_ALV
*&amp;amp;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Thread: Dynamic Alv report
*&amp;amp; &amp;lt;a class="jive_macro jive_macro_thread" href="" __jive_macro_name="thread" modifiedtitle="true" __default_attr="1117643"&amp;gt;&amp;lt;/a&amp;gt;
*&amp;amp;---------------------------------------------------------------------*

REPORT  zus_sdn_dynamic_vs_static_alv.

TABLES: vbak.


TYPES: BEGIN OF ty_s_outtab.
**INCLUDE TYPE vbak.
TYPES: sales      TYPE netwr.
TYPES: date       TYPE erdat.
TYPES: sum        TYPE netwr.
TYPES: period(6)   TYPE c.
TYPES: END OF ty_s_outtab.
TYPES: ty_t_outtab    TYPE STANDARD TABLE OF ty_s_outtab
                      WITH DEFAULT KEY.

DATA: gt_outtab    TYPE ty_t_outtab.

DATA:
  gd_okcode        TYPE ui_func,
  gd_repid         TYPE syrepid,
*
  gt_fcat          TYPE lvc_t_fcat,
  gs_layout        TYPE lvc_s_layo,
  gs_variant       TYPE disvariant,
  go_docking       TYPE REF TO cl_gui_docking_container,
  go_grid          TYPE REF TO cl_gui_alv_grid.


START-OF-SELECTION.

  PERFORM fill_data.

  PERFORM init_controls.
* Build fieldcatalog and set hotspot for field KUNNR
  PERFORM build_fieldcatalog.

  PERFORM set_layout_and_variant.


* Display data
  CALL METHOD go_grid-&amp;gt;set_table_for_first_display
    EXPORTING
      is_variant                    = gs_variant
      i_save                        = 'A'
*      i_default                     = 'X'
      is_layout                     = gs_layout
*      is_print                      =
*      it_special_groups             =
*      it_toolbar_excluding          =
*      it_hyperlink                  =
*      it_alv_graphics               =
*      it_except_qinfo               =
*      ir_salv_adapter               =
    CHANGING
      it_outtab                     = gt_outtab
      it_fieldcatalog               = gt_fcat
*      it_sort                       =
*      it_filter                     =
    EXCEPTIONS
      invalid_parameter_combination = 1
      program_error                 = 2
      too_many_lines                = 3
      OTHERS                        = 4.
  IF sy-subrc &amp;lt;&amp;gt; 0.
*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.


* Link the docking container to the target dynpro
  gd_repid = syst-repid.
  CALL METHOD go_docking-&amp;gt;link
    EXPORTING
      repid                       = gd_repid
      dynnr                       = '0100'
*      CONTAINER                   =
    EXCEPTIONS
      OTHERS                      = 4.
  IF sy-subrc &amp;lt;&amp;gt; 0.
*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.


* ok-code field = GD_OKCODE
  CALL SCREEN '0100'.

END-OF-SELECTION.


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  STATUS_0100  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  SET PF-STATUS 'STATUS_0100'.
*  SET TITLEBAR 'xxx'.

**      CALL METHOD go_grid1-&amp;gt;refresh_table_display
***        EXPORTING
***          IS_STABLE      =
***          I_SOFT_REFRESH =
**        EXCEPTIONS
**          FINISHED       = 1
**          others         = 2
**              .
**      IF sy-subrc &amp;lt;&amp;gt; 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

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  USER_COMMAND_0100  INPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.

  CASE gd_okcode.
    WHEN 'BACK' OR
         'END'  OR
         'CANC'.
      SET SCREEN 0. LEAVE SCREEN.



    WHEN OTHERS.
      " Check for changed data at the frontend (= grid control)
      go_grid-&amp;gt;check_changed_data( ).



  ENDCASE.

  CALL METHOD go_grid-&amp;gt;refresh_table_display
*    EXPORTING
*      IS_STABLE      =
*      I_SOFT_REFRESH =
    EXCEPTIONS
      finished       = 1
      OTHERS         = 2.
  IF sy-subrc &amp;lt;&amp;gt; 0.
*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.


  CLEAR: gd_okcode.

ENDMODULE.                 " USER_COMMAND_0100  INPUT


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  INIT_CONTROLS
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM init_controls .

* Create docking container
  CREATE OBJECT go_docking
    EXPORTING
      parent = cl_gui_container=&amp;gt;screen0
      ratio  = 90
    EXCEPTIONS
      OTHERS = 6.
  IF sy-subrc &amp;lt;&amp;gt; 0.
*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.


* Create ALV grid
  CREATE OBJECT go_grid
    EXPORTING
      i_parent = go_docking
    EXCEPTIONS
      OTHERS   = 5.
  IF sy-subrc &amp;lt;&amp;gt; 0.
*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

ENDFORM.                    " INIT_CONTROLS


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  BUILD_FIELDCATALOG
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM build_fieldcatalog.
* define local data
  DATA:
    ls_fcat        TYPE lvc_s_fcat,
    lt_fcat        TYPE lvc_t_fcat.

  REFRESH: gt_fcat.

  CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
    EXPORTING
*     I_BUFFER_ACTIVE              =
      i_structure_name             = 'VBAK'
*     I_CLIENT_NEVER_DISPLAY       = 'X'
*     I_BYPASSING_BUFFER           =
*     I_INTERNAL_TABNAME           =
    CHANGING
      ct_fieldcat                  = lt_fcat
    EXCEPTIONS
      inconsistent_interface       = 1
      program_error                = 2
      OTHERS                       = 3.
  IF sy-subrc &amp;lt;&amp;gt; 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.


* Only non-key fields are editable
  LOOP AT lt_fcat INTO ls_fcat.
    CASE ls_fcat-fieldname.
      WHEN 'NETWR'.
        ls_fcat-fieldname = 'SALES'.
        APPEND ls_fcat TO gt_fcat.

        ls_fcat-fieldname = 'SUM'.
        ls_fcat-scrtext_s = 'Sum'.
        ls_fcat-coltext   = 'Sum'.
        APPEND ls_fcat TO gt_fcat.

      WHEN 'WAERK'.
        ls_fcat-tech = 'X'.
        APPEND ls_fcat TO gt_fcat.

      WHEN 'ERDAT'.
        ls_fcat-no_out = 'X'.
        APPEND ls_fcat TO gt_fcat.

        ls_fcat-fieldname = 'PERIOD'.
        ls_fcat-scrtext_s = 'Period'.
        ls_fcat-scrtext_m = 'Period'.
        ls_fcat-scrtext_l = 'Period'.
        ls_fcat-reptext = 'Period'.
        ls_fcat-coltext   = 'Period'.
        APPEND ls_fcat TO gt_fcat.

      WHEN OTHERS.
        CONTINUE.
    ENDCASE.

  ENDLOOP.

  LOOP AT gt_fcat INTO ls_fcat.
    ls_fcat-col_pos = syst-tabix.

    MODIFY gt_fcat FROM ls_fcat.
  ENDLOOP.


ENDFORM.                    " BUILD_FIELDCATALOG


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  SET_LAYOUT_AND_VARIANT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM set_layout_and_variant .

  CLEAR: gs_layout,
         gs_variant.

  gs_layout-cwidth_opt = abap_true.

  gs_variant-report = syst-repid.
  gs_variant-handle = 'GRID'.

ENDFORM.                    " SET_LAYOUT_AND_VARIANT


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  FILL_DATA
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM fill_data .
* define local data
  DATA: ls_outtab   TYPE ty_s_outtab.

  ls_outtab-sales = '100'.
  ls_outtab-date  = '20080110'.

  ls_outtab-period = 'Jan-08'.  " determine from ls_outtab-DATE
  APPEND ls_outtab TO gt_outtab.


  ls_outtab-sales = '120'.
  ls_outtab-date  = '20080222'.

  ls_outtab-period = 'Feb-08'.
  APPEND ls_outtab TO gt_outtab.

  LOOP AT gt_outtab INTO ls_outtab.
    ls_outtab-sum = ls_outtab-sales.
    " add ls_outtab-expenses to ls_outtab-sum.
    " ...

    MODIFY gt_outtab FROM ls_outtab INDEX syst-tabix.
  ENDLOOP.

ENDFORM.                    " FILL_DATA
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If the business users still need a transposed list then they can export it to Excel and make the transformation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;  Uwe&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Nov 2008 04:50:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767863#M1117655</guid>
      <dc:creator>uwe_schieferstein</dc:creator>
      <dc:date>2008-11-07T04:50:45Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic Alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767864#M1117656</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your replies.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;what should be the structure of my Internal table for populating the Dynamic internal table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i shd be getting &lt;/P&gt;&lt;P&gt;Sales  for Oct , Nov, Dec..............................&lt;/P&gt;&lt;P&gt;like this for all the others.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;so , my internal table will be&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt; month              text                          Value
         
         Oct                sales                          1000
         Nov                sales                          300
         Dec               sales                           400
 &lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Am i correct?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And one more thing- i created a dynamic internal table and passed on the dat to it&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the display , i am getting the first col with the text.&lt;/P&gt;&lt;P&gt;The problem i am facing is the other columns are also displaying the same text.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Should i created a Fieldcat also dynamically?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am confused in this issue in designing the internal table to pass on the sat to the dynamic internal table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Help me in solving this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Vikki.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Nov 2008 09:40:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767864#M1117656</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-11-07T09:40:35Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic Alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767865#M1117657</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Vikki&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Since your list layout almost looks like my proposal you do not need any dynamic itab but just define all required values field in a structure including an additional field for the period (e.g. Nov-08) and perhaps a SUM field to summarize the values per row.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This structure can be used to create the fieldcatalog automatically which probably needs some refinement (texts, etc.) afterwards.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Assuming that you can have records for arbitrary dates there are just two things you need to do:&lt;/P&gt;&lt;P&gt;(1) Aggregate values per period (e.g. collect all values from 01/11/08 - 30/11/08 into a single record for period Nov-08)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(2) For each aggregated record create the period description (e.g. Nov-08).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That's all.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;  Uwe&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Nov 2008 11:22:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/dynamic-alv-report/m-p/4767865#M1117657</guid>
      <dc:creator>uwe_schieferstein</dc:creator>
      <dc:date>2008-11-07T11:22:04Z</dc:date>
    </item>
  </channel>
</rss>

