<?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 How to convert a string to dynamic workarea? in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-convert-a-string-to-dynamic-workarea/m-p/9640448#M1762867</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Experts,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; I have a string variable whose values is coming dynamically at runtime.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; For example v_stg = 'SHP10008006745'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Here the string contains two values SHP1 and 0008006745. This is in fixed length format.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Here first value is 4 char length and second 10. spaces are replaced by leading zeros. ( we need nor worry about this ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Similarly this variable can contain 3 values or more because it is dynamically populated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Now i am creating a workarea dynamically. I am getting the fields for this workarea from a table. So it the above string variable has 2 values then the workarea will have 2 fields. Similarly if the string variable has 3 values then the workarea will have 3 fields.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now I want to put the value of string variable into this workarea. Based on the length it should automatically assign the values to correct fields of the workarea..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I tried the below code but it does not work and getting the syntax error: &lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;The type of "V_STG" cannot be converted to the type of "STRUC_TAB"&lt;/TD&gt;&lt;TD&gt;&lt;BR /&gt;&lt;/TD&gt;&lt;TD&gt;&lt;BR /&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;. &lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S52"&gt;DATA&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;: &lt;/SPAN&gt;lo_dyn_type &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;REF &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;TO &lt;/SPAN&gt;cl_abap_structdescr&lt;SPAN class="L0S55"&gt;,&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struc_tab &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;REF &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;TO &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;data&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S31"&gt;* Create a New Type using the node structure obtained above&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lo_dyn_type &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;cl_abap_structdescr&lt;SPAN class="L0S70"&gt;=&amp;gt;&lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;create&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;( &lt;/SPAN&gt;i_tot_comp_dyn &lt;SPAN class="L0S55"&gt;)&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt; *&lt;/SPAN&gt;i_tot_comp_dyn contains the fields required for the dynamic workarea&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;CREATE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;DATA &lt;/SPAN&gt;struc_tab &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;HANDLE lo_dyn_type&lt;SPAN class="L0S55"&gt;. "&amp;lt;-- struc_tab is my dynamic workarea&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struc_tab &lt;SPAN class="L0S55"&gt;= v_stg&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;. "&amp;lt;--v_stg is the string variable&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Gopal&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 23 Jul 2013 12:10:00 GMT</pubDate>
    <dc:creator>gopalkrishna_baliga</dc:creator>
    <dc:date>2013-07-23T12:10:00Z</dc:date>
    <item>
      <title>How to convert a string to dynamic workarea?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-convert-a-string-to-dynamic-workarea/m-p/9640448#M1762867</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Experts,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; I have a string variable whose values is coming dynamically at runtime.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; For example v_stg = 'SHP10008006745'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Here the string contains two values SHP1 and 0008006745. This is in fixed length format.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Here first value is 4 char length and second 10. spaces are replaced by leading zeros. ( we need nor worry about this ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Similarly this variable can contain 3 values or more because it is dynamically populated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Now i am creating a workarea dynamically. I am getting the fields for this workarea from a table. So it the above string variable has 2 values then the workarea will have 2 fields. Similarly if the string variable has 3 values then the workarea will have 3 fields.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now I want to put the value of string variable into this workarea. Based on the length it should automatically assign the values to correct fields of the workarea..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I tried the below code but it does not work and getting the syntax error: &lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;The type of "V_STG" cannot be converted to the type of "STRUC_TAB"&lt;/TD&gt;&lt;TD&gt;&lt;BR /&gt;&lt;/TD&gt;&lt;TD&gt;&lt;BR /&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;. &lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S52"&gt;DATA&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;: &lt;/SPAN&gt;lo_dyn_type &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;REF &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;TO &lt;/SPAN&gt;cl_abap_structdescr&lt;SPAN class="L0S55"&gt;,&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struc_tab &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;REF &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;TO &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;data&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S31"&gt;* Create a New Type using the node structure obtained above&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lo_dyn_type &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;cl_abap_structdescr&lt;SPAN class="L0S70"&gt;=&amp;gt;&lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;create&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;( &lt;/SPAN&gt;i_tot_comp_dyn &lt;SPAN class="L0S55"&gt;)&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt; *&lt;/SPAN&gt;i_tot_comp_dyn contains the fields required for the dynamic workarea&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;CREATE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;DATA &lt;/SPAN&gt;struc_tab &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;HANDLE lo_dyn_type&lt;SPAN class="L0S55"&gt;. "&amp;lt;-- struc_tab is my dynamic workarea&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struc_tab &lt;SPAN class="L0S55"&gt;= v_stg&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;. "&amp;lt;--v_stg is the string variable&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Gopal&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 Jul 2013 12:10:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-convert-a-string-to-dynamic-workarea/m-p/9640448#M1762867</guid>
      <dc:creator>gopalkrishna_baliga</dc:creator>
      <dc:date>2013-07-23T12:10:00Z</dc:date>
    </item>
    <item>
      <title>Re: How to convert a string to dynamic workarea?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-convert-a-string-to-dynamic-workarea/m-p/9640449#M1762868</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, you should build an internal table with fields details&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: &lt;SPAN style="font-size: 10pt;"&gt;gt_itab &lt;/SPAN&gt;&lt;SPAN class="L0S52" style="font-size: 10pt;"&gt;TYPE &lt;/SPAN&gt;&lt;SPAN class="L0S52" style="font-size: 10pt;"&gt;REF &lt;/SPAN&gt;&lt;SPAN class="L0S52" style="font-size: 10pt;"&gt;TO &lt;/SPAN&gt;&lt;SPAN class="L0S52" style="font-size: 10pt;"&gt;data&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gt_fcat TYPE lvc_t_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;fs_fcat&amp;gt; TYPE lvc_s_fcat,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;fs_itab&amp;gt; &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;STANDARD &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;fs_wa&amp;gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;any&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;* You can put your fields and their length&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;APPEND INITIAL LINE TO gt_fcat ASSIGNING &amp;lt;fs_fcat&amp;gt;.&lt;/P&gt;&lt;P&gt;&amp;lt;fs_fcat&amp;gt;-fieldname = 'FIELD01'.&lt;/P&gt;&lt;P&gt;&amp;lt;fs_fcat&amp;gt;-datatype = 'CHAR'.&lt;/P&gt;&lt;P&gt;&amp;lt;fs_fcat&amp;gt;-outputlen = 4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND INITIAL LINE TO gt_fcat ASSIGNING &amp;lt;fs_fcat&amp;gt;.&lt;/P&gt;&lt;P&gt;&amp;lt;fs_fcat&amp;gt;-fieldname = 'FIELD02'.&lt;/P&gt;&lt;P&gt;&amp;lt;fs_fcat&amp;gt;-datatype = 'CHAR'.&lt;/P&gt;&lt;P&gt;&amp;lt;fs_fcat&amp;gt;-outputlen = 10.&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;* Create internal table&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; cl_alv_table_create&lt;SPAN class="L0S70"&gt;=&amp;gt;&lt;/SPAN&gt;create_dynamic_table&lt;SPAN class="L0S55"&gt;(&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;EXPORTING&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; it_fieldcatalog &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;gt_fcat&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;IMPORTING&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ep_table&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;gt_itab &lt;SPAN class="L0S55"&gt;)&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S31" style="color: #0000ff;"&gt;* Assign table&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;SPAN class="L0S52"&gt;ASSIGN &lt;/SPAN&gt;gt_itab&lt;SPAN class="L0S70"&gt;-&amp;gt;&lt;/SPAN&gt;* &lt;SPAN class="L0S52"&gt;TO &lt;/SPAN&gt;&amp;lt;fs_itab&amp;gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;SPAN class="L0S31" style="color: #0000ff;"&gt;* Create structure&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;SPAN class="L0S52"&gt;CREATE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;DATA &lt;/SPAN&gt;gs_itab &lt;SPAN class="L0S52"&gt;LIKE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;LINE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;OF &lt;/SPAN&gt;&amp;lt;fs_itab&amp;gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;SPAN class="L0S31" style="color: #0000ff;"&gt;* Assign structure&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;SPAN class="L0S52"&gt;ASSIGN &lt;/SPAN&gt;gs_itab&lt;SPAN class="L0S70"&gt;-&amp;gt;&lt;/SPAN&gt;* &lt;SPAN class="L0S52"&gt;TO &lt;/SPAN&gt;&amp;lt;fs_wa&amp;gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55" style="color: #0000ff;"&gt;* Assign values&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;&amp;lt;fs_wa&amp;gt; = v_stg.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;I hope this help you&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;Regards&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;David Carballido&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 Jul 2013 17:16:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-convert-a-string-to-dynamic-workarea/m-p/9640449#M1762868</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2013-07-23T17:16:44Z</dc:date>
    </item>
  </channel>
</rss>

