***上传TXT文档到内表的例子。
PARAMETERS p_file TYPE c LENGTH 128.
DATA filename TYPE string .
*接收使用内表
DATA : BEGIN OF gt_uptab OCCURS 0,
matnr TYPE mara-matnr,
maktx TYPE makt-maktx,
budat TYPE c LENGTH 8,
END OF gt_uptab.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
*得到上传文件的路径
CALL FUNCTION 'F4_FILENAME'
IMPORTING
file_name = p_file.
START-OF-SELECTION.
filename = p_file.
**使用函数上传TXT文档到内表
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = filename "待上传文件的路径
filetype = 'ASC' "上传文件类型为TXT
has_field_separator = 'X' "识别TAB键的换列
TABLES
data_tab = gt_uptab[]
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
OTHERS = 17.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
LOOP AT gt_uptab.
ENDLOOP.
该贴已经同步到 SAPOK_ABAP的微博 |