把本地txt文件导入到内表中
相关文章:http://www.cnblogs.com/caizjian/p/3271757.html
参照从本地excel导入到内表的例子 导入本地txt文件到内表用的函数是:但是注意因为 参数filename 的类型是string所以我们在之前定义的其他类型参数时到这边一定要转换成string类型
CALL FUNCTION 'GUI_UPLOAD' EXPORTING filename = filename "文件路径 FILETYPE = 'ASC' "txt文件类型 HAS_FIELD_SEPARATOR = 'X' "打开TAB键分隔列的功能 CODEPAGE = '8400 ' "防止在其他语言系统下txt中文不显示 tables data_tab = gt_tab "内表 . IF sy-subrc <> 0. * Implement suitable error handling here ENDIF. 示例:今晚又研究了一下这个上传文件的函数。 ***************读取txt文件事实证明把txt文件上传到定义的内表这个函数只能适用于txt文本文件,类型设置成'ASC',不能适用于excel文档 REPORT ztestbdc. TYPES:BEGIN OF ty_mara, matnr TYPE mara-matnr, maktx TYPE makt-maktx, meins TYPE mara-meins, END OF ty_mara. DATA gt_tab TYPE TABLE OF ty_mara. DATA gs_tab LIKE LINE OF gt_tab. PARAMETERS p_file TYPE c LENGTH 128 ."定义输入框 AT SELECTION-SCREEN on VALUE-REQUEST FOR p_file. "弹出选择的对话框 CALL FUNCTION 'F4_FILENAME' EXPORTING PROGRAM_NAME = SYST-CPROG DYNPRO_NUMBER = SYST-DYNNR * FIELD_NAME = p_file IMPORTING FILE_NAME = p_file. . START-OF-SELECTION. data i_file TYPE string. i_file = p_file. CLEAR:gt_tab. CALL FUNCTION 'GUI_UPLOAD' EXPORTING filename = i_file FILETYPE = 'ASC' "txt文本 HAS_FIELD_SEPARATOR = 'X' "tab键分隔符 CODEPAGE = '8400' tables data_tab = gt_tab. delete gt_tab INDEX 1. BREAK-POINT.