zoukankan      html  css  js  c++  java
  • [SAP ABAP开发技术总结]文本文件、Excel文件上传下传

    20.22.1.      读取客户端TxtExcel文件到内表:TEXT_CONVERT_XLS_TO_SAP

    TEXT_CONVERT_XLS_TO_SAP函数可以将本地的文本文件(列与列之间默认使用TAB键分开,但也可以指定)或真正的Excel文件上传到服务内表中,并且文件转换成内表中的数据是自动完成,不需要手动,这与ALSM_EXCEL_TO_INTERNAL_TABLE函数是不一样的

    PARAMETERS:p_file LIKE rlgrap-filename OBLIGATORY.
    DATA: il_raw TYPE truxs_t_text_data.
    DATA:l_obj TYPE REF TO cl_gui_frontend_services.
    DATA: it_file TYPE filetable WITH HEADER LINE.
    DATA: g_rc TYPE i.
    DATA: BEGIN OF i_data OCCURS 0,
           
    c(2),
            n
    (2) TYPE n,
           
    i TYPE i,
            d
    TYPE d,
         
    END OF i_data.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file. "弹出选择文件对话框
     
    CREATE OBJECT l_obj.
     
    CALL METHOD l_obj->file_open_dialog
       
    EXPORTING

          file_filter      
    = '*.xls;*.xlsx;*.txt'
          initial_directory
    = 'C:data'
       
    CHANGING
          file_table       
    = it_file[]
          rc               
    = g_rc.

     
    READ TABLE it_file INDEX 1.
      p_file
    = it_file-filename.
    START-OF-SELECTION.
     
    CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'"可以是Excel文件,也可以是Txt文件
       
    EXPORTING
    *     I_FIELD_SEPERATOR    = 分隔符,默认为Tab
    *     i_line_header        = 'X' "文本中的第一行是否是标题头,如果是则不会读取
          i_tab_raw_data      
    = il_raw "该参数实际上没有使用到,但为必输参数
          i_filename          
    = p_file
       
    TABLES

          i_tab_converted_data
    = i_data. "会自动的将ExcelTxt
    文件中的数据一行行读取到数据内表中

    20.22.2.      将数据内表导出为EXCEL文件:SAP_CONVERT_TO_XLS_FORMAT

    DATA: t100_lines TYPE STANDARD TABLE OF t001.
    SELECT * FROM t001 INTO TABLE t100_lines.
    CALL FUNCTION 'SAP_CONVERT_TO_XLS_FORMAT'
     
    EXPORTING
        i_filename    
    = 'c:1.xlsx'
     
    TABLES
        i_tab_sap_data
    = t100_lines.

    如果EXCEL文件已经存在,那么数据会被覆盖

    注:数据内表中的字段类型不能是数字类型,否则会出现意想不到的错,如有数字类型字段,转出前最好先转换为字符类型再输出

  • 相关阅读:
    puppeteer无头模式下反反爬配置集合
    真正可用的蓝奏云地址解析及下载脚本
    在无图形界面Linux里使用selenium进行采集及注意事项
    某图片站反爬加密字段x-api-key破解
    Pandorabox路由器申请Let's Encrypt证书,为内网web服务提供SSL支持
    PornHub在线视频接口逆向
    DuFile网盘逆向下载链接免等待破解思路
    探究Linux支持最长文件名是255字节还是255字符
    《Linux就该这么学》day4-6
    《Linux就该这么学》day3
  • 原文地址:https://www.cnblogs.com/jiangzhengjun/p/4265642.html
Copyright © 2011-2022 走看看