<?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: write structure with separator into file in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290391#M155130</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;use assign command:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
data sep value '*'.

LOOP AT ibkpf.
clear str.
DO.
ASSIGN COMPONENT sy-index OF STRUCTURE ibkpf TO &amp;lt;fw&amp;gt;.
IF sy-subrc &amp;lt;&amp;gt; 0.
EXIT.
ENDIF.
CONCATENATE str &amp;lt;fw&amp;gt; INTO str SEPARATED BY sep.
ENDDO.

transfer str to file.

ENDLOOP.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 23 Mar 2006 08:19:53 GMT</pubDate>
    <dc:creator>andreas_mann3</dc:creator>
    <dc:date>2006-03-23T08:19:53Z</dc:date>
    <item>
      <title>write structure with separator into file</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290390#M155129</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;I must write a file into a filesystem. The file should include data from a structure (e.g. -&amp;gt; data: i_bkpf like bkpf.). I must write the fields of the structure into the file separated with an character like '*'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How can I do this in high-performance way?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks&lt;/P&gt;&lt;P&gt;markus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 23 Mar 2006 08:14:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290390#M155129</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-03-23T08:14:04Z</dc:date>
    </item>
    <item>
      <title>Re: write structure with separator into file</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290391#M155130</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;use assign command:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
data sep value '*'.

LOOP AT ibkpf.
clear str.
DO.
ASSIGN COMPONENT sy-index OF STRUCTURE ibkpf TO &amp;lt;fw&amp;gt;.
IF sy-subrc &amp;lt;&amp;gt; 0.
EXIT.
ENDIF.
CONCATENATE str &amp;lt;fw&amp;gt; INTO str SEPARATED BY sep.
ENDDO.

transfer str to file.

ENDLOOP.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 23 Mar 2006 08:19:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290391#M155130</guid>
      <dc:creator>andreas_mann3</dc:creator>
      <dc:date>2006-03-23T08:19:53Z</dc:date>
    </item>
    <item>
      <title>Re: write structure with separator into file</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290392#M155131</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Use CONCATENATE statement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ex.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : lv_line(1000).&lt;/P&gt;&lt;P&gt;loop at itab.&lt;/P&gt;&lt;P&gt;clear lv_line.&lt;/P&gt;&lt;P&gt;concatenate itab-field1&lt;/P&gt;&lt;P&gt;            itab-field2&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;            itab-fieldn&lt;/P&gt;&lt;P&gt;into lv_line separated by '*'.&lt;/P&gt;&lt;P&gt;transfer lv_line to filepath.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This will be possible only when all the fields in itab are of type c or s, otherwise it will give a syntax error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In that case, use FM SO_STRUCT_TO_CHAR to convert the structure to charecter and then concatenate and transfer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Shashank&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 23 Mar 2006 08:33:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290392#M155131</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-03-23T08:33:33Z</dc:date>
    </item>
    <item>
      <title>Re: write structure with separator into file</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290393#M155132</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 wrote a class for that. The two main methods might be helpful:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
METHOD add_item .

  DATA:
    x       TYPE string,
    sep     TYPE c,
    c       TYPE c,
    len     TYPE i,
    start   TYPE i,
    end     TYPE i,
    status  TYPE i,
    i       TYPE i.

  x      = item.

  len    = STRLEN( x ).
  status =  0.
  start  = -1.
  end    =  0.

  DO len TIMES.
    i = sy-index - 1.
    c = x+i(1).

    CASE status.

      WHEN 0.
        IF c &amp;lt;&amp;gt; ' '.
          status = 1.
          start  = i.
        ENDIF.

      WHEN 1.
        IF c = ' '.
          status = 2.
          end    = i - 1.
        ENDIF.

      WHEN 2.
        IF c &amp;lt;&amp;gt; ' '.
          status = 1.
          end    = 0.
        ENDIF.

    ENDCASE.

  ENDDO.

  IF start = -1.
    x = ''.
  ELSEIF end = 0.
    x = x+start.
  ELSE.
    len = end - start + 1.
    x = x+start(len).
  ENDIF.

  IF STRLEN( x ) = 8.
    IF cd = 'I' OR cd = 'i' OR
       cd = 'D' OR cd = 'd'.

      IF date_separator IS INITIAL.
        sep = '.'.
      ELSE.
        sep = date_separator.
      ENDIF.

      CONCATENATE x+6(2) sep x+4(2) sep x+0(4)
        INTO x IN CHARACTER MODE.

    ENDIF.

    IF cd = 'E' OR cd = 'e' OR
       cd = 'A' OR cd = 'a'.

      IF date_separator IS INITIAL.
        sep = '/'.
      ELSE.
        sep = date_separator.
      ENDIF.

      CONCATENATE x+4(2) sep x+6(2) sep x+0(4)
        INTO x IN CHARACTER MODE.

    ENDIF.
  ENDIF.

  CONCATENATE wa_line x delimiter
    INTO wa_line IN CHARACTER MODE.

ENDMETHOD.

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;

METHOD add_line .

  APPEND wa_line TO it_csv.
  CLEAR wa_line.

ENDMETHOD.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Additem strips leading and trailing blanks and can convert dates into humanreadable dates. Perhaps you dont need evrything in there.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 23 Mar 2006 09:22:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290393#M155132</guid>
      <dc:creator>rainer_hbenthal</dc:creator>
      <dc:date>2006-03-23T09:22:03Z</dc:date>
    </item>
    <item>
      <title>Re: write structure with separator into file</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290394#M155133</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Markus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See this code , copy it and run it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  ZKUN_FILE3                              .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF itab1 OCCURS 0,&lt;/P&gt;&lt;P&gt;       sno TYPE i,&lt;/P&gt;&lt;P&gt;       mtype(2),&lt;/P&gt;&lt;P&gt;       count TYPE i,&lt;/P&gt;&lt;P&gt;       END OF itab1.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Creating the contents of Table itab1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;itab1-sno  = 1.&lt;/P&gt;&lt;P&gt;itab1-mtype = 'e1'.&lt;/P&gt;&lt;P&gt;itab1-count = 1.&lt;/P&gt;&lt;P&gt;APPEND itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;itab1-sno  = 1.&lt;/P&gt;&lt;P&gt;itab1-mtype = 'e2'.&lt;/P&gt;&lt;P&gt;itab1-count = 3.&lt;/P&gt;&lt;P&gt;APPEND itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;itab1-sno  = 2.&lt;/P&gt;&lt;P&gt;itab1-mtype = 'e2'.&lt;/P&gt;&lt;P&gt;itab1-count = 2.&lt;/P&gt;&lt;P&gt;APPEND itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;itab1-sno  = 3.&lt;/P&gt;&lt;P&gt;itab1-mtype = 'e3'.&lt;/P&gt;&lt;P&gt;itab1-count = 2.&lt;/P&gt;&lt;P&gt;APPEND itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; 'content of itab1'.&lt;/P&gt;&lt;P&gt;LOOP AT itab1.&lt;/P&gt;&lt;P&gt;    WRITE : / itab1-sno, itab1-mtype,itab1-count LEFT-JUSTIFIED .&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  BIN_FILESIZE                    =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    filename                        = 'c:\file_test.txt'&lt;/P&gt;&lt;P&gt;   FILETYPE                        = 'ASC'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  APPEND                          = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   WRITE_FIELD_SEPARATOR           = '*'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  HEADER                          = '00'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  TRUNC_TRAILING_BLANKS           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  WRITE_LF                        = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  COL_SELECT                      = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  COL_SELECT_MASK                 = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DAT_MODE                        = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  CONFIRM_OVERWRITE               = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  NO_AUTH_CHECK                   = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  CODEPAGE                        = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IGNORE_CERR                     = ABAP_TRUE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  REPLACEMENT                     = '#'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  WRITE_BOM                       = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  TRUNC_TRAILING_BLANKS_EOL       = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FILELENGTH                      =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  tables&lt;/P&gt;&lt;P&gt;    data_tab                        = itab1&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FIELDNAMES                      =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_WRITE_ERROR                = 1&lt;/P&gt;&lt;P&gt;   NO_BATCH                        = 2&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER         = 3&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                    = 4&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                    = 5&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                   = 6&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED              = 7&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED           = 8&lt;/P&gt;&lt;P&gt;   FILESIZE_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG                 = 10&lt;/P&gt;&lt;P&gt;   DP_ERROR_CREATE                 = 11&lt;/P&gt;&lt;P&gt;   DP_ERROR_SEND                   = 12&lt;/P&gt;&lt;P&gt;   DP_ERROR_WRITE                  = 13&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR                = 14&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                   = 15&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY                = 16&lt;/P&gt;&lt;P&gt;   DISK_FULL                       = 17&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                      = 18&lt;/P&gt;&lt;P&gt;   FILE_NOT_FOUND                  = 19&lt;/P&gt;&lt;P&gt;   DATAPROVIDER_EXCEPTION          = 20&lt;/P&gt;&lt;P&gt;   CONTROL_FLUSH_ERROR             = 21&lt;/P&gt;&lt;P&gt;   OTHERS                          = 22&lt;/P&gt;&lt;P&gt;          .&lt;/P&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;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;  message i007(zmsg_kunal).&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here the file is written to the drive c with name file_test.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this solves your doubt.&lt;/P&gt;&lt;P&gt;Do reard with points if satisfied.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Kunal.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 23 Mar 2006 12:13:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/write-structure-with-separator-into-file/m-p/1290394#M155133</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-03-23T12:13:07Z</dc:date>
    </item>
  </channel>
</rss>

