*---------------------------------------------------------------------* * FORM download_table_to_server *---------------------------------------------------------------------* * [+] Downloads a table of data into a file *---------------------------------------------------------------------* FORM download_table_to_server TABLES p_table TYPE STANDARD TABLE with header line USING p_filename TYPE localfile. CONSTANTS: c_linebreak(1) TYPE x VALUE '0D'. DATA: lv_file_line(500) TYPE c. * Open file for update. Error message if failed. OPEN DATASET p_filename FOR OUTPUT IN TEXT MODE. IF sy-subrc NE 0. MESSAGE e002(zpm_o) WITH p_filename. EXIT. ENDIF. * Transfer data to file. Note that carriage return is added to end of * output record. Because concatenate removes trailing blanks, these are * first replaced by '~' and then after carriage return is added, the *'~'s are removed. LOOP AT p_table. TRANSLATE p_table USING ' ~'. CONCATENATE p_table c_linebreak INTO lv_file_line. TRANSLATE lv_file_line USING '~ '. TRANSFER lv_file_line TO p_filename. ENDLOOP. * Data downloaded successfully MESSAGE s001(zpm_o) WITH p_filename. CLOSE DATASET p_filename. ENDFORM.