<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: A function module that can replace gui_upload in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061430#M725185</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Uploading data directly from Excel file format  &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Upload data direct from excel.xls file to SAP &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;REPORT ZEXCELUPLOAD. &lt;/P&gt;&lt;P&gt;PARAMETERS: filename LIKE rlgrap-filename MEMORY ID M01, &lt;/P&gt;&lt;P&gt;            begcol TYPE i DEFAULT 1 NO-DISPLAY, &lt;/P&gt;&lt;P&gt;            begrow TYPE i DEFAULT 1 NO-DISPLAY, &lt;/P&gt;&lt;P&gt;            endcol TYPE i DEFAULT 100 NO-DISPLAY, &lt;/P&gt;&lt;P&gt;            endrow TYPE i DEFAULT 32000 NO-DISPLAY. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Tick don't append header &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PARAMETERS: kzheader AS CHECKBOX. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF intern OCCURS 0. &lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE  alsmex_tabline. &lt;/P&gt;&lt;P&gt;DATA: END OF intern. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF intern1 OCCURS 0. &lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE  alsmex_tabline. &lt;/P&gt;&lt;P&gt;DATA: END OF intern1. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF t_col OCCURS 0, &lt;/P&gt;&lt;P&gt;       col LIKE alsmex_tabline-col, &lt;/P&gt;&lt;P&gt;       size TYPE i. &lt;/P&gt;&lt;P&gt;DATA: END OF t_col. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: zwlen TYPE i, &lt;/P&gt;&lt;P&gt;      zwlines TYPE i. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF fieldnames OCCURS 3, &lt;/P&gt;&lt;P&gt;        title(60), &lt;/P&gt;&lt;P&gt;        table(6), &lt;/P&gt;&lt;P&gt;        field(10), &lt;/P&gt;&lt;P&gt;        kz(1), &lt;/P&gt;&lt;P&gt;      END OF fieldnames. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;No of columns &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF data_tab OCCURS 0, &lt;/P&gt;&lt;P&gt;       value_0001(50), &lt;/P&gt;&lt;P&gt;       value_0002(50), &lt;/P&gt;&lt;P&gt;       value_0003(50), &lt;/P&gt;&lt;P&gt;       value_0004(50), &lt;/P&gt;&lt;P&gt;       value_0005(50), &lt;/P&gt;&lt;P&gt;       value_0006(50), &lt;/P&gt;&lt;P&gt;       value_0007(50), &lt;/P&gt;&lt;P&gt;       value_0008(50), &lt;/P&gt;&lt;P&gt;       value_0009(50), &lt;/P&gt;&lt;P&gt;       value_0010(50), &lt;/P&gt;&lt;P&gt;       value_0011(50), &lt;/P&gt;&lt;P&gt;       value_0012(50), &lt;/P&gt;&lt;P&gt;       value_0013(50), &lt;/P&gt;&lt;P&gt;       value_0014(50), &lt;/P&gt;&lt;P&gt;       value_0015(50), &lt;/P&gt;&lt;P&gt;       value_0016(50), &lt;/P&gt;&lt;P&gt;       value_0017(50), &lt;/P&gt;&lt;P&gt;       value_0018(50), &lt;/P&gt;&lt;P&gt;       value_0019(50), &lt;/P&gt;&lt;P&gt;       value_0020(50), &lt;/P&gt;&lt;P&gt;       value_0021(50), &lt;/P&gt;&lt;P&gt;       value_0022(50), &lt;/P&gt;&lt;P&gt;       value_0023(50), &lt;/P&gt;&lt;P&gt;       value_0024(50), &lt;/P&gt;&lt;P&gt;       value_0025(50), &lt;/P&gt;&lt;P&gt;       value_0026(50), &lt;/P&gt;&lt;P&gt;       value_0027(50), &lt;/P&gt;&lt;P&gt;       value_0028(50), &lt;/P&gt;&lt;P&gt;       value_0029(50), &lt;/P&gt;&lt;P&gt;       value_0030(50), &lt;/P&gt;&lt;P&gt;       value_0031(50), &lt;/P&gt;&lt;P&gt;       value_0032(50), &lt;/P&gt;&lt;P&gt;       value_0033(50), &lt;/P&gt;&lt;P&gt;       value_0034(50), &lt;/P&gt;&lt;P&gt;       value_0035(50), &lt;/P&gt;&lt;P&gt;       value_0036(50), &lt;/P&gt;&lt;P&gt;       value_0037(50), &lt;/P&gt;&lt;P&gt;       value_0038(50), &lt;/P&gt;&lt;P&gt;       value_0039(50), &lt;/P&gt;&lt;P&gt;       value_0040(50), &lt;/P&gt;&lt;P&gt;       value_0041(50), &lt;/P&gt;&lt;P&gt;       value_0042(50), &lt;/P&gt;&lt;P&gt;       value_0043(50), &lt;/P&gt;&lt;P&gt;       value_0044(50), &lt;/P&gt;&lt;P&gt;       value_0045(50), &lt;/P&gt;&lt;P&gt;       value_0046(50), &lt;/P&gt;&lt;P&gt;       value_0047(50), &lt;/P&gt;&lt;P&gt;       value_0048(50), &lt;/P&gt;&lt;P&gt;       value_0049(50), &lt;/P&gt;&lt;P&gt;       value_0050(50), &lt;/P&gt;&lt;P&gt;       value_0051(50), &lt;/P&gt;&lt;P&gt;       value_0052(50), &lt;/P&gt;&lt;P&gt;       value_0053(50), &lt;/P&gt;&lt;P&gt;       value_0054(50), &lt;/P&gt;&lt;P&gt;       value_0055(50), &lt;/P&gt;&lt;P&gt;       value_0056(50), &lt;/P&gt;&lt;P&gt;       value_0057(50), &lt;/P&gt;&lt;P&gt;       value_0058(50), &lt;/P&gt;&lt;P&gt;       value_0059(50), &lt;/P&gt;&lt;P&gt;       value_0060(50), &lt;/P&gt;&lt;P&gt;       value_0061(50), &lt;/P&gt;&lt;P&gt;       value_0062(50), &lt;/P&gt;&lt;P&gt;       value_0063(50), &lt;/P&gt;&lt;P&gt;       value_0064(50), &lt;/P&gt;&lt;P&gt;       value_0065(50), &lt;/P&gt;&lt;P&gt;       value_0066(50), &lt;/P&gt;&lt;P&gt;       value_0067(50), &lt;/P&gt;&lt;P&gt;       value_0068(50), &lt;/P&gt;&lt;P&gt;       value_0069(50), &lt;/P&gt;&lt;P&gt;       value_0070(50), &lt;/P&gt;&lt;P&gt;       value_0071(50), &lt;/P&gt;&lt;P&gt;       value_0072(50), &lt;/P&gt;&lt;P&gt;       value_0073(50), &lt;/P&gt;&lt;P&gt;       value_0074(50), &lt;/P&gt;&lt;P&gt;       value_0075(50), &lt;/P&gt;&lt;P&gt;       value_0076(50), &lt;/P&gt;&lt;P&gt;       value_0077(50), &lt;/P&gt;&lt;P&gt;       value_0078(50), &lt;/P&gt;&lt;P&gt;       value_0079(50), &lt;/P&gt;&lt;P&gt;       value_0080(50), &lt;/P&gt;&lt;P&gt;       value_0081(50), &lt;/P&gt;&lt;P&gt;       value_0082(50), &lt;/P&gt;&lt;P&gt;       value_0083(50), &lt;/P&gt;&lt;P&gt;       value_0084(50), &lt;/P&gt;&lt;P&gt;       value_0085(50), &lt;/P&gt;&lt;P&gt;       value_0086(50), &lt;/P&gt;&lt;P&gt;       value_0087(50), &lt;/P&gt;&lt;P&gt;       value_0088(50), &lt;/P&gt;&lt;P&gt;       value_0089(50), &lt;/P&gt;&lt;P&gt;       value_0090(50), &lt;/P&gt;&lt;P&gt;       value_0091(50), &lt;/P&gt;&lt;P&gt;       value_0092(50), &lt;/P&gt;&lt;P&gt;       value_0093(50), &lt;/P&gt;&lt;P&gt;       value_0094(50), &lt;/P&gt;&lt;P&gt;       value_0095(50), &lt;/P&gt;&lt;P&gt;       value_0096(50), &lt;/P&gt;&lt;P&gt;       value_0097(50), &lt;/P&gt;&lt;P&gt;       value_0098(50), &lt;/P&gt;&lt;P&gt;       value_0099(50), &lt;/P&gt;&lt;P&gt;       value_0100(50). &lt;/P&gt;&lt;P&gt;DATA: END OF data_tab. &lt;/P&gt;&lt;P&gt;DATA: tind(4) TYPE n. &lt;/P&gt;&lt;P&gt;DATA: zwfeld(19). &lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;fs1&amp;gt;. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR filename. &lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'KD_GET_FILENAME_ON_F4' &lt;/P&gt;&lt;P&gt;       EXPORTING &lt;/P&gt;&lt;P&gt;            mask      = '*.xls' &lt;/P&gt;&lt;P&gt;            static    = 'X' &lt;/P&gt;&lt;P&gt;       CHANGING &lt;/P&gt;&lt;P&gt;            file_name = filename. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE' &lt;/P&gt;&lt;P&gt;       EXPORTING &lt;/P&gt;&lt;P&gt;            filename                = filename &lt;/P&gt;&lt;P&gt;            i_begin_col             = begcol &lt;/P&gt;&lt;P&gt;            i_begin_row             = begrow &lt;/P&gt;&lt;P&gt;            i_end_col               = endcol &lt;/P&gt;&lt;P&gt;            i_end_row               = endrow &lt;/P&gt;&lt;P&gt;       TABLES &lt;/P&gt;&lt;P&gt;            intern                  = intern &lt;/P&gt;&lt;P&gt;       EXCEPTIONS &lt;/P&gt;&lt;P&gt;            inconsistent_parameters = 1 &lt;/P&gt;&lt;P&gt;            upload_ole              = 2 &lt;/P&gt;&lt;P&gt;            OTHERS                  = 3. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0. &lt;/P&gt;&lt;P&gt;    WRITE:/ 'Upload Error ', SY-SUBRC. &lt;/P&gt;&lt;P&gt;  ENDIF. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT intern. &lt;/P&gt;&lt;P&gt;    intern1 = intern. &lt;/P&gt;&lt;P&gt;    CLEAR intern1-row. &lt;/P&gt;&lt;P&gt;    APPEND intern1. &lt;/P&gt;&lt;P&gt;  ENDLOOP. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT intern1 BY col. &lt;/P&gt;&lt;P&gt;  LOOP AT intern1. &lt;/P&gt;&lt;P&gt;    AT NEW col. &lt;/P&gt;&lt;P&gt;      t_col-col = intern1-col. &lt;/P&gt;&lt;P&gt;      APPEND t_col. &lt;/P&gt;&lt;P&gt;    ENDAT. &lt;/P&gt;&lt;P&gt;    zwlen = strlen( intern1-value ). &lt;/P&gt;&lt;P&gt;    READ TABLE t_col WITH KEY col = intern1-col. &lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0. &lt;/P&gt;&lt;P&gt;      IF zwlen &amp;gt; t_col-size. &lt;/P&gt;&lt;P&gt;        t_col-size = zwlen. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                         Internal Table, Current Row Index &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        MODIFY t_col INDEX sy-tabix. &lt;/P&gt;&lt;P&gt;      ENDIF. &lt;/P&gt;&lt;P&gt;    ENDIF. &lt;/P&gt;&lt;P&gt;  ENDLOOP. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE t_col LINES zwlines. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT intern BY row col. &lt;/P&gt;&lt;P&gt;  IF kzheader = 'X'. &lt;/P&gt;&lt;P&gt;    LOOP AT intern. &lt;/P&gt;&lt;P&gt;      fieldnames-title = intern-value. &lt;/P&gt;&lt;P&gt;      APPEND fieldnames. &lt;/P&gt;&lt;P&gt;      AT END OF row. &lt;/P&gt;&lt;P&gt;        EXIT. &lt;/P&gt;&lt;P&gt;      ENDAT. &lt;/P&gt;&lt;P&gt;    ENDLOOP. &lt;/P&gt;&lt;P&gt;  ELSE. &lt;/P&gt;&lt;P&gt;    DO zwlines TIMES. &lt;/P&gt;&lt;P&gt;      WRITE sy-index TO fieldnames-title. &lt;/P&gt;&lt;P&gt;      APPEND fieldnames. &lt;/P&gt;&lt;P&gt;    ENDDO. &lt;/P&gt;&lt;P&gt;  ENDIF. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT intern BY row col. &lt;/P&gt;&lt;P&gt;  LOOP AT intern. &lt;/P&gt;&lt;P&gt;    IF kzheader = 'X' &lt;/P&gt;&lt;P&gt;    AND intern-row = 1. &lt;/P&gt;&lt;P&gt;      CONTINUE. &lt;/P&gt;&lt;P&gt;    ENDIF. &lt;/P&gt;&lt;P&gt;    tind = intern-col. &lt;/P&gt;&lt;P&gt;    CONCATENATE 'DATA_TAB-VALUE_' tind INTO zwfeld. &lt;/P&gt;&lt;P&gt;    ASSIGN (zwfeld) TO &amp;lt;fs1&amp;gt;. &lt;/P&gt;&lt;P&gt;    &amp;lt;fs1&amp;gt; = intern-value. &lt;/P&gt;&lt;P&gt;    AT END OF row. &lt;/P&gt;&lt;P&gt;      APPEND data_tab. &lt;/P&gt;&lt;P&gt;      CLEAR data_tab. &lt;/P&gt;&lt;P&gt;    ENDAT. &lt;/P&gt;&lt;P&gt;  ENDLOOP. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DISPLAY_BASIC_LIST' &lt;/P&gt;&lt;P&gt;       EXPORTING &lt;/P&gt;&lt;P&gt;            file_name     = filename &lt;/P&gt;&lt;P&gt;       TABLES &lt;/P&gt;&lt;P&gt;            data_tab      = data_tab &lt;/P&gt;&lt;P&gt;            fieldname_tab = fieldnames. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-- End of Program &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this will help you,&lt;/P&gt;&lt;P&gt;Reward if useful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 27 Nov 2007 11:08:43 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-11-27T11:08:43Z</dc:date>
    <item>
      <title>A function module that can replace gui_upload</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061422#M725177</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;since gui_upload do not work in back ground , is their any other funcyion module that works in back ground&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 09:53:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061422#M725177</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-27T09:53:29Z</dc:date>
    </item>
    <item>
      <title>Re: A function module that can replace gui_upload</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061423#M725178</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You cannot pick the file from LOcal server using FM.Use OPEN DATASET instead.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Amit&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 09:54:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061423#M725178</guid>
      <dc:creator>amit_khare</dc:creator>
      <dc:date>2007-11-27T09:54:24Z</dc:date>
    </item>
    <item>
      <title>Re: A function module that can replace gui_upload</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061424#M725179</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;my text file is present in presentation server&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 09:56:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061424#M725179</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-27T09:56:47Z</dc:date>
    </item>
    <item>
      <title>Re: A function module that can replace gui_upload</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061425#M725180</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   Use FM  ALSM_EXCEL_TO_INTERNAL_TABLE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Prashant&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 09:58:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061425#M725180</guid>
      <dc:creator>former_member386202</dc:creator>
      <dc:date>2007-11-27T09:58:22Z</dc:date>
    </item>
    <item>
      <title>Re: A function module that can replace gui_upload</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061426#M725181</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Use this FM which replaces GUI_UPLOAD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;TEXT_CONVERT_XLS_TO_SAP &amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;sham.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 10:01:13 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061426#M725181</guid>
      <dc:creator>asik_shameem</dc:creator>
      <dc:date>2007-11-27T10:01:13Z</dc:date>
    </item>
    <item>
      <title>Re: A function module that can replace gui_upload</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061427#M725182</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You cannot use GUI_UPLOAD in background.Write the same file in application server and then read from application server.This can be done in background.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sample code:&lt;/P&gt;&lt;P&gt;For writing in Application Server:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;types: BEGIN OF ty_output,&lt;/P&gt;&lt;P&gt;        field(500) TYPE c,&lt;/P&gt;&lt;P&gt;        END OF ty_output.&lt;/P&gt;&lt;P&gt;data : t_output TYPE STANDARD TABLE OF ty_output,&lt;/P&gt;&lt;P&gt;       w_output TYPE ty_output.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Opening the file for output in text mode&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  OPEN DATASET p_afile FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    CLEAR g_flg.&lt;/P&gt;&lt;P&gt;    g_flg = c_x.&lt;/P&gt;&lt;P&gt;    MESSAGE s000 WITH text-003 p_afile text-004.&lt;/P&gt;&lt;P&gt;    "Error in opening file for output&lt;/P&gt;&lt;P&gt;    LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  LOOP AT t_output INTO w_output.&lt;/P&gt;&lt;P&gt;    TRANSFER w_output TO p_afile.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Closing the file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLOSE DATASET p_afile.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    "Error in closing file&lt;/P&gt;&lt;P&gt;    LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;For reading:&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;DATA : G_DATA(1000) TYPE C,&lt;/P&gt;&lt;P&gt;G_DELIM TYPE C VALUE CL_ABAP_CHAR_UTILITIES=&amp;gt;HORIZONTAL_TAB.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF T_INPUT OCCURS 0, " Flat file data&lt;/P&gt;&lt;P&gt;       PERNR(9) TYPE C,&lt;/P&gt;&lt;P&gt;       AMOUNT(15) TYPE C,&lt;/P&gt;&lt;P&gt;       W_TYPE(5) TYPE C,&lt;/P&gt;&lt;P&gt;      END OF T_INPUT.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  OPEN DATASET G_AFILE1 FOR INPUT IN TEXT MODE ENCODING DEFAULT.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;    DO.&lt;/P&gt;&lt;P&gt;      READ DATASET G_AFILE1 INTO G_DATA.&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;        SPLIT G_DATA AT G_DELIM INTO T_INPUT-PERNR T_INPUT-AMOUNT&lt;/P&gt;&lt;P&gt;                                                 T_INPUT-W_TYPE .&lt;/P&gt;&lt;P&gt;        IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;          APPEND T_INPUT.&lt;/P&gt;&lt;P&gt;          CLEAR T_INPUT.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          MESSAGE E001 WITH TEXT-012 G_AFILE1.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        EXIT.                       "After reading last Record&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE E001 WITH TEXT-013 G_AFILE1.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 10:06:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061427#M725182</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-27T10:06:53Z</dc:date>
    </item>
    <item>
      <title>Re: A function module that can replace gui_upload</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061428#M725183</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please consider the Amit suggestion. Here we need to place file in application server using OPEN DATASET and also we can use following transactions, directly place a file without programing in application server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CG3Y  =  Download &lt;/P&gt;&lt;P&gt;     &lt;/P&gt;&lt;P&gt;CG3Z  =  Upload&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If helpful, rewards it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Vishvesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 10:21:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061428#M725183</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-27T10:21:10Z</dc:date>
    </item>
    <item>
      <title>Re: A function module that can replace gui_upload</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061429#M725184</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi selvaraj,&lt;/P&gt;&lt;P&gt;  GUI_DOWNLOAD, WS_DOWNLOAD etc.. all these function modules create a file in your presentation Server this is Front end work but you are trying to execute this function module in back ground, Back ground jobs cannot do Front End Applications so, in back ground the system does not create a file in presentation server so if you want to downlod in back ground use OPEN DATASET Syntax for Application Server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please Reward,&lt;/P&gt;&lt;P&gt;Mahi.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 10:57:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061429#M725184</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-27T10:57:01Z</dc:date>
    </item>
    <item>
      <title>Re: A function module that can replace gui_upload</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061430#M725185</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Uploading data directly from Excel file format  &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Upload data direct from excel.xls file to SAP &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;REPORT ZEXCELUPLOAD. &lt;/P&gt;&lt;P&gt;PARAMETERS: filename LIKE rlgrap-filename MEMORY ID M01, &lt;/P&gt;&lt;P&gt;            begcol TYPE i DEFAULT 1 NO-DISPLAY, &lt;/P&gt;&lt;P&gt;            begrow TYPE i DEFAULT 1 NO-DISPLAY, &lt;/P&gt;&lt;P&gt;            endcol TYPE i DEFAULT 100 NO-DISPLAY, &lt;/P&gt;&lt;P&gt;            endrow TYPE i DEFAULT 32000 NO-DISPLAY. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Tick don't append header &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PARAMETERS: kzheader AS CHECKBOX. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF intern OCCURS 0. &lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE  alsmex_tabline. &lt;/P&gt;&lt;P&gt;DATA: END OF intern. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF intern1 OCCURS 0. &lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE  alsmex_tabline. &lt;/P&gt;&lt;P&gt;DATA: END OF intern1. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF t_col OCCURS 0, &lt;/P&gt;&lt;P&gt;       col LIKE alsmex_tabline-col, &lt;/P&gt;&lt;P&gt;       size TYPE i. &lt;/P&gt;&lt;P&gt;DATA: END OF t_col. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: zwlen TYPE i, &lt;/P&gt;&lt;P&gt;      zwlines TYPE i. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF fieldnames OCCURS 3, &lt;/P&gt;&lt;P&gt;        title(60), &lt;/P&gt;&lt;P&gt;        table(6), &lt;/P&gt;&lt;P&gt;        field(10), &lt;/P&gt;&lt;P&gt;        kz(1), &lt;/P&gt;&lt;P&gt;      END OF fieldnames. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;No of columns &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF data_tab OCCURS 0, &lt;/P&gt;&lt;P&gt;       value_0001(50), &lt;/P&gt;&lt;P&gt;       value_0002(50), &lt;/P&gt;&lt;P&gt;       value_0003(50), &lt;/P&gt;&lt;P&gt;       value_0004(50), &lt;/P&gt;&lt;P&gt;       value_0005(50), &lt;/P&gt;&lt;P&gt;       value_0006(50), &lt;/P&gt;&lt;P&gt;       value_0007(50), &lt;/P&gt;&lt;P&gt;       value_0008(50), &lt;/P&gt;&lt;P&gt;       value_0009(50), &lt;/P&gt;&lt;P&gt;       value_0010(50), &lt;/P&gt;&lt;P&gt;       value_0011(50), &lt;/P&gt;&lt;P&gt;       value_0012(50), &lt;/P&gt;&lt;P&gt;       value_0013(50), &lt;/P&gt;&lt;P&gt;       value_0014(50), &lt;/P&gt;&lt;P&gt;       value_0015(50), &lt;/P&gt;&lt;P&gt;       value_0016(50), &lt;/P&gt;&lt;P&gt;       value_0017(50), &lt;/P&gt;&lt;P&gt;       value_0018(50), &lt;/P&gt;&lt;P&gt;       value_0019(50), &lt;/P&gt;&lt;P&gt;       value_0020(50), &lt;/P&gt;&lt;P&gt;       value_0021(50), &lt;/P&gt;&lt;P&gt;       value_0022(50), &lt;/P&gt;&lt;P&gt;       value_0023(50), &lt;/P&gt;&lt;P&gt;       value_0024(50), &lt;/P&gt;&lt;P&gt;       value_0025(50), &lt;/P&gt;&lt;P&gt;       value_0026(50), &lt;/P&gt;&lt;P&gt;       value_0027(50), &lt;/P&gt;&lt;P&gt;       value_0028(50), &lt;/P&gt;&lt;P&gt;       value_0029(50), &lt;/P&gt;&lt;P&gt;       value_0030(50), &lt;/P&gt;&lt;P&gt;       value_0031(50), &lt;/P&gt;&lt;P&gt;       value_0032(50), &lt;/P&gt;&lt;P&gt;       value_0033(50), &lt;/P&gt;&lt;P&gt;       value_0034(50), &lt;/P&gt;&lt;P&gt;       value_0035(50), &lt;/P&gt;&lt;P&gt;       value_0036(50), &lt;/P&gt;&lt;P&gt;       value_0037(50), &lt;/P&gt;&lt;P&gt;       value_0038(50), &lt;/P&gt;&lt;P&gt;       value_0039(50), &lt;/P&gt;&lt;P&gt;       value_0040(50), &lt;/P&gt;&lt;P&gt;       value_0041(50), &lt;/P&gt;&lt;P&gt;       value_0042(50), &lt;/P&gt;&lt;P&gt;       value_0043(50), &lt;/P&gt;&lt;P&gt;       value_0044(50), &lt;/P&gt;&lt;P&gt;       value_0045(50), &lt;/P&gt;&lt;P&gt;       value_0046(50), &lt;/P&gt;&lt;P&gt;       value_0047(50), &lt;/P&gt;&lt;P&gt;       value_0048(50), &lt;/P&gt;&lt;P&gt;       value_0049(50), &lt;/P&gt;&lt;P&gt;       value_0050(50), &lt;/P&gt;&lt;P&gt;       value_0051(50), &lt;/P&gt;&lt;P&gt;       value_0052(50), &lt;/P&gt;&lt;P&gt;       value_0053(50), &lt;/P&gt;&lt;P&gt;       value_0054(50), &lt;/P&gt;&lt;P&gt;       value_0055(50), &lt;/P&gt;&lt;P&gt;       value_0056(50), &lt;/P&gt;&lt;P&gt;       value_0057(50), &lt;/P&gt;&lt;P&gt;       value_0058(50), &lt;/P&gt;&lt;P&gt;       value_0059(50), &lt;/P&gt;&lt;P&gt;       value_0060(50), &lt;/P&gt;&lt;P&gt;       value_0061(50), &lt;/P&gt;&lt;P&gt;       value_0062(50), &lt;/P&gt;&lt;P&gt;       value_0063(50), &lt;/P&gt;&lt;P&gt;       value_0064(50), &lt;/P&gt;&lt;P&gt;       value_0065(50), &lt;/P&gt;&lt;P&gt;       value_0066(50), &lt;/P&gt;&lt;P&gt;       value_0067(50), &lt;/P&gt;&lt;P&gt;       value_0068(50), &lt;/P&gt;&lt;P&gt;       value_0069(50), &lt;/P&gt;&lt;P&gt;       value_0070(50), &lt;/P&gt;&lt;P&gt;       value_0071(50), &lt;/P&gt;&lt;P&gt;       value_0072(50), &lt;/P&gt;&lt;P&gt;       value_0073(50), &lt;/P&gt;&lt;P&gt;       value_0074(50), &lt;/P&gt;&lt;P&gt;       value_0075(50), &lt;/P&gt;&lt;P&gt;       value_0076(50), &lt;/P&gt;&lt;P&gt;       value_0077(50), &lt;/P&gt;&lt;P&gt;       value_0078(50), &lt;/P&gt;&lt;P&gt;       value_0079(50), &lt;/P&gt;&lt;P&gt;       value_0080(50), &lt;/P&gt;&lt;P&gt;       value_0081(50), &lt;/P&gt;&lt;P&gt;       value_0082(50), &lt;/P&gt;&lt;P&gt;       value_0083(50), &lt;/P&gt;&lt;P&gt;       value_0084(50), &lt;/P&gt;&lt;P&gt;       value_0085(50), &lt;/P&gt;&lt;P&gt;       value_0086(50), &lt;/P&gt;&lt;P&gt;       value_0087(50), &lt;/P&gt;&lt;P&gt;       value_0088(50), &lt;/P&gt;&lt;P&gt;       value_0089(50), &lt;/P&gt;&lt;P&gt;       value_0090(50), &lt;/P&gt;&lt;P&gt;       value_0091(50), &lt;/P&gt;&lt;P&gt;       value_0092(50), &lt;/P&gt;&lt;P&gt;       value_0093(50), &lt;/P&gt;&lt;P&gt;       value_0094(50), &lt;/P&gt;&lt;P&gt;       value_0095(50), &lt;/P&gt;&lt;P&gt;       value_0096(50), &lt;/P&gt;&lt;P&gt;       value_0097(50), &lt;/P&gt;&lt;P&gt;       value_0098(50), &lt;/P&gt;&lt;P&gt;       value_0099(50), &lt;/P&gt;&lt;P&gt;       value_0100(50). &lt;/P&gt;&lt;P&gt;DATA: END OF data_tab. &lt;/P&gt;&lt;P&gt;DATA: tind(4) TYPE n. &lt;/P&gt;&lt;P&gt;DATA: zwfeld(19). &lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;fs1&amp;gt;. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR filename. &lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'KD_GET_FILENAME_ON_F4' &lt;/P&gt;&lt;P&gt;       EXPORTING &lt;/P&gt;&lt;P&gt;            mask      = '*.xls' &lt;/P&gt;&lt;P&gt;            static    = 'X' &lt;/P&gt;&lt;P&gt;       CHANGING &lt;/P&gt;&lt;P&gt;            file_name = filename. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE' &lt;/P&gt;&lt;P&gt;       EXPORTING &lt;/P&gt;&lt;P&gt;            filename                = filename &lt;/P&gt;&lt;P&gt;            i_begin_col             = begcol &lt;/P&gt;&lt;P&gt;            i_begin_row             = begrow &lt;/P&gt;&lt;P&gt;            i_end_col               = endcol &lt;/P&gt;&lt;P&gt;            i_end_row               = endrow &lt;/P&gt;&lt;P&gt;       TABLES &lt;/P&gt;&lt;P&gt;            intern                  = intern &lt;/P&gt;&lt;P&gt;       EXCEPTIONS &lt;/P&gt;&lt;P&gt;            inconsistent_parameters = 1 &lt;/P&gt;&lt;P&gt;            upload_ole              = 2 &lt;/P&gt;&lt;P&gt;            OTHERS                  = 3. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0. &lt;/P&gt;&lt;P&gt;    WRITE:/ 'Upload Error ', SY-SUBRC. &lt;/P&gt;&lt;P&gt;  ENDIF. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT intern. &lt;/P&gt;&lt;P&gt;    intern1 = intern. &lt;/P&gt;&lt;P&gt;    CLEAR intern1-row. &lt;/P&gt;&lt;P&gt;    APPEND intern1. &lt;/P&gt;&lt;P&gt;  ENDLOOP. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT intern1 BY col. &lt;/P&gt;&lt;P&gt;  LOOP AT intern1. &lt;/P&gt;&lt;P&gt;    AT NEW col. &lt;/P&gt;&lt;P&gt;      t_col-col = intern1-col. &lt;/P&gt;&lt;P&gt;      APPEND t_col. &lt;/P&gt;&lt;P&gt;    ENDAT. &lt;/P&gt;&lt;P&gt;    zwlen = strlen( intern1-value ). &lt;/P&gt;&lt;P&gt;    READ TABLE t_col WITH KEY col = intern1-col. &lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0. &lt;/P&gt;&lt;P&gt;      IF zwlen &amp;gt; t_col-size. &lt;/P&gt;&lt;P&gt;        t_col-size = zwlen. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                         Internal Table, Current Row Index &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        MODIFY t_col INDEX sy-tabix. &lt;/P&gt;&lt;P&gt;      ENDIF. &lt;/P&gt;&lt;P&gt;    ENDIF. &lt;/P&gt;&lt;P&gt;  ENDLOOP. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE t_col LINES zwlines. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT intern BY row col. &lt;/P&gt;&lt;P&gt;  IF kzheader = 'X'. &lt;/P&gt;&lt;P&gt;    LOOP AT intern. &lt;/P&gt;&lt;P&gt;      fieldnames-title = intern-value. &lt;/P&gt;&lt;P&gt;      APPEND fieldnames. &lt;/P&gt;&lt;P&gt;      AT END OF row. &lt;/P&gt;&lt;P&gt;        EXIT. &lt;/P&gt;&lt;P&gt;      ENDAT. &lt;/P&gt;&lt;P&gt;    ENDLOOP. &lt;/P&gt;&lt;P&gt;  ELSE. &lt;/P&gt;&lt;P&gt;    DO zwlines TIMES. &lt;/P&gt;&lt;P&gt;      WRITE sy-index TO fieldnames-title. &lt;/P&gt;&lt;P&gt;      APPEND fieldnames. &lt;/P&gt;&lt;P&gt;    ENDDO. &lt;/P&gt;&lt;P&gt;  ENDIF. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT intern BY row col. &lt;/P&gt;&lt;P&gt;  LOOP AT intern. &lt;/P&gt;&lt;P&gt;    IF kzheader = 'X' &lt;/P&gt;&lt;P&gt;    AND intern-row = 1. &lt;/P&gt;&lt;P&gt;      CONTINUE. &lt;/P&gt;&lt;P&gt;    ENDIF. &lt;/P&gt;&lt;P&gt;    tind = intern-col. &lt;/P&gt;&lt;P&gt;    CONCATENATE 'DATA_TAB-VALUE_' tind INTO zwfeld. &lt;/P&gt;&lt;P&gt;    ASSIGN (zwfeld) TO &amp;lt;fs1&amp;gt;. &lt;/P&gt;&lt;P&gt;    &amp;lt;fs1&amp;gt; = intern-value. &lt;/P&gt;&lt;P&gt;    AT END OF row. &lt;/P&gt;&lt;P&gt;      APPEND data_tab. &lt;/P&gt;&lt;P&gt;      CLEAR data_tab. &lt;/P&gt;&lt;P&gt;    ENDAT. &lt;/P&gt;&lt;P&gt;  ENDLOOP. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DISPLAY_BASIC_LIST' &lt;/P&gt;&lt;P&gt;       EXPORTING &lt;/P&gt;&lt;P&gt;            file_name     = filename &lt;/P&gt;&lt;P&gt;       TABLES &lt;/P&gt;&lt;P&gt;            data_tab      = data_tab &lt;/P&gt;&lt;P&gt;            fieldname_tab = fieldnames. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-- End of Program &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this will help you,&lt;/P&gt;&lt;P&gt;Reward if useful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 11:08:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/a-function-module-that-can-replace-gui-upload/m-p/3061430#M725185</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-27T11:08:43Z</dc:date>
    </item>
  </channel>
</rss>

