<?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: Splitting flat file data in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/splitting-flat-file-data/m-p/2443001#M546997</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Manjula,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check out the below program this will help you solve your requirement, you split the records as per the limit specified and puts them in a new file. Think so it help you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT zc1_split_file MESSAGE-ID ztestmsg.&lt;/P&gt;&lt;P&gt;TABLES: mara.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF input,&lt;/P&gt;&lt;P&gt;mandt LIKE mara-mandt,&lt;/P&gt;&lt;P&gt;matnr LIKE mara-matnr,&lt;/P&gt;&lt;P&gt;ersda LIKE mara-ersda,&lt;/P&gt;&lt;P&gt;ernam LIKE mara-ernam,&lt;/P&gt;&lt;P&gt;matkl LIKE mara-matkl,&lt;/P&gt;&lt;P&gt;END OF input.&lt;/P&gt;&lt;P&gt;DATA: i_mara_tab LIKE TABLE OF input WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;i_mara_temp LIKE TABLE OF input,&lt;/P&gt;&lt;P&gt;w_mara_tab LIKE LINE OF i_mara_tab,&lt;/P&gt;&lt;P&gt;v_newfile(120) TYPE c,&lt;/P&gt;&lt;P&gt;v_no_lines TYPE i,&lt;/P&gt;&lt;P&gt;v_split(4) TYPE n VALUE 1,&lt;/P&gt;&lt;P&gt;v_count(4) TYPE n VALUE 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_file TYPE rlgrap-filename MEMORY ID file,&lt;/P&gt;&lt;P&gt;p_count(4) TYPE n.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="13" type="ul"&gt;&lt;P&gt;Diplaying the dialog box for opening the file ************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;CALL FUNCTION 'WS_FILENAME_GET'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;mask = '&lt;STRONG&gt;.&lt;/STRONG&gt;,&lt;STRONG&gt;.&lt;/STRONG&gt;.'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;filename = p_file.&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;IF p_file IS INITIAL. " check to ensure file.&lt;/P&gt;&lt;P&gt;MESSAGE i001.&lt;/P&gt;&lt;P&gt;EXIT.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;IF p_count IS INITIAL. " check to ensure file.&lt;/P&gt;&lt;P&gt;MESSAGE i002.&lt;/P&gt;&lt;P&gt;EXIT.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;filename = p_file&lt;/P&gt;&lt;P&gt;filetype = 'DAT'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = i_mara_tab&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;conversion_error = 1&lt;/P&gt;&lt;P&gt;file_open_error = 2&lt;/P&gt;&lt;P&gt;file_read_error = 3&lt;/P&gt;&lt;P&gt;invalid_type = 4&lt;/P&gt;&lt;P&gt;no_batch = 5&lt;/P&gt;&lt;P&gt;unknown_error = 6&lt;/P&gt;&lt;P&gt;invalid_table_width = 7&lt;/P&gt;&lt;P&gt;gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;customer_error = 9&lt;/P&gt;&lt;P&gt;OTHERS = 10.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT i_mara_tab INTO w_mara_tab.&lt;/P&gt;&lt;P&gt;IF v_count &amp;lt; p_count.&lt;/P&gt;&lt;P&gt;APPEND w_mara_tab TO i_mara_temp.&lt;/P&gt;&lt;P&gt;v_count = v_count + 1.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;APPEND w_mara_tab TO i_mara_temp.&lt;/P&gt;&lt;P&gt;v_count = v_count + 1.&lt;/P&gt;&lt;P&gt;PERFORM split_records.&lt;/P&gt;&lt;P&gt;REFRESH i_mara_temp.&lt;/P&gt;&lt;P&gt;v_count = 1.&lt;/P&gt;&lt;P&gt;v_split = v_split + 1.&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;IF v_count NE 1.&lt;/P&gt;&lt;P&gt;PERFORM split_records.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text&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 split_records.&lt;/P&gt;&lt;P&gt;CONCATENATE p_file v_split INTO v_newfile.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WS_DOWNLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;filename = v_newfile&lt;/P&gt;&lt;P&gt;filetype = 'DAT'&lt;/P&gt;&lt;P&gt;mode = 'A'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = i_mara_temp&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;file_open_error = 1&lt;/P&gt;&lt;P&gt;file_write_error = 2&lt;/P&gt;&lt;P&gt;invalid_filesize = 3&lt;/P&gt;&lt;P&gt;invalid_type = 4&lt;/P&gt;&lt;P&gt;no_batch = 5&lt;/P&gt;&lt;P&gt;unknown_error = 6&lt;/P&gt;&lt;P&gt;invalid_table_width = 7&lt;/P&gt;&lt;P&gt;gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;customer_error = 9&lt;/P&gt;&lt;P&gt;no_authority = 10&lt;/P&gt;&lt;P&gt;OTHERS = 11.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;WRITE:/'Data has been written into:' , v_newfile.&lt;/P&gt;&lt;P&gt;ENDFORM. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**Reward points if found useful....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Manikandan.A&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 05 Jul 2007 14:25:32 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-07-05T14:25:32Z</dc:date>
    <item>
      <title>Splitting flat file data</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/splitting-flat-file-data/m-p/2443000#M546996</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I want to store the flat file data for temporary purpose and as a backup also, but its size is so huge that processing them at one instance is a difficult task. Is there any 'Z' program that will split the records puts it in a new file. Anyone please give an idea and your answer ll b rewarded with maximum points if it helps me on this issue.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Jul 2007 14:11:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/splitting-flat-file-data/m-p/2443000#M546996</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-05T14:11:37Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting flat file data</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/splitting-flat-file-data/m-p/2443001#M546997</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Manjula,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check out the below program this will help you solve your requirement, you split the records as per the limit specified and puts them in a new file. Think so it help you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT zc1_split_file MESSAGE-ID ztestmsg.&lt;/P&gt;&lt;P&gt;TABLES: mara.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF input,&lt;/P&gt;&lt;P&gt;mandt LIKE mara-mandt,&lt;/P&gt;&lt;P&gt;matnr LIKE mara-matnr,&lt;/P&gt;&lt;P&gt;ersda LIKE mara-ersda,&lt;/P&gt;&lt;P&gt;ernam LIKE mara-ernam,&lt;/P&gt;&lt;P&gt;matkl LIKE mara-matkl,&lt;/P&gt;&lt;P&gt;END OF input.&lt;/P&gt;&lt;P&gt;DATA: i_mara_tab LIKE TABLE OF input WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;i_mara_temp LIKE TABLE OF input,&lt;/P&gt;&lt;P&gt;w_mara_tab LIKE LINE OF i_mara_tab,&lt;/P&gt;&lt;P&gt;v_newfile(120) TYPE c,&lt;/P&gt;&lt;P&gt;v_no_lines TYPE i,&lt;/P&gt;&lt;P&gt;v_split(4) TYPE n VALUE 1,&lt;/P&gt;&lt;P&gt;v_count(4) TYPE n VALUE 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_file TYPE rlgrap-filename MEMORY ID file,&lt;/P&gt;&lt;P&gt;p_count(4) TYPE n.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="13" type="ul"&gt;&lt;P&gt;Diplaying the dialog box for opening the file ************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;CALL FUNCTION 'WS_FILENAME_GET'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;mask = '&lt;STRONG&gt;.&lt;/STRONG&gt;,&lt;STRONG&gt;.&lt;/STRONG&gt;.'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;filename = p_file.&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;IF p_file IS INITIAL. " check to ensure file.&lt;/P&gt;&lt;P&gt;MESSAGE i001.&lt;/P&gt;&lt;P&gt;EXIT.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;IF p_count IS INITIAL. " check to ensure file.&lt;/P&gt;&lt;P&gt;MESSAGE i002.&lt;/P&gt;&lt;P&gt;EXIT.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;filename = p_file&lt;/P&gt;&lt;P&gt;filetype = 'DAT'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = i_mara_tab&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;conversion_error = 1&lt;/P&gt;&lt;P&gt;file_open_error = 2&lt;/P&gt;&lt;P&gt;file_read_error = 3&lt;/P&gt;&lt;P&gt;invalid_type = 4&lt;/P&gt;&lt;P&gt;no_batch = 5&lt;/P&gt;&lt;P&gt;unknown_error = 6&lt;/P&gt;&lt;P&gt;invalid_table_width = 7&lt;/P&gt;&lt;P&gt;gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;customer_error = 9&lt;/P&gt;&lt;P&gt;OTHERS = 10.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT i_mara_tab INTO w_mara_tab.&lt;/P&gt;&lt;P&gt;IF v_count &amp;lt; p_count.&lt;/P&gt;&lt;P&gt;APPEND w_mara_tab TO i_mara_temp.&lt;/P&gt;&lt;P&gt;v_count = v_count + 1.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;APPEND w_mara_tab TO i_mara_temp.&lt;/P&gt;&lt;P&gt;v_count = v_count + 1.&lt;/P&gt;&lt;P&gt;PERFORM split_records.&lt;/P&gt;&lt;P&gt;REFRESH i_mara_temp.&lt;/P&gt;&lt;P&gt;v_count = 1.&lt;/P&gt;&lt;P&gt;v_split = v_split + 1.&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;IF v_count NE 1.&lt;/P&gt;&lt;P&gt;PERFORM split_records.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text&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 split_records.&lt;/P&gt;&lt;P&gt;CONCATENATE p_file v_split INTO v_newfile.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WS_DOWNLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;filename = v_newfile&lt;/P&gt;&lt;P&gt;filetype = 'DAT'&lt;/P&gt;&lt;P&gt;mode = 'A'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = i_mara_temp&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;file_open_error = 1&lt;/P&gt;&lt;P&gt;file_write_error = 2&lt;/P&gt;&lt;P&gt;invalid_filesize = 3&lt;/P&gt;&lt;P&gt;invalid_type = 4&lt;/P&gt;&lt;P&gt;no_batch = 5&lt;/P&gt;&lt;P&gt;unknown_error = 6&lt;/P&gt;&lt;P&gt;invalid_table_width = 7&lt;/P&gt;&lt;P&gt;gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;customer_error = 9&lt;/P&gt;&lt;P&gt;no_authority = 10&lt;/P&gt;&lt;P&gt;OTHERS = 11.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;WRITE:/'Data has been written into:' , v_newfile.&lt;/P&gt;&lt;P&gt;ENDFORM. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**Reward points if found useful....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Manikandan.A&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Jul 2007 14:25:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/splitting-flat-file-data/m-p/2443001#M546997</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-05T14:25:32Z</dc:date>
    </item>
    <item>
      <title>Re: Splitting flat file data</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/splitting-flat-file-data/m-p/2443002#M546998</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi manikandan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I got my issue resolved.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Manju.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Jul 2007 17:57:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/splitting-flat-file-data/m-p/2443002#M546998</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-05T17:57:31Z</dc:date>
    </item>
  </channel>
</rss>

