sap:向服务器写(更新)文件

来源:互联网 发布:数据库表的备注 编辑:程序博客网 时间:2024/06/10 05:39

T-CODE: CG3Z  upload
T-CODE: AL11   download

 

 

REPORT Z_FILE_UPLOAD .

PARAMETER: PA_FILEU  TYPE ESEFTAPPL.PARAMETER: PA_FILE   TYPE ESEFTFRONT.TYPES: BEGIN OF GSTRT_FILEU,         LINE(2000) TYPE C,       END OF GSTRT_FILEU.DATA: GSTR_FILEU TYPE GSTRT_FILEU,      GITAB_FILEU LIKE TABLE OF GSTR_FILEU.START-OF-SELECTION.  PERFORM FM_FILEREAD.  PERFORM FM_UPDATA.*&---------------------------------------------------------------------**&      Form  FM_FILEREAD*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM FM_FILEREAD.  DATA: LC_FILENAME TYPE STRING.  LC_FILENAME = PA_FILE.  CALL FUNCTION 'GUI_UPLOAD'    EXPORTING      FILENAME                      = LC_FILENAME*     FILETYPE                      = 'ASC'*     HAS_FIELD_SEPARATOR           = ' '*     HEADER_LENGTH                 = 0*     READ_BY_LINE                  = 'X'*     DAT_MODE                      = ' '*   IMPORTING*     FILELENGTH                    =*     HEADER                        =    TABLES      DATA_TAB                      = GITAB_FILEU   EXCEPTIONS     FILE_OPEN_ERROR               = 1     FILE_READ_ERROR               = 2     NO_BATCH                      = 3     GUI_REFUSE_FILETRANSFER       = 4     INVALID_TYPE                  = 5     NO_AUTHORITY                  = 6     UNKNOWN_ERROR                 = 7     BAD_DATA_FORMAT               = 8     HEADER_NOT_ALLOWED            = 9     SEPARATOR_NOT_ALLOWED         = 10     HEADER_TOO_LONG               = 11     UNKNOWN_DP_ERROR              = 12     ACCESS_DENIED                 = 13     DP_OUT_OF_MEMORY              = 14     DISK_FULL                     = 15     DP_TIMEOUT                    = 16     OTHERS                        = 17            .  IF SY-SUBRC <> 0.     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.  ENDIF.ENDFORM.                    " FM_FILEREAD*&---------------------------------------------------------------------**&      Form  FM_UPDATA*&---------------------------------------------------------------------**       text*----------------------------------------------------------------------**  -->  p1        text*  <--  p2        text*----------------------------------------------------------------------*FORM FM_UPDATA.  OPEN DATASET PA_FILEU  FOR OUTPUT IN TEXT MODE encoding DEFAULT.  IF SY-SUBRC = 0.    LOOP AT GITAB_FILEU INTO GSTR_FILEU.      TRANSFER GSTR_FILEU-LINE TO PA_FILEU.    ENDLOOP.    CLOSE DATASET PA_FILEU.*  ELSE.*    TRANSFER '' TO PA_FILEU.  ENDIF.  CLOSE DATASET PA_FILEU.ENDFORM.                    " FM_UPDATA