• SAP EXCEL 导入,解决WPS无法导入问题



    FORM upload_file.
      DATA: l_file       TYPE string,
            rawtab(4096) TYPE c OCCURS 0,
            p_pfilename  TYPE rlgrap-filename,
            ws_ext(3)    TYPE c,
            ws_ext1(4)   TYPE c,
            length1      TYPE i,
            length2      TYPE i,
            length       TYPE i.
     
      DATA: lt_data TYPE alsmex_tabline OCCURS 0 WITH HEADER LINE.
      DATA: ls_data TYPE alsmex_tabline.
     
      CONDENSE p_pfile.
      length = strlen( p_pfile ).
      IF length < 3.
        MESSAGE '请选择正确的文件!' TYPE 'I'.
        LEAVE LIST-PROCESSING.
     
      ENDIF.
     
     
     
     
      length1 = length - 3.
      ws_ext = p_pfile+length1(3).
      TRANSLATE ws_ext TO UPPER CASE.
      length2 = length - 4.
      ws_ext1 = p_pfile+length2(4).
      TRANSLATE ws_ext1 TO UPPER CASE.
     
     
     
      IF ws_ext = 'XLS' OR ws_ext1 = 'XLSX'.
        p_pfilename = p_pfile.
     
        CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'    "读取excel文件中的内容
          EXPORTING
            filename    = p_pfilename
            i_begin_col = '1'
            i_begin_row = '1'
            i_end_col   = '50'
            i_end_row   = '5000'
          TABLES
            intern      = lt_data[].
        DELETE lt_data WHERE row EQ 1.
        FIELD-SYMBOLS: .
        LOOP AT lt_data INTO ls_data.
          ASSIGN COMPONENT ls_data-col OF STRUCTURE gs_template TO .
          "动态方法将值传到相应的内表
          = ls_data-value.
     
          AT END OF row.
            APPEND gs_template  TO gt_template.
            CLEAR: gs_template.
          ENDAT.
        ENDLOOP.
     
      ENDIF.
    *  ELSEIF WS_EXT = 'TXT'.
    *    P_PFILENAME = P_PFILE.
    *    CALL FUNCTION 'WS_UPLOAD'
    *      EXPORTING
    *        FILENAME                = P_PFILENAME
    *        FILETYPE                = 'DAT'
    *      TABLES
    *        DATA_TAB                = GT_TEMPLATE[]
    *      EXCEPTIONS
    *        CONVERSION_ERROR        = 1
    *        FILE_OPEN_ERROR         = 2
    *        FILE_READ_ERROR         = 3
    *        INVALID_TYPE            = 4
    *        NO_BATCH                = 5
    *        UNKNOWN_ERROR           = 6
    *        INVALID_TABLE_WIDTH     = 7
    *        GUI_REFUSE_FILETRANSFER = 8
    *        CUSTOMER_ERROR          = 9.
    *  ELSE.
    *
    *    MESSAGE E000(Z99) WITH
    *    '文件必需是  XLS OR TXT!' '' '' ''.
    *  ENDIF.
     
     
      IF gt_template[] IS INITIAL.
        MESSAGE e000(z99) WITH    '文件是空的!' '' '' ''.
      ENDIF.
      PERFORM frm_check_data."数据检查
      "MOVE-CORRESPONDING GT_HEADLIST1 TO GT_ALV.
    ENDFORM.

  • 相关阅读:
    Kotlin难点
    uniapp:tabBar点击后设置动画效果
    Rust的注释与文档
    LLEETCODE力扣详解:4.寻找两个正序数组的中位数;5.最长回文子串
    不用445端口,替代Windows共享,局域网文件共享新方式
    【关于Spring MVC框架中的@RequestBody】
    Github操作—团队内协作(四)——Git
    伦敦银最新走势不利怎么办
    idea如何创建并运行第一个java程序
    uni-app顶部导航栏背景色如何设置,微信小程序返回键设置
  • 原文地址:https://blog.csdn.net/only_oy/article/details/133888688