提到OLE&DOI,我们不得不先说说两者这间的关系。
- FTP
- T-code SMW0
- T-code OAOR
FTP顾名思义,就是把文件传到FTP上,然后在运行的时候,直接输入文件服务器的路径,把模版在本地打开填制。
T-code SMW0。实际上这是用于Web的一种文件存储,不过我们也可以借用来存储模版。当然建立之前要维护相应的MIME types(先把文件的类型要注册),方可上传此类型的文件。
DATA:LS_WWWDATATAB TYPE WWWDATATAB,
LS_PATH TYPE RLGRAP-FILENAME.
CONCATENATE 'c:/SapReport/' 'KEVIN' '.xls' INTO LS_PATH.
LS_WWWDATATAB-RELID = 'MI'.
LS_WWWDATATAB-OBJID = 'ZKEVIN'.
CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'
EXPORTING
KEY = LS_WWWDATATAB
DESTINATION = LS_PATH.
CALL METHOD OF G_WBOOKS 'Open'
EXPORTING
#1 = LS_PATH.
T-code OAOR 是将模版传输到BDS(Business Document Service),然后程序运行时在本地打开进行填制。
DOI和OLE的东西在老白的博客中已经发了很多,大家有兴趣可以看看。