<?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 wrong structure for dynamic table in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/wrong-structure-for-dynamic-table/m-p/1778740#M335705</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I am building a filed catalog for generating a dynamic table. For this purpose I am using this form.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; FORM get_structure .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   DATA : idetails TYPE abap_compdescr_tab,&lt;/P&gt;&lt;P&gt;          xdetails TYPE abap_compdescr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   DATA : ref_table_des TYPE REF TO cl_abap_structdescr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the structure of the table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   ref_table_des ?=&lt;/P&gt;&lt;P&gt;       cl_abap_typedescr=&amp;gt;describe_by_name( pa_tab ).&lt;/P&gt;&lt;P&gt;   idetails[] = ref_table_des-&amp;gt;components[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   LOOP AT idetails INTO xdetails.&lt;/P&gt;&lt;P&gt;     CLEAR xfc.&lt;/P&gt;&lt;P&gt;     xfc-fieldname = xdetails-name .&lt;/P&gt;&lt;P&gt;     xfc-datatype = xdetails-type_kind.&lt;/P&gt;&lt;P&gt;     xfc-inttype = xdetails-type_kind.&lt;/P&gt;&lt;P&gt;     xfc-intlen = xdetails-length.&lt;/P&gt;&lt;P&gt;     xfc-decimals = xdetails-decimals.&lt;/P&gt;&lt;P&gt;     APPEND xfc TO ifc.&lt;/P&gt;&lt;P&gt;   ENDLOOP.&lt;/P&gt;&lt;P&gt; ENDFORM.                    " get_structure&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The problem is that idetails has different structure than desired. The field names are OK but data type and lenght of fields are returned in the internal format ( P instead of CURR , S instead of INT2 ). How can I obtain dynamically a table with a identical structure as pa_tab?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 03 Jan 2007 10:33:47 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-01-03T10:33:47Z</dc:date>
    <item>
      <title>wrong structure for dynamic table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/wrong-structure-for-dynamic-table/m-p/1778740#M335705</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I am building a filed catalog for generating a dynamic table. For this purpose I am using this form.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; FORM get_structure .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   DATA : idetails TYPE abap_compdescr_tab,&lt;/P&gt;&lt;P&gt;          xdetails TYPE abap_compdescr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   DATA : ref_table_des TYPE REF TO cl_abap_structdescr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the structure of the table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   ref_table_des ?=&lt;/P&gt;&lt;P&gt;       cl_abap_typedescr=&amp;gt;describe_by_name( pa_tab ).&lt;/P&gt;&lt;P&gt;   idetails[] = ref_table_des-&amp;gt;components[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   LOOP AT idetails INTO xdetails.&lt;/P&gt;&lt;P&gt;     CLEAR xfc.&lt;/P&gt;&lt;P&gt;     xfc-fieldname = xdetails-name .&lt;/P&gt;&lt;P&gt;     xfc-datatype = xdetails-type_kind.&lt;/P&gt;&lt;P&gt;     xfc-inttype = xdetails-type_kind.&lt;/P&gt;&lt;P&gt;     xfc-intlen = xdetails-length.&lt;/P&gt;&lt;P&gt;     xfc-decimals = xdetails-decimals.&lt;/P&gt;&lt;P&gt;     APPEND xfc TO ifc.&lt;/P&gt;&lt;P&gt;   ENDLOOP.&lt;/P&gt;&lt;P&gt; ENDFORM.                    " get_structure&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The problem is that idetails has different structure than desired. The field names are OK but data type and lenght of fields are returned in the internal format ( P instead of CURR , S instead of INT2 ). How can I obtain dynamically a table with a identical structure as pa_tab?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Jan 2007 10:33:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/wrong-structure-for-dynamic-table/m-p/1778740#M335705</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-03T10:33:47Z</dc:date>
    </item>
    <item>
      <title>Re: wrong structure for dynamic table</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/wrong-structure-for-dynamic-table/m-p/1778741#M335706</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi George,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a simple program where, it reads the table name and its structure...&lt;/P&gt;&lt;P&gt;Please go through, it may help you.. &lt;SPAN __jive_emoticon_name="happy"&gt;&lt;/SPAN&gt;, &lt;/P&gt;&lt;P&gt;If i am not wrong, i understood that, you have to careate a dynamic structure by reading the table form the user.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think you can make use of some of the function Modules in the below program&lt;/P&gt;&lt;P&gt;*********************************************&lt;/P&gt;&lt;P&gt;Sample Code: &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  ZSNI_TEST002                                                *&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;REPORT  zsni_test002  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: d_ref TYPE REF TO data,&lt;/P&gt;&lt;P&gt;      d_ref2 TYPE REF TO data ,&lt;/P&gt;&lt;P&gt;      i_alv_cat TYPE TABLE OF lvc_s_fcat,&lt;/P&gt;&lt;P&gt;      ls_alv_cat LIKE LINE OF i_alv_cat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES tabname LIKE dcobjdef-name .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETER: p_tablen TYPE tabname .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DATA: BEGIN OF itab OCCURS 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       INCLUDE STRUCTURE dntab.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*DATA: END OF itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF itab OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE dfies.                  "X031L.&lt;/P&gt;&lt;P&gt;DATA: END OF itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS : &amp;lt;f_fs&amp;gt;  TYPE table,&lt;/P&gt;&lt;P&gt;                &amp;lt;f_fs1&amp;gt; TYPE table,&lt;/P&gt;&lt;P&gt;                &amp;lt;f_fs2&amp;gt; TYPE ANY,&lt;/P&gt;&lt;P&gt;                &amp;lt;f_fs3&amp;gt; TYPE table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REFRESH itab.&lt;/P&gt;&lt;P&gt;*CALL FUNCTION 'NAMETAB_GET'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   langu          = sy-langu&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   tabname        = p_tablen&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   nametab        = itab&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   no_texts_found = 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*CALL FUNCTION 'DDIF_NAMETAB_GET'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   tabname           = p_tablen&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  ALL_TYPES         = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  LFIELDNAME        = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  GROUP_NAMES       = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  UCLEN             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  X030L_WA          =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  DTELINFO_WA       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  TTYPINFO_WA       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  DDOBJTYPE         =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  DFIES_WA          =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  LINES_DESCR       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  X031L_TAB         = itab&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  DFIES_TAB         =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  NOT_FOUND         = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  OTHERS            = 2&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*CALL FUNCTION 'DDIF_FIELDINFO_GET'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   tabname              = p_tablen&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  FIELDNAME            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   LANGU                = SY-LANGU&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  LFIELDNAME           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  ALL_TYPES            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  GROUP_NAMES          = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  UCLEN                =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  X030L_WA             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  DDOBJTYPE            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  DFIES_WA             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  LINES_DESCR          =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   DFIES_TAB            = itab&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  FIXED_VALUES         =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  NOT_FOUND            = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  INTERNAL_ERROR       = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  OTHERS               = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*LOOP AT itab .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_alv_cat-fieldname = itab-fieldname.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_alv_cat-ref_table = p_tablen.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_alv_cat-ref_field = itab-fieldname.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; APPEND ls_alv_cat TO i_alv_cat.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*ENDLOOP.&lt;/P&gt;&lt;P&gt;DATA : PQ(3) TYPE N.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DO 100 TIMES.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PQ = SY-INDEX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONCATENATE 'D' PQ INTO ls_alv_cat-fieldname.&lt;/P&gt;&lt;P&gt;  ls_alv_cat-ref_table = 'MAKT'.&lt;/P&gt;&lt;P&gt;  ls_alv_cat-ref_field = 'MAKTX'.&lt;/P&gt;&lt;P&gt;  APPEND ls_alv_cat TO i_alv_cat.&lt;/P&gt;&lt;P&gt;ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;internal table build&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;CALL METHOD cl_alv_table_create=&amp;gt;create_dynamic_table&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    it_fieldcatalog = i_alv_cat&lt;/P&gt;&lt;P&gt;  IMPORTING&lt;/P&gt;&lt;P&gt;    ep_table        = d_ref.&lt;/P&gt;&lt;P&gt;ASSIGN d_ref-&amp;gt;* TO &amp;lt;f_fs&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM (p_tablen) INTO CORRESPONDING FIELDS OF TABLE &amp;lt;f_fs&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT &amp;lt;f_fs&amp;gt; ASSIGNING &amp;lt;f_fs2&amp;gt;.&lt;/P&gt;&lt;P&gt;*your code goes here.&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;Manjunatha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Jan 2007 15:56:14 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/wrong-structure-for-dynamic-table/m-p/1778741#M335706</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-03T15:56:14Z</dc:date>
    </item>
  </channel>
</rss>

