zoukankan      html  css  js  c++  java
  • ABAP中Excel本地导入功能

    一、效果

    二、代码读取Excel数据

    *定义文本标签
    SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text01.
    PARAMETERS: p_file TYPE rlgrap-filename .
    SELECTION-SCREEN END OF BLOCK blk1.
    
    *实现打开文件夹,加载Excel
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
      CALL FUNCTION 'WS_FILENAME_GET'
        EXPORTING
          mask             = ',All Files,*.*,*.xls,*.xlsx. '
          mode             = 'O'
        IMPORTING
          filename         = p_file
        EXCEPTIONS
          inv_winsys       = 1
          no_batch         = 2
          selection_cancel = 3
          selection_error  = 4
          OTHERS           = 5.
    *读取Excel数据
    START-OF-SELECTION.
      PERFORM frm_get_data.
    END-OF-SELECTION.
    
    FORM FRM_GET_DATA.
      DATA: it_excel TYPE STANDARD TABLE OF alsmex_tabline WITH HEADER LINE.
      DATA l_index LIKE sy-tabix.
      FIELD-SYMBOLS: <fs>.
      CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
        EXPORTING
          filename                = p_file
          i_begin_col             = 1
          i_begin_row             = 2
          i_end_col               = 3
          i_end_row               = 50000
        TABLES
          intern                  = it_excel
        EXCEPTIONS
          inconsistent_parameters = 1
          upload_ole              = 2
          OTHERS                  = 3.
    
      IF it_excel[] IS INITIAL.
        MESSAGE '文件中没有数据' TYPE 'E'.
      ENDIF.
        SORT it_excel BY row.
      LOOP AT it_excel.
        MOVE it_excel-col TO l_index.
        ASSIGN COMPONENT l_index OF STRUCTURE  gt_upload TO <fs>.
        MOVE it_excel-value TO <fs>.
        AT END OF row.
          APPEND gt_upload.
          CLEAR gt_upload.
          CLEAR it_excel.
        ENDAT.
      ENDLOOP.
    ENDFORM .
  • 相关阅读:
    设计模式学习笔记之设计原则
    设计模式学习笔记之生成器模式
    设计模式学习笔记之适配器模式、外观模式
    java中的日期类型之间转换
    JS刷新当前页面的几种方法总结
    Java_枚举
    动态规划详解_2
    Java算法-动态规划详解
    Java经典算法题_2
    Java算法
  • 原文地址:https://www.cnblogs.com/zs-chenkang/p/13180106.html
Copyright © 2011-2022 走看看