Last active
August 29, 2015 14:22
-
-
Save cetint/0d93bc693b3dcfb03825 to your computer and use it in GitHub Desktop.
ABAP-Upload From Excel-Download To Excel-EN
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
REPORT zexample_upload_download_excel . | |
FIELD-SYMBOLS: <fs_tab> TYPE STANDARD TABLE . | |
DATA : BEGIN OF gt_itab OCCURS 0. | |
include structure ztable. | |
DATA: silme(1) TYPE c, | |
END OF gt_itab. | |
DATA: gv_tname TYPE string , | |
gv_filen TYPE string. | |
***DOWNLOAD TO EXCEL FROM ITAB >>> | |
gv_tname = 'GT_ITAB[]' . | |
ASSIGN (gv_tname) TO <fs_tab>. | |
IF sy-subrc NE 0. | |
MESSAGE i899(fb) WITH 'An error was accured!' DISPLAY LIKE 'W'. | |
STOP. | |
ENDIF. | |
CALL FUNCTION 'GUI_FILE_SAVE_DIALOG' | |
EXPORTING | |
default_extension = '.xls' | |
default_file_name = 'liste' | |
IMPORTING | |
fullpath = gv_filen. | |
CHECK sy-ucomm NE 'CANC'. | |
CALL FUNCTION 'GUI_DOWNLOAD' | |
EXPORTING | |
filename = gv_filen | |
filetype = 'DAT' | |
TABLES | |
data_tab = <fs_tab> | |
EXCEPTIONS | |
file_write_error = 1 | |
no_batch = 2 | |
gui_refuse_filetransfer = 3 | |
invalid_type = 4 | |
no_authority = 5 | |
unknown_error = 6 | |
header_not_allowed = 7 | |
separator_not_allowed = 8 | |
filesize_not_allowed = 9 | |
header_too_long = 10 | |
dp_error_create = 11 | |
dp_error_send = 12 | |
dp_error_write = 13 | |
unknown_dp_error = 14 | |
access_denied = 15 | |
dp_out_of_memory = 16 | |
disk_full = 17 | |
dp_timeout = 18 | |
file_not_found = 19 | |
dataprovider_exception = 20 | |
control_flush_error = 21 | |
OTHERS = 22. | |
IF sy-subrc <> 0. | |
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno | |
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. | |
ENDIF. | |
***DOWNLOAD TO EXCEL FROM ITAB <<< | |
***UPLOAD FROM EXCEL TO ITAB >>> | |
CLEAR : GT_ITAB[], GT_ITAB . | |
TYPE-POOLS: truxs. | |
DATA: it_raw TYPE truxs_t_text_data, | |
gv_file LIKE rlgrap-filename . | |
DATA : gt_file_table TYPE filetable, | |
gv_rc TYPE i, | |
gv_filename TYPE string. | |
gv_tname = 'GT_ITAB[]'. | |
gv_table = 'ZTABLE' . | |
gv_line = 'GS_ITAB'. | |
FIELD-SYMBOLS: <fs_table> TYPE STANDARD TABLE , | |
<fs_ztable> TYPE STANDARD TABLE , | |
<gs_table> TYPE ANY . | |
ASSIGN (gv_line) TO <gs_table>. | |
ASSIGN (gv_tname) TO <fs_table>. | |
IF sy-subrc NE 0. | |
MESSAGE i899(fb) WITH 'An error was accured!' DISPLAY LIKE 'W'. | |
STOP. | |
ENDIF. | |
CALL FUNCTION 'F4_FILENAME' | |
EXPORTING | |
program_name = syst-cprog | |
dynpro_number = syst-dynnr | |
field_name = 'P_FILE' | |
IMPORTING | |
file_name = gv_file. | |
REFRESH <fs_table> . | |
CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP' | |
EXPORTING | |
i_line_header = '' | |
i_tab_raw_data = it_raw | |
i_filename = gv_file | |
TABLES | |
i_tab_converted_data = <fs_table> | |
EXCEPTIONS | |
conversion_failed = 1 | |
OTHERS = 2. | |
**MODIFY database table from data uploading from excel >> | |
ASSIGN gv_table TO <fs_ztable> . | |
IF <fs_ztable> IS ASSIGNED . | |
LOOP AT <fs_table> INTO <gs_table> . | |
MODIFY (<fs_ztable>) FROM <gs_table> . | |
ENDLOOP. | |
ENDIF . | |
**MODIFY database table from data uploading from excel << | |
***UPLOAD FROM EXCEL TO ITAB <<< |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment