บทความก่อนหน้านี้ ผมเขียนถึงวิธีการนำข้อมูลไฟล์จากภายนอกมาเก็บไว้ใน Internal Table (ABAP Code:การนำข้อมูล Text File จากข้างนอก มาเก็บไว้ใน Internal Table) เพื่อไม่ให้น้อยหน้า วันนี้เลยเอาวิธีการนำข้อมูล(Internal Table)จากโปรแกรม มาเก็บไว้ในไฟล์
* Program : ZGETFILE2 * Title : Get internal table to file * Author : Todsapon Kumnuan (todsapon.com) * R/3 Release : ECC5 REPORT ztestpon MESSAGE-ID fi. TYPE-POOLS: truxs. DATA: itab1 TYPE truxs_t_text_data. DATA: BEGIN OF t_itab OCCURS 0, "Conditions A name(20) TYPE c, url(20) TYPE c, END OF t_itab. PARAMETERS: p_file LIKE rfpdo2-febscfnam OBLIGATORY MODIF ID nc1. INITIALIZATION. IF p_file IS INITIAL. CONCATENATE 'C:\temp\' 'todsapon_com.txt' INTO p_file. ENDIF. AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file. CALL FUNCTION 'KD_GET_FILENAME_ON_F4' EXPORTING mask = ',*.txt,*.txt,*.cvs,*.cvs' static = 'X' CHANGING file_name = p_file. START-OF-SELECTION. PERFORM read_main_data. PERFORM gui_download. FORM read_main_data. t_itab-name = 'Todsapon Kumnuan'. t_itab-url = 'Todsapon.com'. APPEND t_itab. ENDFORM. "read_main_data FORM gui_download. DATA: lv_file TYPE string, textline TYPE string, textlinex TYPE string, ans. CALL FUNCTION 'SAP_CONVERT_TO_TXT_FORMAT' EXPORTING i_field_seperator = '' * I_LINE_HEADER = I_LINE_HEADER * I_FILENAME = I_FILENAME i_appl_keep = '' TABLES i_tab_sap_data = t_itab CHANGING i_tab_converted_data = itab1 EXCEPTIONS conversion_failed = 1 OTHERS = 2. IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. TRANSLATE p_file TO UPPER CASE. lv_file = p_file. CALL FUNCTION 'GUI_DOWNLOAD' EXPORTING filename = lv_file TABLES data_tab = itab1 EXCEPTIONS OTHERS = 1. IF sy-subrc = 0. CLEAR: textline, textlinex. textline = 'Download successfully!' . textlinex = '' . ELSE. CLEAR: textline, textlinex. textline = 'Download error!' . textlinex = 'Please try again.' . ENDIF. CALL FUNCTION 'POPUP_TO_DECIDE_INFO' EXPORTING textline1 = textline textline2 = textlinex titel = 'Message Popup!' IMPORTING answer = ans. ENDFORM. "GUI_DOWNLOAD
จากโปรแกรม จะได้ไฟล์ todsapon_com.txt อยู่ใน Path ที่ได้ทำการเลือกที่หน้าจอครับ ในที่นี้สามารถเลือกที่จะเก็บไฟล์ได้และยังสามารถเปลี่ยนชื่อไฟล์ได้ตามต้องการ ข้อมูลในไฟล์นั้น ก็
คอลัมน์ที่ 1 Todsapon Kumnuan
คอลัมน์ที่ 2 Todsapon.com