<?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: Regarding Obsolete Function Modules in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119830#M740845</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;here are replacement function modules for the obsolete ones.&lt;/P&gt;&lt;P&gt;award points in case u feel this useful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Obsolete Function Module: WS_UPLOAD.&lt;/P&gt;&lt;P&gt;      Replacement FM: GUI_UPLOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  1. If the FM &amp;#145;WS_UPLOAD' has file type as ASC, then we can use same file     &lt;/P&gt;&lt;P&gt;    type ASC for GUI_UPLOAD also.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2. But if the FM 'WS_UPLOAD' has file type as DAT, we can not use DAT for   &lt;/P&gt;&lt;P&gt;  'GUI_UPLOAD' as it will give short dump.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    In this case we need use file type as ASC &lt;/P&gt;&lt;P&gt;      and &lt;/P&gt;&lt;P&gt;      HAS_FIELD_SEPARATOR = &amp;#145;X&amp;#146;. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3. If the file name or file type of ws_upload have variables or constants    &lt;/P&gt;&lt;P&gt;    Instead of hard coding, then don&amp;#146;t use hard code values for gui_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3. The data type of file name always should be of character type for gui_upload&lt;/P&gt;&lt;P&gt;      The file type should be of Type Character and length 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  4. Always uncomment the exceptions for gui_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  5. And also uncomment the code inside IF SY-SUBRC &amp;lt;&amp;gt; 0. and ENDIF after     &lt;/P&gt;&lt;P&gt;      gui_upload if the customer has not handled any exception in 46c version.&lt;/P&gt;&lt;P&gt;      If there is any code inside IF SY-SUBRC &amp;lt;&amp;gt; 0 and ENDIF for ws_upload in 46c &lt;/P&gt;&lt;P&gt;      version, Please use the same code in ECC also after gui_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   Example for File type ASC:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILENAME                = P_FILE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE                = 'ASC'&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;     IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;          FILELENGTH              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           DATA_TAB                = P_I_DATA&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CONVERSION_ERROR        = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_OPEN_ERROR         = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_READ_ERROR         = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TABLE_WIDTH     = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TYPE            = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_BATCH                = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           UNKNOWN_ERROR           = 7&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           GUI_REFUSE_FILETRANSFER = 8&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CUSTOMER_ERROR          = 9&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           OTHERS                  = 10.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement FM: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA L_P_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;     L_P_FILE = P_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    FILENAME                      = L_P_FILE&lt;/P&gt;&lt;P&gt;    FILETYPE                      = &amp;#145;ASC&amp;#146;&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                      = P_I_DATA&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_OPEN_ERROR               = 1&lt;/P&gt;&lt;P&gt;   FILE_READ_ERROR               = 2&lt;/P&gt;&lt;P&gt;   NO_BATCH                      = 3&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER       = 4&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                  = 5&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                  = 6&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                 = 7&lt;/P&gt;&lt;P&gt;   BAD_DATA_FORMAT               = 8&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED         = 10&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG               = 11&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR              = 12&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                 = 13&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY              = 14&lt;/P&gt;&lt;P&gt;   DISK_FULL                     = 15&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                    = 16&lt;/P&gt;&lt;P&gt;   OTHERS                        = 17&lt;/P&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E033 WITH P_FILE ' could not be opened'(E03).&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example for file type DAT: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILENAME                = P_FILE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE                = 'DAT'&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;     IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;          FILELENGTH              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           DATA_TAB                = P_I_DATA&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CONVERSION_ERROR        = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_OPEN_ERROR         = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_READ_ERROR         = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TABLE_WIDTH     = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TYPE            = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_BATCH                = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           UNKNOWN_ERROR           = 7&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           GUI_REFUSE_FILETRANSFER = 8&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CUSTOMER_ERROR          = 9&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           OTHERS                  = 10.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement FM: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA L_P_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;     L_P_FILE = P_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    FILENAME                      = L_P_FILE&lt;/P&gt;&lt;P&gt;    FILETYPE                      = &amp;#145;ASC&amp;#146;&lt;/P&gt;&lt;P&gt;    HAS_FIELD_SEPARATOR           = &amp;#145;X&amp;#146;&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                      = P_I_DATA&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_OPEN_ERROR               = 1&lt;/P&gt;&lt;P&gt;   FILE_READ_ERROR               = 2&lt;/P&gt;&lt;P&gt;   NO_BATCH                      = 3&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER       = 4&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                  = 5&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                  = 6&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                 = 7&lt;/P&gt;&lt;P&gt;   BAD_DATA_FORMAT               = 8&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED         = 10&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG               = 11&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR              = 12&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                 = 13&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY              = 14&lt;/P&gt;&lt;P&gt;   DISK_FULL                     = 15&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                    = 16&lt;/P&gt;&lt;P&gt;   OTHERS                        = 17&lt;/P&gt;&lt;P&gt;          .&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; MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;Else.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Obsolete FM       : WS_DOWNLOAD&lt;/P&gt;&lt;P&gt;    Replacement FM: GUI_DOWNLOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  1. If the FM &amp;#145;WS_DOWNLOAD' has file type as ASC, then we can use same file     &lt;/P&gt;&lt;P&gt;    Type ASC for GUI_DOWNLOAD also.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2. If the FM 'WS_DOWNLOAD' has file type as DAT, we can use DAT for   &lt;/P&gt;&lt;P&gt;  'GUI_DOWNLOAD'  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3. If the file name or file type of ws_upload have variables or constants    &lt;/P&gt;&lt;P&gt;    Instead of hard coding,then don&amp;#146;t use hard code values for gui_download.&lt;/P&gt;&lt;P&gt;    Declare variables and assign the ws_download variables to new variables   &lt;/P&gt;&lt;P&gt;    and use These in the new FM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 4. The data type of file name always should be of character type for gui_upload&lt;/P&gt;&lt;P&gt;      The file type should be of Type Character and length 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 5. The data type of file name always should be of character type for gui_ download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  6. Always uncomment the exceptions for gui_download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  7. And also uncomment the code inside IF SY-SUBRC &amp;lt;&amp;gt; 0. and ENDIF after     &lt;/P&gt;&lt;P&gt;      Gui_upload if the customer has not handled any exception in 46c version.&lt;/P&gt;&lt;P&gt;      If there is any code inside IF SY-SUBRC &amp;lt;&amp;gt; 0 and ENDIF for ws_ download in  &lt;/P&gt;&lt;P&gt;      46c  version, Please use the same code in ECC also after gui_download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CALL FUNCTION 'WS_DOWNLOAD'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILENAME            = P_FILENM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE            = 'DAT'       " split into records&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           DATA_TAB            = L_ITAB&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FIELDNAMES          = T_HEAD&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_OPEN_ERROR     = 01&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_WRITE_ERROR    = 02&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_FILESIZE    = 03&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TABLE_WIDTH = 04&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TYPE        = 05&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_BATCH            = 06&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           UNKNOWN_ERROR       = 07.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement FM for above FM:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA L_P_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;     L_P_FILE = P_FILENM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;   FILENAME                        = L_P_FILE&lt;/P&gt;&lt;P&gt;   FILETYPE                        = &amp;#145;DAT&amp;#146;&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;   DATA_TAB                        = L_ITAB&lt;/P&gt;&lt;P&gt;   FIELDNAMES                      = T_HEAD&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_WRITE_ERROR                = 1&lt;/P&gt;&lt;P&gt;   NO_BATCH                        = 2&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER         = 3&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                    = 4&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                    = 5&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                   = 6&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED              = 7&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED           = 8&lt;/P&gt;&lt;P&gt;   FILESIZE_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG                 = 10&lt;/P&gt;&lt;P&gt;   DP_ERROR_CREATE                 = 11&lt;/P&gt;&lt;P&gt;   DP_ERROR_SEND                   = 12&lt;/P&gt;&lt;P&gt;   DP_ERROR_WRITE                  = 13&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR                = 14&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                   = 15&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY                = 16&lt;/P&gt;&lt;P&gt;   DISK_FULL                       = 17&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                      = 18&lt;/P&gt;&lt;P&gt;   FILE_NOT_FOUND                  = 19&lt;/P&gt;&lt;P&gt;   DATAPROVIDER_EXCEPTION          = 20&lt;/P&gt;&lt;P&gt;   CONTROL_FLUSH_ERROR             = 21&lt;/P&gt;&lt;P&gt;   OTHERS                          = 22.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'&lt;/P&gt;&lt;P&gt;*EXPORTING&lt;/P&gt;&lt;P&gt;*defaultoption  = 'N'&lt;/P&gt;&lt;P&gt;*	extline1 = 'Soll das Include überschrieben werden?'(034)&lt;/P&gt;&lt;P&gt;*	extline2 = i_inc-include&lt;/P&gt;&lt;P&gt;*	itel     = 'Include existiert bereits!'(039)&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;START_COLUMN   = 25&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;START_ROW      = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;CANCEL_DISPLAY = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; answer = answer&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement Method :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : l_question type string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Concatenate   'Soll das Include überschrieben werden?'(034) &lt;/P&gt;&lt;P&gt;              i_inc-include&lt;/P&gt;&lt;P&gt;into          l_question.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt; TITLEBAR = 'Prepack deletion'(019)&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DIAGNOSE_OBJECT = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TEXT_QUESTION = l_question&lt;/P&gt;&lt;P&gt;TEXT_BUTTON_1 = 'Yes'(020)&lt;/P&gt;&lt;P&gt;*ICON_BUTTON_1  = ' '&lt;/P&gt;&lt;P&gt; TEXT_BUTTON_2  = 'No'(021)&lt;/P&gt;&lt;P&gt;*ICON_BUTTON_2  = ' '&lt;/P&gt;&lt;P&gt;*DEFAULT_BUTTON = '2'&lt;/P&gt;&lt;P&gt;DISPLAY_CANCEL_BUTTON = 'X'&lt;/P&gt;&lt;P&gt;*USERDEFINED_F1_HELP  = ' '&lt;/P&gt;&lt;P&gt;*START_COLUMN = 25&lt;/P&gt;&lt;P&gt;*START_ROW = 6&lt;/P&gt;&lt;P&gt;*POPUP_TYPE =&lt;/P&gt;&lt;P&gt;*IV_QUICKINFO_BUTTON_1  = ' '&lt;/P&gt;&lt;P&gt;*IV_QUICKINFO_BUTTON_2  = ' '&lt;/P&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;P&gt;   ANSWER = answer&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*PARAMETER =&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;TEXT_NOT_FOUND = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2    .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note :  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   In FM  POPUP_TO_CONFIRM_STEP' , the value for import parameter ANSWER is&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;       J (YES),&lt;/P&gt;&lt;P&gt;       N (NO).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But for  POPUP_TO_CONFIRM , the value for import parameter ANSWER is&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       1 (YES),&lt;/P&gt;&lt;P&gt;       2 (NO).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, please change these values accordingly while replacing with the new FM.&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             DIAGNOSETEXT1 = TEXT-900&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             DIAGNOSETEXT2 = SY-MSGV1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             DIAGNOSETEXT3 = TEXT-901&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             TEXTLINE1     = TEXT-902&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             TEXTLINE2     = TEXT-903&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             TITEL         = TEXT-904&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             ANSWER        = UP_ANSWER.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;replacement:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;The Diagnose object parameter Z_ZIMPCHK1_POPUP_TO_CONFIRM'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  is created in SE61 transaction as DIALOG TEXT object&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: W_PARAM      TYPE SPAR,&lt;/P&gt;&lt;P&gt;           I_PARAMETERS TYPE STANDARD TABLE OF SPAR,&lt;/P&gt;&lt;P&gt;           W_TEXT_Q     TYPE STRING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE TEXT-900   TO W_PARAM-VALUE.&lt;/P&gt;&lt;P&gt;    MOVE 'TEXT1'    TO W_PARAM-PARAM.&lt;/P&gt;&lt;P&gt;    APPEND W_PARAM TO I_PARAMETERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE SY-MSGV1  TO W_PARAM-VALUE.&lt;/P&gt;&lt;P&gt;    MOVE 'TEXT2'    TO W_PARAM-PARAM.&lt;/P&gt;&lt;P&gt;    APPEND W_PARAM TO I_PARAMETERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE TEXT-901  TO W_PARAM-VALUE.&lt;/P&gt;&lt;P&gt;    MOVE 'TEXT3'    TO W_PARAM-PARAM.&lt;/P&gt;&lt;P&gt;    APPEND W_PARAM TO I_PARAMETERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE TEXT-902&lt;/P&gt;&lt;P&gt;                TEXT-903&lt;/P&gt;&lt;P&gt;                INTO&lt;/P&gt;&lt;P&gt;                W_TEXT_Q.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;       TITLEBAR                    = TEXT-904&lt;/P&gt;&lt;P&gt;       DIAGNOSE_OBJECT             = 'Z_ZIMPCHK1_POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;       TEXT_QUESTION               = W_TEXT_Q&lt;/P&gt;&lt;P&gt;     IMPORTING&lt;/P&gt;&lt;P&gt;       ANSWER                      = UP_ANSWER&lt;/P&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;       PARAMETER                   = I_PARAMETERS&lt;/P&gt;&lt;P&gt;     EXCEPTIONS&lt;/P&gt;&lt;P&gt;       TEXT_NOT_FOUND              = 1&lt;/P&gt;&lt;P&gt;       OTHERS                      = 2&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;     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;call function 'UPLOAD'&lt;/P&gt;&lt;P&gt;         exporting&lt;/P&gt;&lt;P&gt;              filename = umsfile&lt;/P&gt;&lt;P&gt;              filetype = 'ASC'&lt;/P&gt;&lt;P&gt;         tables&lt;/P&gt;&lt;P&gt;              data_tab = umsatz.&lt;/P&gt;&lt;P&gt;replacement :&lt;/P&gt;&lt;P&gt;DATA : I_FILE_TABLE1 TYPE  TABLE OF FILE_TABLE,&lt;/P&gt;&lt;P&gt;       W_FILETABLE1  TYPE  FILE_TABLE,&lt;/P&gt;&lt;P&gt;       W_RC1         TYPE  I,&lt;/P&gt;&lt;P&gt;       W_P_DEF_FILE1 TYPE  STRING,&lt;/P&gt;&lt;P&gt;       W_P_FILE1     TYPE STRING,&lt;/P&gt;&lt;P&gt;       w_usr_act1    TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  W_P_DEF_FILE1 = umsfile.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD CL_GUI_FRONTEND_SERVICES=&amp;gt;FILE_OPEN_DIALOG&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WINDOW_TITLE            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        DEFAULT_EXTENSION       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          DEFAULT_FILENAME        = W_P_DEF_FILE1&lt;/P&gt;&lt;P&gt;       CHANGING&lt;/P&gt;&lt;P&gt;          FILE_TABLE              = I_FILE_TABLE1&lt;/P&gt;&lt;P&gt;          RC                      = W_RC1&lt;/P&gt;&lt;P&gt;          USER_ACTION             = w_usr_act1&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        FILE_ENCODING           =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;         FILE_OPEN_DIALOG_FAILED = 1&lt;/P&gt;&lt;P&gt;         CNTL_ERROR              = 2&lt;/P&gt;&lt;P&gt;         ERROR_NO_GUI            = 3&lt;/P&gt;&lt;P&gt;         NOT_SUPPORTED_BY_GUI    = 4&lt;/P&gt;&lt;P&gt;         others                  = 5      .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0&lt;/P&gt;&lt;P&gt;      AND w_usr_act &amp;lt;&amp;gt;&lt;/P&gt;&lt;P&gt;      CL_GUI_FRONTEND_SERVICES=&amp;gt;ACTION_CANCEL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     LOOP AT I_FILE_TABLE1  INTO W_FILETABLE1.&lt;/P&gt;&lt;P&gt;        W_P_FILE1 = W_FILETABLE1.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      FILENAME                      = W_P_FILE1&lt;/P&gt;&lt;P&gt;     FILETYPE                      = 'ASC'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      DATA_TAB                      = umsatz&lt;/P&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     FILE_OPEN_ERROR               = 1&lt;/P&gt;&lt;P&gt;     FILE_READ_ERROR               = 2&lt;/P&gt;&lt;P&gt;     NO_BATCH                      = 3&lt;/P&gt;&lt;P&gt;     GUI_REFUSE_FILETRANSFER       = 4&lt;/P&gt;&lt;P&gt;     INVALID_TYPE                  = 5&lt;/P&gt;&lt;P&gt;     NO_AUTHORITY                  = 6&lt;/P&gt;&lt;P&gt;     UNKNOWN_ERROR                 = 7&lt;/P&gt;&lt;P&gt;     BAD_DATA_FORMAT               = 8&lt;/P&gt;&lt;P&gt;     HEADER_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;     SEPARATOR_NOT_ALLOWED         = 10&lt;/P&gt;&lt;P&gt;     HEADER_TOO_LONG               = 11&lt;/P&gt;&lt;P&gt;     UNKNOWN_DP_ERROR              = 12&lt;/P&gt;&lt;P&gt;     ACCESS_DENIED                 = 13&lt;/P&gt;&lt;P&gt;     DP_OUT_OF_MEMORY              = 14&lt;/P&gt;&lt;P&gt;     DISK_FULL                     = 15&lt;/P&gt;&lt;P&gt;     DP_TIMEOUT                    = 16&lt;/P&gt;&lt;P&gt;     OTHERS                        = 17&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;  CALL FUNCTION 'DOWNLOAD'&lt;/P&gt;&lt;P&gt;           EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           BIN_FILESIZE            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CODEPAGE                = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                FILENAME                = PT_FILE&lt;/P&gt;&lt;P&gt;                FILETYPE                = 'DAT'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           ITEM                    = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           MODE                    = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_N_FORMAT            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_N_SIZE              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_T_FORMAT            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_T_SIZE              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILEMASK_MASK           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILEMASK_TEXT           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE_NO_CHANGE      = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILEMASK_ALL            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE_NO_SHOW        = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           SILENT                  = 'S'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           COL_SELECT              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           COL_SELECTMASK          = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_AUTH_CHECK           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           ACT_FILENAME            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           ACT_FILETYPE            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILESIZE                =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CANCEL                  =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           TABLES&lt;/P&gt;&lt;P&gt;                DATA_TAB                = BELEGE&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FIELDNAMES              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           EXCEPTIONS&lt;/P&gt;&lt;P&gt;                INVALID_FILESIZE        = 1&lt;/P&gt;&lt;P&gt;                INVALID_TABLE_WIDTH     = 2&lt;/P&gt;&lt;P&gt;                INVALID_TYPE            = 3&lt;/P&gt;&lt;P&gt;                NO_BATCH                = 4&lt;/P&gt;&lt;P&gt;                UNKNOWN_ERROR           = 5&lt;/P&gt;&lt;P&gt;                GUI_REFUSE_FILETRANSFER = 6&lt;/P&gt;&lt;P&gt;                OTHERS                  = 7.&lt;/P&gt;&lt;P&gt;replacement:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: l_filename    TYPE string,&lt;/P&gt;&lt;P&gt;       l_filen       TYPE string,&lt;/P&gt;&lt;P&gt;       l_path        TYPE string,&lt;/P&gt;&lt;P&gt;       l_fullpath    TYPE string,&lt;/P&gt;&lt;P&gt;       l_usr_act     TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;l_filename = PT_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL METHOD CL_GUI_FRONTEND_SERVICES=&amp;gt;FILE_SAVE_DIALOG&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    DEFAULT_FILE_NAME    = l_filename&lt;/P&gt;&lt;P&gt;  CHANGING&lt;/P&gt;&lt;P&gt;    FILENAME             = l_filen&lt;/P&gt;&lt;P&gt;    PATH                 = l_path&lt;/P&gt;&lt;P&gt;    FULLPATH             = l_fullpath&lt;/P&gt;&lt;P&gt;    USER_ACTION          = l_usr_act&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    CNTL_ERROR           = 1&lt;/P&gt;&lt;P&gt;    ERROR_NO_GUI         = 2&lt;/P&gt;&lt;P&gt;    NOT_SUPPORTED_BY_GUI = 3&lt;/P&gt;&lt;P&gt;    others               = 4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0&lt;/P&gt;&lt;P&gt;      AND l_usr_act &amp;lt;&amp;gt;&lt;/P&gt;&lt;P&gt;      CL_GUI_FRONTEND_SERVICES=&amp;gt;ACTION_CANCEL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  BIN_FILESIZE                    =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    FILENAME                        = l_fullpath&lt;/P&gt;&lt;P&gt;   FILETYPE                        = 'DAT'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                        = BELEGE&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FIELDNAMES                      =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_WRITE_ERROR                = 1&lt;/P&gt;&lt;P&gt;   NO_BATCH                        = 2&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER         = 3&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                    = 4&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                    = 5&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                   = 6&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED              = 7&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED           = 8&lt;/P&gt;&lt;P&gt;   FILESIZE_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG                 = 10&lt;/P&gt;&lt;P&gt;   DP_ERROR_CREATE                 = 11&lt;/P&gt;&lt;P&gt;   DP_ERROR_SEND                   = 12&lt;/P&gt;&lt;P&gt;   DP_ERROR_WRITE                  = 13&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR                = 14&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                   = 15&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY                = 16&lt;/P&gt;&lt;P&gt;   DISK_FULL                       = 17&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                      = 18&lt;/P&gt;&lt;P&gt;   FILE_NOT_FOUND                  = 19&lt;/P&gt;&lt;P&gt;   DATAPROVIDER_EXCEPTION          = 20&lt;/P&gt;&lt;P&gt;   CONTROL_FLUSH_ERROR             = 21&lt;/P&gt;&lt;P&gt;   OTHERS                          = 22&lt;/P&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 04 Jan 2008 08:37:55 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-01-04T08:37:55Z</dc:date>
    <item>
      <title>Regarding Obsolete Function Modules</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119826#M740841</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;        can anybody tell me the alternative ECC6.0 function modules of the following Obsolete function modules&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DOWNLOAD&lt;/P&gt;&lt;P&gt;UPLOAD&lt;/P&gt;&lt;P&gt;WS_DOWNLOAD&lt;/P&gt;&lt;P&gt;WS_UPLOAD&lt;/P&gt;&lt;P&gt;WS_FILENAME_GET&lt;/P&gt;&lt;P&gt;WS_QUERY&lt;/P&gt;&lt;P&gt;POPUP_TO_CONFIRM_STEP&lt;/P&gt;&lt;P&gt;POPUP_TO_CONFIRM_WITH_MESSAGE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thnks&lt;/P&gt;&lt;P&gt;Sandeep&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Nov 2007 10:51:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119826#M740841</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-20T10:51:24Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding Obsolete Function Modules</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119827#M740842</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Sandeep,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for DOWNLOAD&lt;/P&gt;&lt;P&gt;UPLOAD&lt;/P&gt;&lt;P&gt;WS_DOWNLOAD&lt;/P&gt;&lt;P&gt;WS_UPLOAD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;alternative FM is&lt;/P&gt;&lt;P&gt;GUI_UPLOAD and GUI_DOWNLOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Swati&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Nov 2007 10:53:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119827#M740842</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-20T10:53:24Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding Obsolete Function Modules</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119828#M740843</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;GUI_UPLOAD&lt;/P&gt;&lt;P&gt;GUI_DOWNLOAD&lt;/P&gt;&lt;P&gt;F4_FILENAME&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, 20 Nov 2007 10:53:57 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119828#M740843</guid>
      <dc:creator>former_member386202</dc:creator>
      <dc:date>2007-11-20T10:53:57Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding Obsolete Function Modules</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119829#M740844</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Sandeep,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for the POPUP_* FMs use POPUP_TO_CONFIRM&lt;/P&gt;&lt;P&gt;for the WS_* FMs use class CL_GUI_FRONTEND_SERVICES &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ec&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Nov 2007 11:03:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119829#M740844</guid>
      <dc:creator>JozsefSzikszai</dc:creator>
      <dc:date>2007-11-20T11:03:10Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding Obsolete Function Modules</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119830#M740845</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;here are replacement function modules for the obsolete ones.&lt;/P&gt;&lt;P&gt;award points in case u feel this useful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Obsolete Function Module: WS_UPLOAD.&lt;/P&gt;&lt;P&gt;      Replacement FM: GUI_UPLOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  1. If the FM &amp;#145;WS_UPLOAD' has file type as ASC, then we can use same file     &lt;/P&gt;&lt;P&gt;    type ASC for GUI_UPLOAD also.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2. But if the FM 'WS_UPLOAD' has file type as DAT, we can not use DAT for   &lt;/P&gt;&lt;P&gt;  'GUI_UPLOAD' as it will give short dump.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    In this case we need use file type as ASC &lt;/P&gt;&lt;P&gt;      and &lt;/P&gt;&lt;P&gt;      HAS_FIELD_SEPARATOR = &amp;#145;X&amp;#146;. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3. If the file name or file type of ws_upload have variables or constants    &lt;/P&gt;&lt;P&gt;    Instead of hard coding, then don&amp;#146;t use hard code values for gui_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3. The data type of file name always should be of character type for gui_upload&lt;/P&gt;&lt;P&gt;      The file type should be of Type Character and length 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  4. Always uncomment the exceptions for gui_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  5. And also uncomment the code inside IF SY-SUBRC &amp;lt;&amp;gt; 0. and ENDIF after     &lt;/P&gt;&lt;P&gt;      gui_upload if the customer has not handled any exception in 46c version.&lt;/P&gt;&lt;P&gt;      If there is any code inside IF SY-SUBRC &amp;lt;&amp;gt; 0 and ENDIF for ws_upload in 46c &lt;/P&gt;&lt;P&gt;      version, Please use the same code in ECC also after gui_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   Example for File type ASC:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILENAME                = P_FILE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE                = 'ASC'&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;     IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;          FILELENGTH              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           DATA_TAB                = P_I_DATA&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CONVERSION_ERROR        = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_OPEN_ERROR         = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_READ_ERROR         = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TABLE_WIDTH     = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TYPE            = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_BATCH                = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           UNKNOWN_ERROR           = 7&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           GUI_REFUSE_FILETRANSFER = 8&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CUSTOMER_ERROR          = 9&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           OTHERS                  = 10.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement FM: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA L_P_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;     L_P_FILE = P_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    FILENAME                      = L_P_FILE&lt;/P&gt;&lt;P&gt;    FILETYPE                      = &amp;#145;ASC&amp;#146;&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                      = P_I_DATA&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_OPEN_ERROR               = 1&lt;/P&gt;&lt;P&gt;   FILE_READ_ERROR               = 2&lt;/P&gt;&lt;P&gt;   NO_BATCH                      = 3&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER       = 4&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                  = 5&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                  = 6&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                 = 7&lt;/P&gt;&lt;P&gt;   BAD_DATA_FORMAT               = 8&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED         = 10&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG               = 11&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR              = 12&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                 = 13&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY              = 14&lt;/P&gt;&lt;P&gt;   DISK_FULL                     = 15&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                    = 16&lt;/P&gt;&lt;P&gt;   OTHERS                        = 17&lt;/P&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E033 WITH P_FILE ' could not be opened'(E03).&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example for file type DAT: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILENAME                = P_FILE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE                = 'DAT'&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;     IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;          FILELENGTH              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           DATA_TAB                = P_I_DATA&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CONVERSION_ERROR        = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_OPEN_ERROR         = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_READ_ERROR         = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TABLE_WIDTH     = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TYPE            = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_BATCH                = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           UNKNOWN_ERROR           = 7&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           GUI_REFUSE_FILETRANSFER = 8&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CUSTOMER_ERROR          = 9&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           OTHERS                  = 10.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement FM: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA L_P_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;     L_P_FILE = P_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    FILENAME                      = L_P_FILE&lt;/P&gt;&lt;P&gt;    FILETYPE                      = &amp;#145;ASC&amp;#146;&lt;/P&gt;&lt;P&gt;    HAS_FIELD_SEPARATOR           = &amp;#145;X&amp;#146;&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                      = P_I_DATA&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_OPEN_ERROR               = 1&lt;/P&gt;&lt;P&gt;   FILE_READ_ERROR               = 2&lt;/P&gt;&lt;P&gt;   NO_BATCH                      = 3&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER       = 4&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                  = 5&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                  = 6&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                 = 7&lt;/P&gt;&lt;P&gt;   BAD_DATA_FORMAT               = 8&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED         = 10&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG               = 11&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR              = 12&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                 = 13&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY              = 14&lt;/P&gt;&lt;P&gt;   DISK_FULL                     = 15&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                    = 16&lt;/P&gt;&lt;P&gt;   OTHERS                        = 17&lt;/P&gt;&lt;P&gt;          .&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; MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;Else.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Obsolete FM       : WS_DOWNLOAD&lt;/P&gt;&lt;P&gt;    Replacement FM: GUI_DOWNLOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  1. If the FM &amp;#145;WS_DOWNLOAD' has file type as ASC, then we can use same file     &lt;/P&gt;&lt;P&gt;    Type ASC for GUI_DOWNLOAD also.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2. If the FM 'WS_DOWNLOAD' has file type as DAT, we can use DAT for   &lt;/P&gt;&lt;P&gt;  'GUI_DOWNLOAD'  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3. If the file name or file type of ws_upload have variables or constants    &lt;/P&gt;&lt;P&gt;    Instead of hard coding,then don&amp;#146;t use hard code values for gui_download.&lt;/P&gt;&lt;P&gt;    Declare variables and assign the ws_download variables to new variables   &lt;/P&gt;&lt;P&gt;    and use These in the new FM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 4. The data type of file name always should be of character type for gui_upload&lt;/P&gt;&lt;P&gt;      The file type should be of Type Character and length 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 5. The data type of file name always should be of character type for gui_ download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  6. Always uncomment the exceptions for gui_download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  7. And also uncomment the code inside IF SY-SUBRC &amp;lt;&amp;gt; 0. and ENDIF after     &lt;/P&gt;&lt;P&gt;      Gui_upload if the customer has not handled any exception in 46c version.&lt;/P&gt;&lt;P&gt;      If there is any code inside IF SY-SUBRC &amp;lt;&amp;gt; 0 and ENDIF for ws_ download in  &lt;/P&gt;&lt;P&gt;      46c  version, Please use the same code in ECC also after gui_download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CALL FUNCTION 'WS_DOWNLOAD'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILENAME            = P_FILENM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE            = 'DAT'       " split into records&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           DATA_TAB            = L_ITAB&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FIELDNAMES          = T_HEAD&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_OPEN_ERROR     = 01&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_WRITE_ERROR    = 02&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_FILESIZE    = 03&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TABLE_WIDTH = 04&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TYPE        = 05&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_BATCH            = 06&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           UNKNOWN_ERROR       = 07.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement FM for above FM:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA L_P_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;     L_P_FILE = P_FILENM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;   FILENAME                        = L_P_FILE&lt;/P&gt;&lt;P&gt;   FILETYPE                        = &amp;#145;DAT&amp;#146;&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;   DATA_TAB                        = L_ITAB&lt;/P&gt;&lt;P&gt;   FIELDNAMES                      = T_HEAD&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_WRITE_ERROR                = 1&lt;/P&gt;&lt;P&gt;   NO_BATCH                        = 2&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER         = 3&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                    = 4&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                    = 5&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                   = 6&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED              = 7&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED           = 8&lt;/P&gt;&lt;P&gt;   FILESIZE_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG                 = 10&lt;/P&gt;&lt;P&gt;   DP_ERROR_CREATE                 = 11&lt;/P&gt;&lt;P&gt;   DP_ERROR_SEND                   = 12&lt;/P&gt;&lt;P&gt;   DP_ERROR_WRITE                  = 13&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR                = 14&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                   = 15&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY                = 16&lt;/P&gt;&lt;P&gt;   DISK_FULL                       = 17&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                      = 18&lt;/P&gt;&lt;P&gt;   FILE_NOT_FOUND                  = 19&lt;/P&gt;&lt;P&gt;   DATAPROVIDER_EXCEPTION          = 20&lt;/P&gt;&lt;P&gt;   CONTROL_FLUSH_ERROR             = 21&lt;/P&gt;&lt;P&gt;   OTHERS                          = 22.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'&lt;/P&gt;&lt;P&gt;*EXPORTING&lt;/P&gt;&lt;P&gt;*defaultoption  = 'N'&lt;/P&gt;&lt;P&gt;*	extline1 = 'Soll das Include überschrieben werden?'(034)&lt;/P&gt;&lt;P&gt;*	extline2 = i_inc-include&lt;/P&gt;&lt;P&gt;*	itel     = 'Include existiert bereits!'(039)&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;START_COLUMN   = 25&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;START_ROW      = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;CANCEL_DISPLAY = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; answer = answer&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement Method :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : l_question type string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Concatenate   'Soll das Include überschrieben werden?'(034) &lt;/P&gt;&lt;P&gt;              i_inc-include&lt;/P&gt;&lt;P&gt;into          l_question.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt; TITLEBAR = 'Prepack deletion'(019)&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DIAGNOSE_OBJECT = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TEXT_QUESTION = l_question&lt;/P&gt;&lt;P&gt;TEXT_BUTTON_1 = 'Yes'(020)&lt;/P&gt;&lt;P&gt;*ICON_BUTTON_1  = ' '&lt;/P&gt;&lt;P&gt; TEXT_BUTTON_2  = 'No'(021)&lt;/P&gt;&lt;P&gt;*ICON_BUTTON_2  = ' '&lt;/P&gt;&lt;P&gt;*DEFAULT_BUTTON = '2'&lt;/P&gt;&lt;P&gt;DISPLAY_CANCEL_BUTTON = 'X'&lt;/P&gt;&lt;P&gt;*USERDEFINED_F1_HELP  = ' '&lt;/P&gt;&lt;P&gt;*START_COLUMN = 25&lt;/P&gt;&lt;P&gt;*START_ROW = 6&lt;/P&gt;&lt;P&gt;*POPUP_TYPE =&lt;/P&gt;&lt;P&gt;*IV_QUICKINFO_BUTTON_1  = ' '&lt;/P&gt;&lt;P&gt;*IV_QUICKINFO_BUTTON_2  = ' '&lt;/P&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;P&gt;   ANSWER = answer&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*PARAMETER =&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;TEXT_NOT_FOUND = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2    .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note :  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   In FM  POPUP_TO_CONFIRM_STEP' , the value for import parameter ANSWER is&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;       J (YES),&lt;/P&gt;&lt;P&gt;       N (NO).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But for  POPUP_TO_CONFIRM , the value for import parameter ANSWER is&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       1 (YES),&lt;/P&gt;&lt;P&gt;       2 (NO).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, please change these values accordingly while replacing with the new FM.&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             DIAGNOSETEXT1 = TEXT-900&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             DIAGNOSETEXT2 = SY-MSGV1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             DIAGNOSETEXT3 = TEXT-901&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             TEXTLINE1     = TEXT-902&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             TEXTLINE2     = TEXT-903&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             TITEL         = TEXT-904&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             ANSWER        = UP_ANSWER.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;replacement:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;The Diagnose object parameter Z_ZIMPCHK1_POPUP_TO_CONFIRM'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  is created in SE61 transaction as DIALOG TEXT object&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: W_PARAM      TYPE SPAR,&lt;/P&gt;&lt;P&gt;           I_PARAMETERS TYPE STANDARD TABLE OF SPAR,&lt;/P&gt;&lt;P&gt;           W_TEXT_Q     TYPE STRING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE TEXT-900   TO W_PARAM-VALUE.&lt;/P&gt;&lt;P&gt;    MOVE 'TEXT1'    TO W_PARAM-PARAM.&lt;/P&gt;&lt;P&gt;    APPEND W_PARAM TO I_PARAMETERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE SY-MSGV1  TO W_PARAM-VALUE.&lt;/P&gt;&lt;P&gt;    MOVE 'TEXT2'    TO W_PARAM-PARAM.&lt;/P&gt;&lt;P&gt;    APPEND W_PARAM TO I_PARAMETERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE TEXT-901  TO W_PARAM-VALUE.&lt;/P&gt;&lt;P&gt;    MOVE 'TEXT3'    TO W_PARAM-PARAM.&lt;/P&gt;&lt;P&gt;    APPEND W_PARAM TO I_PARAMETERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE TEXT-902&lt;/P&gt;&lt;P&gt;                TEXT-903&lt;/P&gt;&lt;P&gt;                INTO&lt;/P&gt;&lt;P&gt;                W_TEXT_Q.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;       TITLEBAR                    = TEXT-904&lt;/P&gt;&lt;P&gt;       DIAGNOSE_OBJECT             = 'Z_ZIMPCHK1_POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;       TEXT_QUESTION               = W_TEXT_Q&lt;/P&gt;&lt;P&gt;     IMPORTING&lt;/P&gt;&lt;P&gt;       ANSWER                      = UP_ANSWER&lt;/P&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;       PARAMETER                   = I_PARAMETERS&lt;/P&gt;&lt;P&gt;     EXCEPTIONS&lt;/P&gt;&lt;P&gt;       TEXT_NOT_FOUND              = 1&lt;/P&gt;&lt;P&gt;       OTHERS                      = 2&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;     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;call function 'UPLOAD'&lt;/P&gt;&lt;P&gt;         exporting&lt;/P&gt;&lt;P&gt;              filename = umsfile&lt;/P&gt;&lt;P&gt;              filetype = 'ASC'&lt;/P&gt;&lt;P&gt;         tables&lt;/P&gt;&lt;P&gt;              data_tab = umsatz.&lt;/P&gt;&lt;P&gt;replacement :&lt;/P&gt;&lt;P&gt;DATA : I_FILE_TABLE1 TYPE  TABLE OF FILE_TABLE,&lt;/P&gt;&lt;P&gt;       W_FILETABLE1  TYPE  FILE_TABLE,&lt;/P&gt;&lt;P&gt;       W_RC1         TYPE  I,&lt;/P&gt;&lt;P&gt;       W_P_DEF_FILE1 TYPE  STRING,&lt;/P&gt;&lt;P&gt;       W_P_FILE1     TYPE STRING,&lt;/P&gt;&lt;P&gt;       w_usr_act1    TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  W_P_DEF_FILE1 = umsfile.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD CL_GUI_FRONTEND_SERVICES=&amp;gt;FILE_OPEN_DIALOG&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WINDOW_TITLE            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        DEFAULT_EXTENSION       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          DEFAULT_FILENAME        = W_P_DEF_FILE1&lt;/P&gt;&lt;P&gt;       CHANGING&lt;/P&gt;&lt;P&gt;          FILE_TABLE              = I_FILE_TABLE1&lt;/P&gt;&lt;P&gt;          RC                      = W_RC1&lt;/P&gt;&lt;P&gt;          USER_ACTION             = w_usr_act1&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        FILE_ENCODING           =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;         FILE_OPEN_DIALOG_FAILED = 1&lt;/P&gt;&lt;P&gt;         CNTL_ERROR              = 2&lt;/P&gt;&lt;P&gt;         ERROR_NO_GUI            = 3&lt;/P&gt;&lt;P&gt;         NOT_SUPPORTED_BY_GUI    = 4&lt;/P&gt;&lt;P&gt;         others                  = 5      .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0&lt;/P&gt;&lt;P&gt;      AND w_usr_act &amp;lt;&amp;gt;&lt;/P&gt;&lt;P&gt;      CL_GUI_FRONTEND_SERVICES=&amp;gt;ACTION_CANCEL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     LOOP AT I_FILE_TABLE1  INTO W_FILETABLE1.&lt;/P&gt;&lt;P&gt;        W_P_FILE1 = W_FILETABLE1.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      FILENAME                      = W_P_FILE1&lt;/P&gt;&lt;P&gt;     FILETYPE                      = 'ASC'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      DATA_TAB                      = umsatz&lt;/P&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     FILE_OPEN_ERROR               = 1&lt;/P&gt;&lt;P&gt;     FILE_READ_ERROR               = 2&lt;/P&gt;&lt;P&gt;     NO_BATCH                      = 3&lt;/P&gt;&lt;P&gt;     GUI_REFUSE_FILETRANSFER       = 4&lt;/P&gt;&lt;P&gt;     INVALID_TYPE                  = 5&lt;/P&gt;&lt;P&gt;     NO_AUTHORITY                  = 6&lt;/P&gt;&lt;P&gt;     UNKNOWN_ERROR                 = 7&lt;/P&gt;&lt;P&gt;     BAD_DATA_FORMAT               = 8&lt;/P&gt;&lt;P&gt;     HEADER_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;     SEPARATOR_NOT_ALLOWED         = 10&lt;/P&gt;&lt;P&gt;     HEADER_TOO_LONG               = 11&lt;/P&gt;&lt;P&gt;     UNKNOWN_DP_ERROR              = 12&lt;/P&gt;&lt;P&gt;     ACCESS_DENIED                 = 13&lt;/P&gt;&lt;P&gt;     DP_OUT_OF_MEMORY              = 14&lt;/P&gt;&lt;P&gt;     DISK_FULL                     = 15&lt;/P&gt;&lt;P&gt;     DP_TIMEOUT                    = 16&lt;/P&gt;&lt;P&gt;     OTHERS                        = 17&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;  CALL FUNCTION 'DOWNLOAD'&lt;/P&gt;&lt;P&gt;           EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           BIN_FILESIZE            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CODEPAGE                = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                FILENAME                = PT_FILE&lt;/P&gt;&lt;P&gt;                FILETYPE                = 'DAT'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           ITEM                    = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           MODE                    = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_N_FORMAT            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_N_SIZE              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_T_FORMAT            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_T_SIZE              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILEMASK_MASK           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILEMASK_TEXT           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE_NO_CHANGE      = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILEMASK_ALL            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE_NO_SHOW        = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           SILENT                  = 'S'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           COL_SELECT              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           COL_SELECTMASK          = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_AUTH_CHECK           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           ACT_FILENAME            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           ACT_FILETYPE            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILESIZE                =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CANCEL                  =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           TABLES&lt;/P&gt;&lt;P&gt;                DATA_TAB                = BELEGE&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FIELDNAMES              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           EXCEPTIONS&lt;/P&gt;&lt;P&gt;                INVALID_FILESIZE        = 1&lt;/P&gt;&lt;P&gt;                INVALID_TABLE_WIDTH     = 2&lt;/P&gt;&lt;P&gt;                INVALID_TYPE            = 3&lt;/P&gt;&lt;P&gt;                NO_BATCH                = 4&lt;/P&gt;&lt;P&gt;                UNKNOWN_ERROR           = 5&lt;/P&gt;&lt;P&gt;                GUI_REFUSE_FILETRANSFER = 6&lt;/P&gt;&lt;P&gt;                OTHERS                  = 7.&lt;/P&gt;&lt;P&gt;replacement:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: l_filename    TYPE string,&lt;/P&gt;&lt;P&gt;       l_filen       TYPE string,&lt;/P&gt;&lt;P&gt;       l_path        TYPE string,&lt;/P&gt;&lt;P&gt;       l_fullpath    TYPE string,&lt;/P&gt;&lt;P&gt;       l_usr_act     TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;l_filename = PT_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL METHOD CL_GUI_FRONTEND_SERVICES=&amp;gt;FILE_SAVE_DIALOG&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    DEFAULT_FILE_NAME    = l_filename&lt;/P&gt;&lt;P&gt;  CHANGING&lt;/P&gt;&lt;P&gt;    FILENAME             = l_filen&lt;/P&gt;&lt;P&gt;    PATH                 = l_path&lt;/P&gt;&lt;P&gt;    FULLPATH             = l_fullpath&lt;/P&gt;&lt;P&gt;    USER_ACTION          = l_usr_act&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    CNTL_ERROR           = 1&lt;/P&gt;&lt;P&gt;    ERROR_NO_GUI         = 2&lt;/P&gt;&lt;P&gt;    NOT_SUPPORTED_BY_GUI = 3&lt;/P&gt;&lt;P&gt;    others               = 4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0&lt;/P&gt;&lt;P&gt;      AND l_usr_act &amp;lt;&amp;gt;&lt;/P&gt;&lt;P&gt;      CL_GUI_FRONTEND_SERVICES=&amp;gt;ACTION_CANCEL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  BIN_FILESIZE                    =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    FILENAME                        = l_fullpath&lt;/P&gt;&lt;P&gt;   FILETYPE                        = 'DAT'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                        = BELEGE&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FIELDNAMES                      =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_WRITE_ERROR                = 1&lt;/P&gt;&lt;P&gt;   NO_BATCH                        = 2&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER         = 3&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                    = 4&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                    = 5&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                   = 6&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED              = 7&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED           = 8&lt;/P&gt;&lt;P&gt;   FILESIZE_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG                 = 10&lt;/P&gt;&lt;P&gt;   DP_ERROR_CREATE                 = 11&lt;/P&gt;&lt;P&gt;   DP_ERROR_SEND                   = 12&lt;/P&gt;&lt;P&gt;   DP_ERROR_WRITE                  = 13&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR                = 14&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                   = 15&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY                = 16&lt;/P&gt;&lt;P&gt;   DISK_FULL                       = 17&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                      = 18&lt;/P&gt;&lt;P&gt;   FILE_NOT_FOUND                  = 19&lt;/P&gt;&lt;P&gt;   DATAPROVIDER_EXCEPTION          = 20&lt;/P&gt;&lt;P&gt;   CONTROL_FLUSH_ERROR             = 21&lt;/P&gt;&lt;P&gt;   OTHERS                          = 22&lt;/P&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 Jan 2008 08:37:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119830#M740845</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-04T08:37:55Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding Obsolete Function Modules</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119831#M740846</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;here are replacement function modules for the obsolete ones.&lt;/P&gt;&lt;P&gt;award points in case u feel this useful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Obsolete Function Module: WS_UPLOAD.&lt;/P&gt;&lt;P&gt;      Replacement FM: GUI_UPLOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  1. If the FM &amp;#145;WS_UPLOAD' has file type as ASC, then we can use same file     &lt;/P&gt;&lt;P&gt;    type ASC for GUI_UPLOAD also.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2. But if the FM 'WS_UPLOAD' has file type as DAT, we can not use DAT for   &lt;/P&gt;&lt;P&gt;  'GUI_UPLOAD' as it will give short dump.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    In this case we need use file type as ASC &lt;/P&gt;&lt;P&gt;      and &lt;/P&gt;&lt;P&gt;      HAS_FIELD_SEPARATOR = &amp;#145;X&amp;#146;. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3. If the file name or file type of ws_upload have variables or constants    &lt;/P&gt;&lt;P&gt;    Instead of hard coding, then don&amp;#146;t use hard code values for gui_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3. The data type of file name always should be of character type for gui_upload&lt;/P&gt;&lt;P&gt;      The file type should be of Type Character and length 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  4. Always uncomment the exceptions for gui_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  5. And also uncomment the code inside IF SY-SUBRC &amp;lt;&amp;gt; 0. and ENDIF after     &lt;/P&gt;&lt;P&gt;      gui_upload if the customer has not handled any exception in 46c version.&lt;/P&gt;&lt;P&gt;      If there is any code inside IF SY-SUBRC &amp;lt;&amp;gt; 0 and ENDIF for ws_upload in 46c &lt;/P&gt;&lt;P&gt;      version, Please use the same code in ECC also after gui_upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   Example for File type ASC:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILENAME                = P_FILE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE                = 'ASC'&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;     IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;          FILELENGTH              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           DATA_TAB                = P_I_DATA&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CONVERSION_ERROR        = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_OPEN_ERROR         = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_READ_ERROR         = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TABLE_WIDTH     = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TYPE            = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_BATCH                = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           UNKNOWN_ERROR           = 7&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           GUI_REFUSE_FILETRANSFER = 8&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CUSTOMER_ERROR          = 9&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           OTHERS                  = 10.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement FM: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA L_P_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;     L_P_FILE = P_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    FILENAME                      = L_P_FILE&lt;/P&gt;&lt;P&gt;    FILETYPE                      = &amp;#145;ASC&amp;#146;&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                      = P_I_DATA&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_OPEN_ERROR               = 1&lt;/P&gt;&lt;P&gt;   FILE_READ_ERROR               = 2&lt;/P&gt;&lt;P&gt;   NO_BATCH                      = 3&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER       = 4&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                  = 5&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                  = 6&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                 = 7&lt;/P&gt;&lt;P&gt;   BAD_DATA_FORMAT               = 8&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED         = 10&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG               = 11&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR              = 12&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                 = 13&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY              = 14&lt;/P&gt;&lt;P&gt;   DISK_FULL                     = 15&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                    = 16&lt;/P&gt;&lt;P&gt;   OTHERS                        = 17&lt;/P&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E033 WITH P_FILE ' could not be opened'(E03).&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example for file type DAT: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILENAME                = P_FILE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE                = 'DAT'&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;     IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;          FILELENGTH              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           DATA_TAB                = P_I_DATA&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CONVERSION_ERROR        = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_OPEN_ERROR         = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_READ_ERROR         = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TABLE_WIDTH     = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TYPE            = 5&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_BATCH                = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           UNKNOWN_ERROR           = 7&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           GUI_REFUSE_FILETRANSFER = 8&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CUSTOMER_ERROR          = 9&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           OTHERS                  = 10.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement FM: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA L_P_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;     L_P_FILE = P_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    FILENAME                      = L_P_FILE&lt;/P&gt;&lt;P&gt;    FILETYPE                      = &amp;#145;ASC&amp;#146;&lt;/P&gt;&lt;P&gt;    HAS_FIELD_SEPARATOR           = &amp;#145;X&amp;#146;&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                      = P_I_DATA&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_OPEN_ERROR               = 1&lt;/P&gt;&lt;P&gt;   FILE_READ_ERROR               = 2&lt;/P&gt;&lt;P&gt;   NO_BATCH                      = 3&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER       = 4&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                  = 5&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                  = 6&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                 = 7&lt;/P&gt;&lt;P&gt;   BAD_DATA_FORMAT               = 8&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED         = 10&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG               = 11&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR              = 12&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                 = 13&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY              = 14&lt;/P&gt;&lt;P&gt;   DISK_FULL                     = 15&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                    = 16&lt;/P&gt;&lt;P&gt;   OTHERS                        = 17&lt;/P&gt;&lt;P&gt;          .&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; MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;Else.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Obsolete FM       : WS_DOWNLOAD&lt;/P&gt;&lt;P&gt;    Replacement FM: GUI_DOWNLOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  1. If the FM &amp;#145;WS_DOWNLOAD' has file type as ASC, then we can use same file     &lt;/P&gt;&lt;P&gt;    Type ASC for GUI_DOWNLOAD also.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2. If the FM 'WS_DOWNLOAD' has file type as DAT, we can use DAT for   &lt;/P&gt;&lt;P&gt;  'GUI_DOWNLOAD'  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3. If the file name or file type of ws_upload have variables or constants    &lt;/P&gt;&lt;P&gt;    Instead of hard coding,then don&amp;#146;t use hard code values for gui_download.&lt;/P&gt;&lt;P&gt;    Declare variables and assign the ws_download variables to new variables   &lt;/P&gt;&lt;P&gt;    and use These in the new FM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 4. The data type of file name always should be of character type for gui_upload&lt;/P&gt;&lt;P&gt;      The file type should be of Type Character and length 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 5. The data type of file name always should be of character type for gui_ download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  6. Always uncomment the exceptions for gui_download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  7. And also uncomment the code inside IF SY-SUBRC &amp;lt;&amp;gt; 0. and ENDIF after     &lt;/P&gt;&lt;P&gt;      Gui_upload if the customer has not handled any exception in 46c version.&lt;/P&gt;&lt;P&gt;      If there is any code inside IF SY-SUBRC &amp;lt;&amp;gt; 0 and ENDIF for ws_ download in  &lt;/P&gt;&lt;P&gt;      46c  version, Please use the same code in ECC also after gui_download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CALL FUNCTION 'WS_DOWNLOAD'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILENAME            = P_FILENM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE            = 'DAT'       " split into records&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           DATA_TAB            = L_ITAB&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FIELDNAMES          = T_HEAD&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_OPEN_ERROR     = 01&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILE_WRITE_ERROR    = 02&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_FILESIZE    = 03&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TABLE_WIDTH = 04&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INVALID_TYPE        = 05&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_BATCH            = 06&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           UNKNOWN_ERROR       = 07.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement FM for above FM:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA L_P_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;     L_P_FILE = P_FILENM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;   FILENAME                        = L_P_FILE&lt;/P&gt;&lt;P&gt;   FILETYPE                        = &amp;#145;DAT&amp;#146;&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;   DATA_TAB                        = L_ITAB&lt;/P&gt;&lt;P&gt;   FIELDNAMES                      = T_HEAD&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_WRITE_ERROR                = 1&lt;/P&gt;&lt;P&gt;   NO_BATCH                        = 2&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER         = 3&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                    = 4&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                    = 5&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                   = 6&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED              = 7&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED           = 8&lt;/P&gt;&lt;P&gt;   FILESIZE_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG                 = 10&lt;/P&gt;&lt;P&gt;   DP_ERROR_CREATE                 = 11&lt;/P&gt;&lt;P&gt;   DP_ERROR_SEND                   = 12&lt;/P&gt;&lt;P&gt;   DP_ERROR_WRITE                  = 13&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR                = 14&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                   = 15&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY                = 16&lt;/P&gt;&lt;P&gt;   DISK_FULL                       = 17&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                      = 18&lt;/P&gt;&lt;P&gt;   FILE_NOT_FOUND                  = 19&lt;/P&gt;&lt;P&gt;   DATAPROVIDER_EXCEPTION          = 20&lt;/P&gt;&lt;P&gt;   CONTROL_FLUSH_ERROR             = 21&lt;/P&gt;&lt;P&gt;   OTHERS                          = 22.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'&lt;/P&gt;&lt;P&gt;*EXPORTING&lt;/P&gt;&lt;P&gt;*defaultoption  = 'N'&lt;/P&gt;&lt;P&gt;*	extline1 = 'Soll das Include überschrieben werden?'(034)&lt;/P&gt;&lt;P&gt;*	extline2 = i_inc-include&lt;/P&gt;&lt;P&gt;*	itel     = 'Include existiert bereits!'(039)&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;START_COLUMN   = 25&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;START_ROW      = 6&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;CANCEL_DISPLAY = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; answer = answer&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Replacement Method :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : l_question type string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Concatenate   'Soll das Include überschrieben werden?'(034) &lt;/P&gt;&lt;P&gt;              i_inc-include&lt;/P&gt;&lt;P&gt;into          l_question.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt; TITLEBAR = 'Prepack deletion'(019)&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DIAGNOSE_OBJECT = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TEXT_QUESTION = l_question&lt;/P&gt;&lt;P&gt;TEXT_BUTTON_1 = 'Yes'(020)&lt;/P&gt;&lt;P&gt;*ICON_BUTTON_1  = ' '&lt;/P&gt;&lt;P&gt; TEXT_BUTTON_2  = 'No'(021)&lt;/P&gt;&lt;P&gt;*ICON_BUTTON_2  = ' '&lt;/P&gt;&lt;P&gt;*DEFAULT_BUTTON = '2'&lt;/P&gt;&lt;P&gt;DISPLAY_CANCEL_BUTTON = 'X'&lt;/P&gt;&lt;P&gt;*USERDEFINED_F1_HELP  = ' '&lt;/P&gt;&lt;P&gt;*START_COLUMN = 25&lt;/P&gt;&lt;P&gt;*START_ROW = 6&lt;/P&gt;&lt;P&gt;*POPUP_TYPE =&lt;/P&gt;&lt;P&gt;*IV_QUICKINFO_BUTTON_1  = ' '&lt;/P&gt;&lt;P&gt;*IV_QUICKINFO_BUTTON_2  = ' '&lt;/P&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;P&gt;   ANSWER = answer&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*PARAMETER =&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;TEXT_NOT_FOUND = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2    .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note :  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   In FM  POPUP_TO_CONFIRM_STEP' , the value for import parameter ANSWER is&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;       J (YES),&lt;/P&gt;&lt;P&gt;       N (NO).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But for  POPUP_TO_CONFIRM , the value for import parameter ANSWER is&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       1 (YES),&lt;/P&gt;&lt;P&gt;       2 (NO).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, please change these values accordingly while replacing with the new FM.&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             DIAGNOSETEXT1 = TEXT-900&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             DIAGNOSETEXT2 = SY-MSGV1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             DIAGNOSETEXT3 = TEXT-901&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             TEXTLINE1     = TEXT-902&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             TEXTLINE2     = TEXT-903&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             TITEL         = TEXT-904&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             ANSWER        = UP_ANSWER.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;replacement:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;The Diagnose object parameter Z_ZIMPCHK1_POPUP_TO_CONFIRM'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  is created in SE61 transaction as DIALOG TEXT object&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: W_PARAM      TYPE SPAR,&lt;/P&gt;&lt;P&gt;           I_PARAMETERS TYPE STANDARD TABLE OF SPAR,&lt;/P&gt;&lt;P&gt;           W_TEXT_Q     TYPE STRING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE TEXT-900   TO W_PARAM-VALUE.&lt;/P&gt;&lt;P&gt;    MOVE 'TEXT1'    TO W_PARAM-PARAM.&lt;/P&gt;&lt;P&gt;    APPEND W_PARAM TO I_PARAMETERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE SY-MSGV1  TO W_PARAM-VALUE.&lt;/P&gt;&lt;P&gt;    MOVE 'TEXT2'    TO W_PARAM-PARAM.&lt;/P&gt;&lt;P&gt;    APPEND W_PARAM TO I_PARAMETERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE TEXT-901  TO W_PARAM-VALUE.&lt;/P&gt;&lt;P&gt;    MOVE 'TEXT3'    TO W_PARAM-PARAM.&lt;/P&gt;&lt;P&gt;    APPEND W_PARAM TO I_PARAMETERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE TEXT-902&lt;/P&gt;&lt;P&gt;                TEXT-903&lt;/P&gt;&lt;P&gt;                INTO&lt;/P&gt;&lt;P&gt;                W_TEXT_Q.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;       TITLEBAR                    = TEXT-904&lt;/P&gt;&lt;P&gt;       DIAGNOSE_OBJECT             = 'Z_ZIMPCHK1_POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;       TEXT_QUESTION               = W_TEXT_Q&lt;/P&gt;&lt;P&gt;     IMPORTING&lt;/P&gt;&lt;P&gt;       ANSWER                      = UP_ANSWER&lt;/P&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;       PARAMETER                   = I_PARAMETERS&lt;/P&gt;&lt;P&gt;     EXCEPTIONS&lt;/P&gt;&lt;P&gt;       TEXT_NOT_FOUND              = 1&lt;/P&gt;&lt;P&gt;       OTHERS                      = 2&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;     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;call function 'UPLOAD'&lt;/P&gt;&lt;P&gt;         exporting&lt;/P&gt;&lt;P&gt;              filename = umsfile&lt;/P&gt;&lt;P&gt;              filetype = 'ASC'&lt;/P&gt;&lt;P&gt;         tables&lt;/P&gt;&lt;P&gt;              data_tab = umsatz.&lt;/P&gt;&lt;P&gt;replacement :&lt;/P&gt;&lt;P&gt;DATA : I_FILE_TABLE1 TYPE  TABLE OF FILE_TABLE,&lt;/P&gt;&lt;P&gt;       W_FILETABLE1  TYPE  FILE_TABLE,&lt;/P&gt;&lt;P&gt;       W_RC1         TYPE  I,&lt;/P&gt;&lt;P&gt;       W_P_DEF_FILE1 TYPE  STRING,&lt;/P&gt;&lt;P&gt;       W_P_FILE1     TYPE STRING,&lt;/P&gt;&lt;P&gt;       w_usr_act1    TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  W_P_DEF_FILE1 = umsfile.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD CL_GUI_FRONTEND_SERVICES=&amp;gt;FILE_OPEN_DIALOG&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WINDOW_TITLE            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        DEFAULT_EXTENSION       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          DEFAULT_FILENAME        = W_P_DEF_FILE1&lt;/P&gt;&lt;P&gt;       CHANGING&lt;/P&gt;&lt;P&gt;          FILE_TABLE              = I_FILE_TABLE1&lt;/P&gt;&lt;P&gt;          RC                      = W_RC1&lt;/P&gt;&lt;P&gt;          USER_ACTION             = w_usr_act1&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        FILE_ENCODING           =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;         FILE_OPEN_DIALOG_FAILED = 1&lt;/P&gt;&lt;P&gt;         CNTL_ERROR              = 2&lt;/P&gt;&lt;P&gt;         ERROR_NO_GUI            = 3&lt;/P&gt;&lt;P&gt;         NOT_SUPPORTED_BY_GUI    = 4&lt;/P&gt;&lt;P&gt;         others                  = 5      .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0&lt;/P&gt;&lt;P&gt;      AND w_usr_act &amp;lt;&amp;gt;&lt;/P&gt;&lt;P&gt;      CL_GUI_FRONTEND_SERVICES=&amp;gt;ACTION_CANCEL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     LOOP AT I_FILE_TABLE1  INTO W_FILETABLE1.&lt;/P&gt;&lt;P&gt;        W_P_FILE1 = W_FILETABLE1.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      FILENAME                      = W_P_FILE1&lt;/P&gt;&lt;P&gt;     FILETYPE                      = 'ASC'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      DATA_TAB                      = umsatz&lt;/P&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     FILE_OPEN_ERROR               = 1&lt;/P&gt;&lt;P&gt;     FILE_READ_ERROR               = 2&lt;/P&gt;&lt;P&gt;     NO_BATCH                      = 3&lt;/P&gt;&lt;P&gt;     GUI_REFUSE_FILETRANSFER       = 4&lt;/P&gt;&lt;P&gt;     INVALID_TYPE                  = 5&lt;/P&gt;&lt;P&gt;     NO_AUTHORITY                  = 6&lt;/P&gt;&lt;P&gt;     UNKNOWN_ERROR                 = 7&lt;/P&gt;&lt;P&gt;     BAD_DATA_FORMAT               = 8&lt;/P&gt;&lt;P&gt;     HEADER_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;     SEPARATOR_NOT_ALLOWED         = 10&lt;/P&gt;&lt;P&gt;     HEADER_TOO_LONG               = 11&lt;/P&gt;&lt;P&gt;     UNKNOWN_DP_ERROR              = 12&lt;/P&gt;&lt;P&gt;     ACCESS_DENIED                 = 13&lt;/P&gt;&lt;P&gt;     DP_OUT_OF_MEMORY              = 14&lt;/P&gt;&lt;P&gt;     DISK_FULL                     = 15&lt;/P&gt;&lt;P&gt;     DP_TIMEOUT                    = 16&lt;/P&gt;&lt;P&gt;     OTHERS                        = 17&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------------------------------------" /&gt;&lt;P&gt;  CALL FUNCTION 'DOWNLOAD'&lt;/P&gt;&lt;P&gt;           EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           BIN_FILESIZE            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CODEPAGE                = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                FILENAME                = PT_FILE&lt;/P&gt;&lt;P&gt;                FILETYPE                = 'DAT'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           ITEM                    = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           MODE                    = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_N_FORMAT            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_N_SIZE              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_T_FORMAT            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           WK1_T_SIZE              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILEMASK_MASK           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILEMASK_TEXT           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE_NO_CHANGE      = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILEMASK_ALL            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILETYPE_NO_SHOW        = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           SILENT                  = 'S'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           COL_SELECT              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           COL_SELECTMASK          = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           NO_AUTH_CHECK           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           ACT_FILENAME            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           ACT_FILETYPE            =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FILESIZE                =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           CANCEL                  =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           TABLES&lt;/P&gt;&lt;P&gt;                DATA_TAB                = BELEGE&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           FIELDNAMES              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           EXCEPTIONS&lt;/P&gt;&lt;P&gt;                INVALID_FILESIZE        = 1&lt;/P&gt;&lt;P&gt;                INVALID_TABLE_WIDTH     = 2&lt;/P&gt;&lt;P&gt;                INVALID_TYPE            = 3&lt;/P&gt;&lt;P&gt;                NO_BATCH                = 4&lt;/P&gt;&lt;P&gt;                UNKNOWN_ERROR           = 5&lt;/P&gt;&lt;P&gt;                GUI_REFUSE_FILETRANSFER = 6&lt;/P&gt;&lt;P&gt;                OTHERS                  = 7.&lt;/P&gt;&lt;P&gt;replacement:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: l_filename    TYPE string,&lt;/P&gt;&lt;P&gt;       l_filen       TYPE string,&lt;/P&gt;&lt;P&gt;       l_path        TYPE string,&lt;/P&gt;&lt;P&gt;       l_fullpath    TYPE string,&lt;/P&gt;&lt;P&gt;       l_usr_act     TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;l_filename = PT_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL METHOD CL_GUI_FRONTEND_SERVICES=&amp;gt;FILE_SAVE_DIALOG&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    DEFAULT_FILE_NAME    = l_filename&lt;/P&gt;&lt;P&gt;  CHANGING&lt;/P&gt;&lt;P&gt;    FILENAME             = l_filen&lt;/P&gt;&lt;P&gt;    PATH                 = l_path&lt;/P&gt;&lt;P&gt;    FULLPATH             = l_fullpath&lt;/P&gt;&lt;P&gt;    USER_ACTION          = l_usr_act&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    CNTL_ERROR           = 1&lt;/P&gt;&lt;P&gt;    ERROR_NO_GUI         = 2&lt;/P&gt;&lt;P&gt;    NOT_SUPPORTED_BY_GUI = 3&lt;/P&gt;&lt;P&gt;    others               = 4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0&lt;/P&gt;&lt;P&gt;      AND l_usr_act &amp;lt;&amp;gt;&lt;/P&gt;&lt;P&gt;      CL_GUI_FRONTEND_SERVICES=&amp;gt;ACTION_CANCEL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  BIN_FILESIZE                    =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    FILENAME                        = l_fullpath&lt;/P&gt;&lt;P&gt;   FILETYPE                        = 'DAT'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                        = BELEGE&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FIELDNAMES                      =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_WRITE_ERROR                = 1&lt;/P&gt;&lt;P&gt;   NO_BATCH                        = 2&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER         = 3&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                    = 4&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                    = 5&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                   = 6&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED              = 7&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED           = 8&lt;/P&gt;&lt;P&gt;   FILESIZE_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG                 = 10&lt;/P&gt;&lt;P&gt;   DP_ERROR_CREATE                 = 11&lt;/P&gt;&lt;P&gt;   DP_ERROR_SEND                   = 12&lt;/P&gt;&lt;P&gt;   DP_ERROR_WRITE                  = 13&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR                = 14&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                   = 15&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY                = 16&lt;/P&gt;&lt;P&gt;   DISK_FULL                       = 17&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                      = 18&lt;/P&gt;&lt;P&gt;   FILE_NOT_FOUND                  = 19&lt;/P&gt;&lt;P&gt;   DATAPROVIDER_EXCEPTION          = 20&lt;/P&gt;&lt;P&gt;   CONTROL_FLUSH_ERROR             = 21&lt;/P&gt;&lt;P&gt;   OTHERS                          = 22&lt;/P&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 Jan 2008 08:38:36 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-obsolete-function-modules/m-p/3119831#M740846</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-04T08:38:36Z</dc:date>
    </item>
  </channel>
</rss>

