*&---------------------------------------------------------------------*
*& Report Z100
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT Z100 MESSAGE-ID ZHQ NO STANDARD PAGE HEADING.
TABLES SSCRFIELDS.
SELECTION-SCREEN FUNCTION KEY 1.
SELECTION-SCREEN FUNCTION KEY 2.
SELECTION-SCREEN FUNCTION KEY 3.
TYPES:BEGIN OF LS_TEMPLATE,
NAME TYPE CHAR50,
END OF LS_TEMPLATE.
DATA GS_TEMPLATE TYPE LS_TEMPLATE.
DATA GT_TEMPLATE TYPE TABLE OF LS_TEMPLATE WITH HEADER LINE.
PARAMETERS P_FILE TYPE RLGRAP-FILENAME.
INITIALIZATION.
TYPE-POOLS ICON. "第一种方法:引入图标
SSCRFIELDS-FUNCTXT_01 = '@3N@下载模板'.
WRITE ICON_ICON_LIST AS ICON TO SSCRFIELDS-FUNCTXT_02+0(4).
SSCRFIELDS-FUNCTXT_02+4(*) = '发起OA流程审批'.
WRITE ICON_BIW_INFO_CATALOG AS ICON TO SSCRFIELDS-FUNCTXT_03+0(4).
SSCRFIELDS-FUNCTXT_03+4(*) = '下载报表'.
AT SELECTION-SCREEN.
DATA UCOMM TYPE SYUCOMM.
UCOMM = SSCRFIELDS-UCOMM.
MESSAGE S000 WITH UCOMM DISPLAY LIKE 'E'.
IF UCOMM = 'FC01'.
DATA LV_FILE TYPE STRING.
GS_TEMPLATE-NAME = '姓名'.
APPEND GS_TEMPLATE TO GT_TEMPLATE.
MESSAGE 'MANU1' TYPE 'S'.
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
* DEF_FILENAME = ' '
* DEF_PATH = ' '
MASK = ',excel,*.xls,'
MODE = 'S'
* TITLE = ' '
IMPORTING
FILENAME = LV_FILE
* RC =
* EXCEPTIONS
* INV_WINSYS = 1
* NO_BATCH = 2
* SELECTION_CANCEL = 3
* SELECTION_ERROR = 4
* OTHERS = 5
.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
* BIN_FILESIZE =
FILENAME = LV_FILE
* FILETYPE = 'ASC'
* APPEND = ' '
* WRITE_FIELD_SEPARATOR = ' '
* HEADER = '00'
* TRUNC_TRAILING_BLANKS = ' '
* WRITE_LF = 'X'
* COL_SELECT = ' '
* COL_SELECT_MASK = ' '
* DAT_MODE = ' '
* CONFIRM_OVERWRITE = ' '
* NO_AUTH_CHECK = ' '
* CODEPAGE = ' '
* IGNORE_CERR = ABAP_TRUE
* REPLACEMENT = '#'
* WRITE_BOM = ' '
* TRUNC_TRAILING_BLANKS_EOL = 'X'
* WK1_N_FORMAT = ' '
* WK1_N_SIZE = ' '
* WK1_T_FORMAT = ' '
* WK1_T_SIZE = ' '
* WRITE_LF_AFTER_LAST_LINE = ABAP_TRUE
* SHOW_TRANSFER_STATUS = ABAP_TRUE
* VIRUS_SCAN_PROFILE = '/SCET/GUI_DOWNLOAD'
* IMPORTING
* FILELENGTH =
TABLES
DATA_TAB = GT_TEMPLATE
* FIELDNAMES =
* 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.
* Implement suitable error handling here
ENDIF.
ENDIF.
START-OF-SELECTION.
MESSAGE '导入成功' TYPE 'I'.
END-OF-SELECTION.