1. 内表拼成xml文件,以excel形式作为邮件附件发送
2. 速度比ole快很多倍。测试用程序,从sflight数据库表里去了397行数据,拼成xml文件,并发送邮件。整个程序从开始执行到收到邮件,只用了11s。对比ole,即使向excel里写入10行的内容,也要几分钟。
3. 原理:xls里创建sheet,sheet里创建table,设置table列,为table里一行一行添加行,为行一个一个添加cell,为cell添加data对象,data有属性value,即为单元格里的值。
4. 使用的主要接口有:
a. IF_IXML_ELEMENT
b. IF_IXML
c. IF_IXML_STREAM_FACTORY
d. IF_IXML_OSTREAM
e. IF_IXML_RENDERER
f. IF_IXML_DOCUMENT
5. xml节点介绍
6. 首先创建ixml factory和DOM对象模型
7. 创建根节点root. 此处root是worksheet。为sheet添加各种属性定义。在sheet里添加table。
8. 用的是sflight表,有14个field。
9. 为excel创建14个列
10. 为每个列创建表头
11. 取数后向excel里填数,一行一行。每行里一个cell一个cell填。
12. 保存xml文件
13. 文件以二进制形式发送。首先要把xml文件转换为二进制文件。
14. 发送文件
15. 发送结果(部分截屏)