ABAP_EXCEL_DOI_操作手册V1

更新时间:2023-06-18 08:59:58 阅读: 评论:0

[ABAP EXCEL DOI 操作]xingu
2012年01月04日
1
引言
SAP将EXCEL文件中的数据上传到R3(内表),对数据进行处理后,再下载到EXCEL文件中是经常用到的操作,文档主要介绍了对EXCEL文档的上传与下载功能实现的介绍俱乐部英文
1.1目的及范围
本文档主要介绍如何实现SAP系统上传与下载EXCEL文件介绍及相应实例,可适用于ABAP开发人员,分析人员使用
1.2参考资料
1.3定义
1.4文档结构
文档的各章节介绍的内容如下:
第2节介绍SAP上传EXCEL文件到R3
第3节介绍SAP将R3内容下载到EXCEL文件中
长春托福培训
第4节具体案例
2SAP上传EXCEL文件到R3
以下将讲解SAP如何上传EXCEL文件到内表:
2.1FM:TEXT_CONVERT_XLS_TO_SAP
该Function Module用于将EXCEL文件中的数据上传到内表中,要求内表的列数和要传得EXCEL数据的列数要相同,因为FM是按照列来匹配传值的,单元格文本不能超过256个字符
下面介绍该FM中的各个参数:
  CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
    EXPORTING
*     I_FIELD_SEPERATOR          =
     I_LINE_HEADER              = X 去掉首先标识
      i_tab_raw_data             =    WORK TABLE
      i_filename                 = l_file 文件路径
    tables
      i_tab_converted_data       = lt_data    接收数据的内表
*   EXCEPTIONS
*     CONVERSION_FAILED          = 1
*     OTHERS                     = 2
            .
  IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
参数介绍
I_LINE_HEADER 
去掉首先标识,当为‘X’时,去年首行
i_tab_raw_data
WORK TABLE
i_filenamegloryhole
EXCEL文件完整路径
i_tab_converted_data     
接收数据的内表,列数与EXCEL一致
2.2FM:ALSM_EXCEL_TO_INTERNAL_TABLE
call function 'ALSM_EXCEL_TO_INTERNAL_TABLE'
  exporting
    filename                = filenm
    i_begin_col             = 1
    i_begin_row             = 1
    i_end_col               = 9
    i_end_row               = 10
  tables
    intern                  = lt_data
  exceptions
    inconsistent_parameters = 1
    upload_ole              = 2
    others                  3.
选美记参数:
filename
文件路径
i_begin_col
开始列
i_begin_row 
开始行
i_end_col
结束列
i_end_row 
结束行
just a kissintern
内表
diskpart3SAP将R3内容下载到EXCEL文件
3.1FM:SAP_CONVERT_TO_XLS_FORMAT
Function Module如下:
  CALL FUNCTION 'SAP_CONVERT_TO_XLS_FORMAT'
    EXPORTING
*     I_FIELD_SEPERATOR          =
*     I_LINE_HEADER              = ''
      i_filename                 = 'd:/download.xlsx'
*     I_APPL_KEEP                = ' '
    tables
      i_tab_sap_data             = gt_data
*   CHANGING
*     I_TAB_CONVERTED_DATA       =
*   EXCEPTIONS
*     CONVERSION_FAILED          = 1
*     OTHERS                     = 2
            .
参数介绍
i_filename 
EXCEL文件完整路径
i_tab_sap_data 
内表
4DOI技术操作EXCEL
石碳酸4.1介绍
4.1.1OLE&DOI两者之间的关系
OLE(Object Linking and Embuding,对象的连接与嵌入技术)是SAP早期与微软Office集成的工具,而DOIDesktop Office Integration Interfaces,桌面办公系统集成接口)
它的替代技术。在实际项目中使用到OLE&DOI的场合多是EXCEL表格的读入或是填制。有些需要自动画表格及填数据,有的只是要求在原有的模版上填制数据。根据不同的场合可以选用不同的技术。
4.1.2OLE&DOI关于EXCEL的处理:
OLE实际上是类EXCEL中VBA的一种写法。有一种简单的方法,就是你可以在EXCEL中把要实现的动作录制成宏,然后根据宏的代码把它改成OLE。OLE同时也支持直接调用EXCEL宏程序(没有禁宏的前提下)。
DOI完全用类实现。特点是,你不用再去记那些繁琐的VBA语言了,DOI都给你包装成类的方法了。同时作为一个控件,已经集成在了SAP的GUI中了,你就可以在SAP的屏幕中写Office的东西了,不用再跳出一个窗口来了,减少一些误操作。当然DOI也是支持调用EXCEL宏程序的,前提是宏没有被禁。
4.1.3DOI优点:
推荐用DOI方式导数据到Excel,而不要用OLE,DOI是调用SAP自带的类来操作的,可控
性更高,并且可以把Excel窗口当作一个片屏幕控件放入屏幕的容器中。
4.2DOI实现EXCEL操作
4.2.1上传EXCEL模板
将模板上传至服务器的常用方式有三种
1. FTP服务器
把文件传到FTP上,然后在运行的时候,直接输入文件服务器的路径,把模版在本地打开填制。
2.T-code:SMW0(OLE技术实现时,上传EXCEL的方法)
用于Web的一种文件存储,也可以借用来存储模版。建立之前要维护相应的MIME types(先把文件的类型要注册),方可上传此类型的文件。
3.T-code:OAOR(DOI技术实现时,上传EXCEL的方法,下面实例中将着重说明步骤)
是将模版传输到BDS(Business Document Service),然后程序运行时在本地打开进行填制。
4.2.2DOI操作perhapsEXCEL的类
I_OI_SPREADSHEET中的方法
foreigner什么意思
Method
Description
SET_HIERARCHY_TABLE
Sets the Hierarchies Using a Table
LOAD_LIB                               
Load DLL
SET_HEADER                               
Sets a Header
CLEAR_HIERARCHY   
Delete Hierarchy
SET_HIERARCHY   
Sets Hierarchy
GET_CELL_FORMATS_TABLE   
Gets Information about Cells
GET_SELECTED_AREAS   
Returns a Collection of Selected Ranges
SETLOCALE   
Sets the Date and Decimal Format
SET_FIXED_COLS   
Sets the Number of Fixed Columns
SET_FIXED_ROWS   
Sets the Number of Fixed Rows
SET_INFO_TABLE   
Sets the Info Table
INSERT_RANGES   
Inrts Several Ranges
CELL_FORMAT   
Sets Individual Cell Attributes
CLEAR_ALL_RANGES   
Deletes the Contents and Formatting of the Ranges
DELETE_CONTENT_RANGES
Deletes Ranges
DELETE_RANGES   
Deletes Entire Ranges
ADD_SHEET   
Inrts a Worksheet
DELETE_SHEET
Deletes a Worksheet
SET_SHEET_NAME   
Sets the Name of a Worksheet

本文发布于:2023-06-18 08:59:58,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/90/149185.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:文件   上传   介绍
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图