<?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: File archiving  in application server ? in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851867#M360736</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try using CG3Z transaction or use OPEN dATASET statement&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Guru&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 22 Jan 2007 22:45:47 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-01-22T22:45:47Z</dc:date>
    <item>
      <title>File archiving  in application server ?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851866#M360735</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;How to a archive file in application server to another folder? Is there any function module used for that?.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Jan 2007 22:44:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851866#M360735</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-22T22:44:05Z</dc:date>
    </item>
    <item>
      <title>Re: File archiving  in application server ?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851867#M360736</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try using CG3Z transaction or use OPEN dATASET statement&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Guru&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Jan 2007 22:45:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851867#M360736</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-22T22:45:47Z</dc:date>
    </item>
    <item>
      <title>Re: File archiving  in application server ?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851868#M360737</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Dan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;you can use following syntax:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;OPEN DATASET v_file FOR APPENDING IN TEXT MODE ENCODING DEFAULT.&lt;/P&gt;&lt;P&gt;        IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;          MESSAGE text-002 TYPE 'I'.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          CLEAR x_data.&lt;/P&gt;&lt;P&gt;          LOOP AT it_data INTO x_data.&lt;/P&gt;&lt;P&gt;            TRANSFER x_data TO v_file.&lt;/P&gt;&lt;P&gt;            APPEND   x_data TO it_sdata.&lt;/P&gt;&lt;P&gt;            CLEAR    x_data.&lt;/P&gt;&lt;P&gt;          ENDLOOP.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        CLOSE DATASET v_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Or you can use Transaction Code CG3Z.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ashven&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Jan 2007 22:50:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851868#M360737</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-22T22:50:32Z</dc:date>
    </item>
    <item>
      <title>Re: File archiving  in application server ?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851869#M360738</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;You can request the Basis to do it. Else you can also write a small Unix Script to copy the file or move a file from one folder on the Application server to another. &lt;/P&gt;&lt;P&gt;This script will run in an ABAP program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ketan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Jan 2007 23:07:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851869#M360738</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-22T23:07:09Z</dc:date>
    </item>
    <item>
      <title>Re: File archiving  in application server ?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851870#M360739</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Chk these two FMs:&lt;/P&gt;&lt;P&gt;C13Z_APPL_TO_FRONT_END&lt;/P&gt;&lt;P&gt;C13Z_FRONT_END_TO_APPL&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;One is to move from Appl.server to Front end, and another from front end to appl. server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go to Tcode: AL11 and decide the folder where you want to place the file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Subramanian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Jan 2007 23:31:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851870#M360739</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-22T23:31:31Z</dc:date>
    </item>
    <item>
      <title>Re: File archiving  in application server ?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851871#M360740</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There is no straight forward way to do it. You can use OPEN DATASET, READ DATASET, TRANSFER DATASET, DELETE DATASET to open the source file, read it into an internal table, transfer the contents of the internal table to the target file and then delete the source file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can also ask your unix administrators to simply provide you with a unix script that takes in the source and target directories and moves the file from source to destination. Once you have the script, you can create an external system command in SAP (SM69, SM49) which can be executed through an ABAP program by calling the function module SXPG_COMMAND_EXECUTE.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 Jan 2007 00:13:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851871#M360740</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-23T00:13:07Z</dc:date>
    </item>
    <item>
      <title>Re: File archiving  in application server ?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851872#M360741</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Dan&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For archiving, we can use FM: &amp;lt;b&amp;gt;EPS_DELETE_FILE&amp;lt;/b&amp;gt; for archiving a file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Below code can help you understand for moving a file:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;[code]FUNCTION y_copy_file_within_appli_serv.&lt;/P&gt;&lt;P&gt;*"----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;STRONG&gt;"&lt;/STRONG&gt;"Local interface:&lt;/P&gt;&lt;P&gt;*"  IMPORTING&lt;/P&gt;&lt;P&gt;*"     VALUE(RFC_DESTINATION) LIKE  RFCDES-RFCDEST&lt;/P&gt;&lt;P&gt;*"     VALUE(LOCAL_FILE) LIKE  EPSF-EPSFILNAM&lt;/P&gt;&lt;P&gt;*"     VALUE(LOCAL_DIRECTORY) LIKE  EPSF-EPSDIRNAM DEFAULT SPACE&lt;/P&gt;&lt;P&gt;*"     VALUE(REMOTE_FILE) LIKE  EPSF-EPSFILNAM DEFAULT SPACE&lt;/P&gt;&lt;P&gt;*"     VALUE(REMOTE_DIRECTORY) LIKE  EPSF-EPSDIRNAM DEFAULT SPACE&lt;/P&gt;&lt;P&gt;*"     VALUE(OVERWRITE_MODE) LIKE  EPSF-EPSOVRWRI DEFAULT SPACE&lt;/P&gt;&lt;P&gt;*"     VALUE(TEXT_MODE) LIKE  EPSF-EPSTXTMOD DEFAULT SPACE&lt;/P&gt;&lt;P&gt;*"     VALUE(TRANSMISSION_MONITOR) LIKE  EPSF-EPSTRAMON DEFAULT 'X'&lt;/P&gt;&lt;P&gt;*"     VALUE(RECORDS_PER_TRANSFER) LIKE  EPSF-EPSRECTRA DEFAULT 10&lt;/P&gt;&lt;P&gt;*"     VALUE(REQUESTED_FILE_SIZE) LIKE  EPSF-EPSFILSIZ DEFAULT 0&lt;/P&gt;&lt;P&gt;*"     VALUE(MONITOR_TITLE) LIKE  EPSF-EPSTEXT OPTIONAL&lt;/P&gt;&lt;P&gt;*"     VALUE(MONITOR_TEXT1) LIKE  EPSF-EPSTEXT OPTIONAL&lt;/P&gt;&lt;P&gt;*"     VALUE(MONITOR_TEXT2) LIKE  EPSF-EPSTEXT OPTIONAL&lt;/P&gt;&lt;P&gt;*"     VALUE(PROGRESS_TEXT) LIKE  EPSF-EPSTEXT OPTIONAL&lt;/P&gt;&lt;P&gt;*"     VALUE(OBJECT_NAME) LIKE  EPSF-EPSFILNAM OPTIONAL&lt;/P&gt;&lt;P&gt;*"  EXPORTING&lt;/P&gt;&lt;P&gt;*"     VALUE(LOCAL_DIRECTORY) LIKE  EPSF-EPSDIRNAM&lt;/P&gt;&lt;P&gt;*"     VALUE(LOCAL_PATH) LIKE  EPSF-EPSPATH&lt;/P&gt;&lt;P&gt;*"     VALUE(REMOTE_FILE) LIKE  EPSF-EPSFILNAM&lt;/P&gt;&lt;P&gt;*"     VALUE(REMOTE_DIRECTORY) LIKE  EPSF-EPSDIRNAM&lt;/P&gt;&lt;P&gt;*"     VALUE(REMOTE_PATH) LIKE  EPSF-EPSPATH&lt;/P&gt;&lt;P&gt;*"     VALUE(FILE_SIZE) LIKE  EPSF-EPSFILSIZ&lt;/P&gt;&lt;P&gt;*"     VALUE(LOCAL_SYSTEM_INFO) LIKE  EPSFTPSI STRUCTURE  EPSFTPSI&lt;/P&gt;&lt;P&gt;*"     VALUE(REMOTE_SYSTEM_INFO) LIKE  EPSFTPSI STRUCTURE  EPSFTPSI&lt;/P&gt;&lt;P&gt;*"  EXCEPTIONS&lt;/P&gt;&lt;P&gt;*"      OPEN_INPUT_FILE_FAILED&lt;/P&gt;&lt;P&gt;*"      OPEN_OUTPUT_FILE_FAILED&lt;/P&gt;&lt;P&gt;*"      READ_BLOCK_FAILED&lt;/P&gt;&lt;P&gt;*"      WRITE_BLOCK_FAILED&lt;/P&gt;&lt;P&gt;*"      CLOSE_OUTPUT_FILE_FAILED&lt;/P&gt;&lt;P&gt;*"      INVALID_FILE_SIZE&lt;/P&gt;&lt;P&gt;*"      STOPPED_BY_USER&lt;/P&gt;&lt;P&gt;*"      INVALID_INPUT_FILE_SIZE&lt;/P&gt;&lt;P&gt;*"      RESTART_FAILED&lt;/P&gt;&lt;P&gt;*"      CONNECTION_FAILED&lt;/P&gt;&lt;P&gt;*"      INVALID_VERSION&lt;/P&gt;&lt;P&gt;*"----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF eps_buffer OCCURS 10.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE tbl8000.&lt;/P&gt;&lt;P&gt;  DATA: END   OF eps_buffer.&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF eps_txtbuf OCCURS 0.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE epsteco.&lt;/P&gt;&lt;P&gt;  DATA: END   OF eps_txtbuf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: ls_save_moni           LIKE g$moni.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: lv_local_file_size     LIKE epsf-epsfilsiz,&lt;/P&gt;&lt;P&gt;        lv_remote_file_size    LIKE epsf-epsfilsiz,&lt;/P&gt;&lt;P&gt;        lv_block_size          LIKE epsf-epsfilsiz,&lt;/P&gt;&lt;P&gt;        lv_number_of_records   LIKE epsf-epsrectra,&lt;/P&gt;&lt;P&gt;        lv_last_record_length  LIKE epsf-epsreclen,&lt;/P&gt;&lt;P&gt;        lv_max_record_length   LIKE epsf-epsreclen,&lt;/P&gt;&lt;P&gt;        lv_end_of_file         LIKE epsf-epsflag,&lt;/P&gt;&lt;P&gt;        lv_low_rc              LIKE sy-subrc,&lt;/P&gt;&lt;P&gt;        lv_rfc_message         LIKE sy-msgv1,&lt;/P&gt;&lt;P&gt;        lv_restart_flag        LIKE epsf-epsflag,&lt;/P&gt;&lt;P&gt;        lv_pattern             LIKE tbl8000-line,&lt;/P&gt;&lt;P&gt;        lv_records_to_skip     LIKE epsf-epsrectra,&lt;/P&gt;&lt;P&gt;        lv_skiped_size         LIKE epsf-epsfilsiz.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;check parameters   (only if not started from EPS_ftp_mput)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF transmission_monitor &amp;lt;&amp;gt; gc_mon_flag_m.&lt;/P&gt;&lt;P&gt;    PERFORM get_ftp_system_info             " get ftp system info&lt;/P&gt;&lt;P&gt;            USING&lt;/P&gt;&lt;P&gt;                rfc_destination&lt;/P&gt;&lt;P&gt;            CHANGING&lt;/P&gt;&lt;P&gt;                local_system_info&lt;/P&gt;&lt;P&gt;                remote_system_info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM check_ftp_version               " check ftp version&lt;/P&gt;&lt;P&gt;            USING&lt;/P&gt;&lt;P&gt;                text_mode&lt;/P&gt;&lt;P&gt;                remote_system_info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM check_overwrite_mode            " check OVERWRITE_MODE&lt;/P&gt;&lt;P&gt;            USING&lt;/P&gt;&lt;P&gt;                text_mode&lt;/P&gt;&lt;P&gt;            CHANGING&lt;/P&gt;&lt;P&gt;                overwrite_mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM check_records_per_transfer      " check RECORDS_PER_TRANSFER&lt;/P&gt;&lt;P&gt;            USING&lt;/P&gt;&lt;P&gt;                text_mode&lt;/P&gt;&lt;P&gt;            CHANGING&lt;/P&gt;&lt;P&gt;                records_per_transfer.&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;determine block_size [byte]   (binary mode only)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF text_mode &amp;lt;&amp;gt; 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;gt;&amp;gt;&amp;gt; Begin of modification for change log reference UnicodeC &amp;lt;&amp;lt;&amp;lt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   DESCRIBE FIELD eps_buffer-line LENGTH lv_max_record_length.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    DESCRIBE FIELD eps_buffer-line LENGTH lv_max_record_length IN&lt;/P&gt;&lt;P&gt;    BYTE MODE.&lt;/P&gt;&lt;P&gt;*&amp;lt;&amp;lt;&amp;lt; End   of modification for change log reference UnicodeC &amp;gt;&amp;gt;&amp;gt;&lt;/P&gt;&lt;P&gt;    lv_block_size = lv_max_record_length * records_per_transfer.&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;open local file for input&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'EPS_OPEN_INPUT_FILE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      file_name              = local_file&lt;/P&gt;&lt;P&gt;      dir_name               = local_directory&lt;/P&gt;&lt;P&gt;      text_mode              = text_mode&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      dir_name               = local_directory&lt;/P&gt;&lt;P&gt;      file_path              = local_path&lt;/P&gt;&lt;P&gt;      file_size              = lv_local_file_size&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      invalid_eps_subdir     = 11&lt;/P&gt;&lt;P&gt;      sapgparam_failed       = 12&lt;/P&gt;&lt;P&gt;      build_directory_failed = 13&lt;/P&gt;&lt;P&gt;      no_authorization       = 14&lt;/P&gt;&lt;P&gt;      build_path_failed      = 15&lt;/P&gt;&lt;P&gt;      open_failed            = 16&lt;/P&gt;&lt;P&gt;      read_directory_failed  = 17&lt;/P&gt;&lt;P&gt;      read_attributes_failed = 18.&lt;/P&gt;&lt;P&gt;  lv_low_rc = sy-subrc.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'EPS_CLOSE_FILE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        file_name = local_file&lt;/P&gt;&lt;P&gt;        dir_name  = local_directory&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        OTHERS    = 99.&lt;/P&gt;&lt;P&gt;    MESSAGE e001 WITH lv_low_rc local_file local_directory&lt;/P&gt;&lt;P&gt;                      space            " rfc message&lt;/P&gt;&lt;P&gt;                 RAISING open_input_file_failed.&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;check file size&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF requested_file_size &amp;lt;&amp;gt; 0 AND&lt;/P&gt;&lt;P&gt;     requested_file_size &amp;lt;&amp;gt; lv_local_file_size.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'EPS_CLOSE_FILE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        file_name = local_file&lt;/P&gt;&lt;P&gt;        dir_name  = local_directory&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        OTHERS    = 99.&lt;/P&gt;&lt;P&gt;    lv_low_rc = 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e008 WITH lv_low_rc local_file&lt;/P&gt;&lt;P&gt;                      requested_file_size lv_local_file_size&lt;/P&gt;&lt;P&gt;                 RAISING invalid_input_file_size.&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;open remote file for output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF remote_file = space.              " no remote file specified&lt;/P&gt;&lt;P&gt;    remote_file = local_file.          " -&amp;gt; remote file = local file&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF text_mode = 'X'       AND         " no restart in textmode&lt;/P&gt;&lt;P&gt;     overwrite_mode = 'R'.&lt;/P&gt;&lt;P&gt;    overwrite_mode = 'S'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'EPS_OPEN_OUTPUT_FILE'&lt;/P&gt;&lt;P&gt;    DESTINATION rfc_destination&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      file_name              = remote_file&lt;/P&gt;&lt;P&gt;      dir_name               = remote_directory&lt;/P&gt;&lt;P&gt;      file_size_request      = lv_local_file_size&lt;/P&gt;&lt;P&gt;      overwrite_mode         = overwrite_mode&lt;/P&gt;&lt;P&gt;      text_mode              = text_mode&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      dir_name               = remote_directory&lt;/P&gt;&lt;P&gt;      file_path              = remote_path&lt;/P&gt;&lt;P&gt;      restart_flag           = lv_restart_flag&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      system_failure         = 03  MESSAGE lv_rfc_message&lt;/P&gt;&lt;P&gt;      communication_failure  = 04  MESSAGE lv_rfc_message&lt;/P&gt;&lt;P&gt;      invalid_eps_subdir     = 11&lt;/P&gt;&lt;P&gt;      sapgparam_failed       = 12&lt;/P&gt;&lt;P&gt;      build_directory_failed = 13&lt;/P&gt;&lt;P&gt;      no_authorization       = 14&lt;/P&gt;&lt;P&gt;      build_path_failed      = 15&lt;/P&gt;&lt;P&gt;      open_failed            = 16&lt;/P&gt;&lt;P&gt;      file_already_exists    = 19.&lt;/P&gt;&lt;P&gt;  lv_low_rc = sy-subrc.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'EPS_CLOSE_FILE'&lt;/P&gt;&lt;P&gt;      DESTINATION rfc_destination&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        file_name = remote_file&lt;/P&gt;&lt;P&gt;        dir_name  = remote_directory&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        OTHERS    = 99.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'EPS_CLOSE_FILE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        file_name = local_file&lt;/P&gt;&lt;P&gt;        dir_name  = local_directory&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        OTHERS    = 99.&lt;/P&gt;&lt;P&gt;    MESSAGE e002 WITH lv_low_rc remote_file remote_directory&lt;/P&gt;&lt;P&gt;                      lv_rfc_message&lt;/P&gt;&lt;P&gt;                 RAISING open_output_file_failed.&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;restart file transfer&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF lv_restart_flag = 'X'.&lt;/P&gt;&lt;P&gt;    ls_save_moni = g$moni.             " save monitor data&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'EPS_SEEK_OUTPUT_FILE'&lt;/P&gt;&lt;P&gt;      DESTINATION rfc_destination&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        file_name              = remote_file&lt;/P&gt;&lt;P&gt;        dir_name               = remote_directory&lt;/P&gt;&lt;P&gt;        records_per_transfer   = records_per_transfer&lt;/P&gt;&lt;P&gt;        object_name            = object_name&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        pattern                = lv_pattern&lt;/P&gt;&lt;P&gt;        records_to_skip        = lv_records_to_skip&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        system_failure         = 03  MESSAGE lv_rfc_message&lt;/P&gt;&lt;P&gt;        communication_failure  = 04  MESSAGE lv_rfc_message&lt;/P&gt;&lt;P&gt;        invalid_eps_subdir     = 11&lt;/P&gt;&lt;P&gt;        sapgparam_failed       = 12&lt;/P&gt;&lt;P&gt;        build_directory_failed = 13&lt;/P&gt;&lt;P&gt;        no_authorization       = 14&lt;/P&gt;&lt;P&gt;        build_path_failed      = 15&lt;/P&gt;&lt;P&gt;        open_failed            = 16&lt;/P&gt;&lt;P&gt;        read_directory_failed  = 17&lt;/P&gt;&lt;P&gt;        read_attributes_failed = 18&lt;/P&gt;&lt;P&gt;        read_failure           = 20&lt;/P&gt;&lt;P&gt;        write_failure          = 21&lt;/P&gt;&lt;P&gt;        OTHERS                 = 99.&lt;/P&gt;&lt;P&gt;    lv_low_rc = sy-subrc.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'EPS_CLOSE_FILE'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          file_name = local_file&lt;/P&gt;&lt;P&gt;          dir_name  = local_directory&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          OTHERS    = 99.&lt;/P&gt;&lt;P&gt;      g$moni = ls_save_moni.           " restore monitor data&lt;/P&gt;&lt;P&gt;      MESSAGE e009 WITH lv_low_rc remote_file remote_directory&lt;/P&gt;&lt;P&gt;                        lv_rfc_message&lt;/P&gt;&lt;P&gt;                   RAISING restart_failed.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'EPS_SEEK_INPUT_FILE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        pattern              = lv_pattern&lt;/P&gt;&lt;P&gt;        records_to_skip      = lv_records_to_skip&lt;/P&gt;&lt;P&gt;        file_path            = local_path&lt;/P&gt;&lt;P&gt;        records_per_transfer = records_per_transfer&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        read_failure         = 20&lt;/P&gt;&lt;P&gt;        write_failure        = 21&lt;/P&gt;&lt;P&gt;        end_of_file          = 22&lt;/P&gt;&lt;P&gt;        pattern_not_found    = 23&lt;/P&gt;&lt;P&gt;        OTHERS               = 99.&lt;/P&gt;&lt;P&gt;    lv_low_rc = sy-subrc.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'EPS_CLOSE_FILE'&lt;/P&gt;&lt;P&gt;        DESTINATION rfc_destination&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          file_name = remote_file&lt;/P&gt;&lt;P&gt;          dir_name  = remote_directory&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          OTHERS    = 99.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'EPS_CLOSE_FILE'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          file_name = local_file&lt;/P&gt;&lt;P&gt;          dir_name  = local_directory&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          OTHERS    = 99.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'EPS_DELETE_FILE'&lt;/P&gt;&lt;P&gt;        DESTINATION rfc_destination&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          file_name = remote_file&lt;/P&gt;&lt;P&gt;          dir_name  = remote_directory&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          OTHERS    = 99.&lt;/P&gt;&lt;P&gt;      g$moni = ls_save_moni.           " restore monitor data&lt;/P&gt;&lt;P&gt;      MESSAGE e009 WITH lv_low_rc remote_file remote_directory&lt;/P&gt;&lt;P&gt;                        space          " rfc message&lt;/P&gt;&lt;P&gt;                   RAISING restart_failed.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    lv_skiped_size = lv_records_to_skip * lv_max_record_length.&lt;/P&gt;&lt;P&gt;    g$moni = ls_save_moni.             " restore monitor data&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;start transmission monitor&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF transmission_monitor &amp;lt;&amp;gt; 'M'.&lt;/P&gt;&lt;P&gt;    PERFORM monitor_open&lt;/P&gt;&lt;P&gt;            USING transmission_monitor&lt;/P&gt;&lt;P&gt;                  monitor_title.&lt;/P&gt;&lt;P&gt;    PERFORM monitor_set_values&lt;/P&gt;&lt;P&gt;            USING gc_ftp_put&lt;/P&gt;&lt;P&gt;                  progress_text&lt;/P&gt;&lt;P&gt;                  monitor_text1&lt;/P&gt;&lt;P&gt;                  monitor_text2&lt;/P&gt;&lt;P&gt;                  rfc_destination&lt;/P&gt;&lt;P&gt;                  local_file&lt;/P&gt;&lt;P&gt;                  0                         " total files&lt;/P&gt;&lt;P&gt;                  0                         " current file&lt;/P&gt;&lt;P&gt;                  0                         " maxval gauge 1&lt;/P&gt;&lt;P&gt;                  lv_local_file_size        " maxval gauge 2&lt;/P&gt;&lt;P&gt;                  0                         " skiped size gauge 1&lt;/P&gt;&lt;P&gt;                  lv_skiped_size.           " skiped size gauge 2&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM monitor_update_values&lt;/P&gt;&lt;P&gt;            USING 0                         " increment&lt;/P&gt;&lt;P&gt;                  0                         " skiped size gauge 1&lt;/P&gt;&lt;P&gt;                  lv_skiped_size.           " skiped size gauge 2&lt;/P&gt;&lt;P&gt;  ENDIF.&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;file transfer ------------------------------------------ begin -------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR lv_end_of_file.&lt;/P&gt;&lt;P&gt;  WHILE lv_end_of_file &amp;lt;&amp;gt; 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  read block from input file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF text_mode = 'X'.&lt;/P&gt;&lt;P&gt;      REFRESH eps_txtbuf.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'EPS_READ_TEXT_BLOCK'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          file_path            = local_path&lt;/P&gt;&lt;P&gt;          records_per_transfer = records_per_transfer&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          end_of_file          = lv_end_of_file&lt;/P&gt;&lt;P&gt;        TABLES&lt;/P&gt;&lt;P&gt;          eps_buffer           = eps_txtbuf&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          read_failure         = 20.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      REFRESH eps_buffer.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'EPS_READ_BLOCK'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          file_path            = local_path&lt;/P&gt;&lt;P&gt;          records_per_transfer = records_per_transfer&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          number_of_records    = lv_number_of_records&lt;/P&gt;&lt;P&gt;          last_record_length   = lv_last_record_length&lt;/P&gt;&lt;P&gt;          end_of_file          = lv_end_of_file&lt;/P&gt;&lt;P&gt;        TABLES&lt;/P&gt;&lt;P&gt;          eps_buffer           = eps_buffer&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          read_failure         = 20.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    lv_low_rc = sy-subrc.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      IF transmission_monitor = 'X'.        " stop monitor&lt;/P&gt;&lt;P&gt;        PERFORM monitor_stop.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      MESSAGE e003 WITH lv_low_rc local_path space&lt;/P&gt;&lt;P&gt;                   RAISING read_block_failed.&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;  write block into output file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF text_mode = 'X'.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'EPS_WRITE_TEXT_BLOCK'&lt;/P&gt;&lt;P&gt;        DESTINATION rfc_destination&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          file_path             = remote_path&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          transfered_bytes      = lv_block_size&lt;/P&gt;&lt;P&gt;        TABLES&lt;/P&gt;&lt;P&gt;          eps_buffer            = eps_txtbuf&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          system_failure        = 03  MESSAGE lv_rfc_message&lt;/P&gt;&lt;P&gt;          communication_failure = 04  MESSAGE lv_rfc_message&lt;/P&gt;&lt;P&gt;          write_failure         = 21.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'EPS_WRITE_BLOCK'&lt;/P&gt;&lt;P&gt;        DESTINATION rfc_destination&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          file_path             = remote_path&lt;/P&gt;&lt;P&gt;          number_of_records     = lv_number_of_records&lt;/P&gt;&lt;P&gt;          last_record_length    = lv_last_record_length&lt;/P&gt;&lt;P&gt;        TABLES&lt;/P&gt;&lt;P&gt;          eps_buffer            = eps_buffer&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          system_failure        = 03  MESSAGE lv_rfc_message&lt;/P&gt;&lt;P&gt;          communication_failure = 04  MESSAGE lv_rfc_message&lt;/P&gt;&lt;P&gt;          write_failure         = 21.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    lv_low_rc = sy-subrc.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      IF transmission_monitor = 'X'.        " stop monitor&lt;/P&gt;&lt;P&gt;        PERFORM monitor_stop.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      MESSAGE e004 WITH lv_low_rc remote_path lv_rfc_message&lt;/P&gt;&lt;P&gt;                   RAISING write_block_failed.&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;  update transmission monitor&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM monitor_update_values&lt;/P&gt;&lt;P&gt;            USING lv_block_size             " increment&lt;/P&gt;&lt;P&gt;                  0                         " skiped size gauge 1&lt;/P&gt;&lt;P&gt;                  0.                        " skiped size gauge 2&lt;/P&gt;&lt;P&gt;    IF g$moni-cancel = 'X'.                 " stop transmission&lt;/P&gt;&lt;P&gt;      MESSAGE e007 RAISING stopped_by_user.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDWHILE.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;file transfer ------------------------------------------ end ---------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;stop transmission monitor&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF transmission_monitor = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM monitor_stop.&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;close output file and get size&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'EPS_CLOSE_FILE'&lt;/P&gt;&lt;P&gt;    DESTINATION rfc_destination&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      file_name              = remote_file&lt;/P&gt;&lt;P&gt;      dir_name               = remote_directory&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      file_size              = lv_remote_file_size&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      system_failure         = 03  MESSAGE lv_rfc_message&lt;/P&gt;&lt;P&gt;      communication_failure  = 04  MESSAGE lv_rfc_message&lt;/P&gt;&lt;P&gt;      build_path_failed      = 15&lt;/P&gt;&lt;P&gt;      read_directory_failed  = 17&lt;/P&gt;&lt;P&gt;      read_attributes_failed = 18.&lt;/P&gt;&lt;P&gt;  lv_low_rc = sy-subrc.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e005 WITH lv_low_rc remote_file remote_directory&lt;/P&gt;&lt;P&gt;                      lv_rfc_message&lt;/P&gt;&lt;P&gt;                 RAISING close_output_file_failed.&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;compare size of local and remote file   (binary mode only)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF text_mode &amp;lt;&amp;gt; 'X'.&lt;/P&gt;&lt;P&gt;    IF lv_local_file_size &amp;lt;&amp;gt; lv_remote_file_size.&lt;/P&gt;&lt;P&gt;      lv_low_rc = 0.&lt;/P&gt;&lt;P&gt;      MESSAGE e006 WITH lv_low_rc local_file lv_local_file_size&lt;/P&gt;&lt;P&gt;                   RAISING invalid_file_size.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  file_size = lv_local_file_size.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFUNCTION.[/code]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Eswar&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 Jan 2007 02:01:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-archiving-in-application-server/m-p/1851872#M360741</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-01-23T02:01:01Z</dc:date>
    </item>
  </channel>
</rss>

