• 使用XML的方式导出EXCEL


    事务码STRANS。

    1 、创建EXCEL文档模板,另存为 XML文档格式

    打开文档将代码复制进STRANS的<tt:template> <tt:template>中间

    部分定义

     2
    在ECC中撸代码

    REPORT ZWP_TEST.
    
    TYPES: BEGIN OF TY_DATA,
             FIELD1 TYPE STRING,
             FIELD2 TYPE STRING ,
             FIELD3 TYPE STRING ,
             FIELD4 TYPE STRING ,
             FIELD5 TYPE STRING ,
    
           END   OF TY_DATA.
    
    DATA: ITAB   TYPE STANDARD TABLE OF TY_DATA,
          LA_TAB LIKE LINE OF ITAB,
          XMLSTR TYPE STRING.
    
    DATA: XML_TABLE TYPE STANDARD TABLE OF STRING.
    
    
    DATA: WINDOW_TITLE      TYPE STRING,
          FULLPATH          TYPE STRING,
          PATH              TYPE STRING,
          USER_ACTION       TYPE I,
          DEFAULT_EXTENSION TYPE STRING,
          DEFAULT_FILE_NAME TYPE STRING,
          FILE_FILTER       TYPE  STRING,
          FILENAME          TYPE STRING,
          INITIALPATH       TYPE STRING.
    
    
    START-OF-SELECTION.
    
      LA_TAB-FIELD1 = '中单'.
      LA_TAB-FIELD2 = ''.
      LA_TAB-FIELD3 = '不是'.
      LA_TAB-FIELD4 = ''.
      LA_TAB-FIELD5 = ''.
      APPEND LA_TAB TO ITAB.
    
      LA_TAB-FIELD1 = '打野'.
      LA_TAB-FIELD2 = '制霸'.
      LA_TAB-FIELD3 = '牛逼'.
      LA_TAB-FIELD4 = '卧槽'.
      LA_TAB-FIELD5 = '辅助大哥是大神'.
      APPEND LA_TAB TO ITAB.
    
      LA_TAB-FIELD1 = '打野'.
      LA_TAB-FIELD2 = '制霸'.
      LA_TAB-FIELD3 = '牛逼'.
      LA_TAB-FIELD4 = '卧槽'.
      LA_TAB-FIELD5 = '辅助大哥是大神'.
      APPEND LA_TAB TO ITAB.
    
    
    
      CALL  TRANSFORMATION ZTEST_STRANS
        SOURCE table = ITAB
        RESULT XML XMLSTR.
    
      REPLACE FIRST OCCURRENCE OF 'encoding="utf-16"' IN XMLSTR WITH 'encoding="gbk"'."显示中文
      APPEND XMLSTR TO XML_TABLE.
    
    
      MOVE '.XLS' TO DEFAULT_EXTENSION.
      MOVE 'XLS files (.XLS)|.XLS' TO FILE_FILTER.
    
    
      CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOG
        EXPORTING
          DEFAULT_EXTENSION = DEFAULT_EXTENSION
          DEFAULT_FILE_NAME = DEFAULT_FILE_NAME
          FILE_FILTER       = FILE_FILTER
          INITIAL_DIRECTORY = INITIALPATH
        CHANGING
          FILENAME          = FILENAME
          PATH              = PATH
          FULLPATH          = FULLPATH
          USER_ACTION       = USER_ACTION
        EXCEPTIONS
          CNTL_ERROR        = 1
          ERROR_NO_GUI      = 2
          OTHERS            = 3.
    
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    
      CALL FUNCTION 'GUI_DOWNLOAD'
        EXPORTING
          FILENAME                = FULLPATH
          FILETYPE                = 'ASC'
        TABLES
          DATA_TAB                = XML_TABLE
        EXCEPTIONS
          FILE_WRITE_ERROR        = 1
          NO_BATCH                = 2
          GUI_REFUSE_FILETRANSFER = 3
          INVALID_TYPE            = 4
          OTHERS                  = 5.
    
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.

    以上是全过程,其余的后面再补充。20180726 1051.

  • 相关阅读:
    Java 重写(Override)与重载(Overload)
    Java 继承
    Java 异常处理
    Java Scanner 类
    Java 流(Stream)、文件(File)和IO
    Java 方法
    Java 正则表达式
    Beta冲刺——代码规范、冲刺任务与计划
    Beta冲刺——凡事预则立
    Beta冲刺——问题总结博客(事后诸葛亮和组员交换事宜)
  • 原文地址:https://www.cnblogs.com/hdchen/p/9370407.html
Copyright © 2020-2023  润新知