step1 :
upload the template via T-code SMW0
Step 2:
download to local via below coding.
FORM f_download_template .
DATA: l_objdata type wwwdatatab,
l_rc type sy-subrc,
l_msgtx type BAPI_MSG. "错误处理
SELECT SINGLE relid
objid
FROM wwwdata "存对象模板的表
INTO CORRESPONDING FIELDS OF l_objdata
WHERE srtf2 = 0
AND relid = 'MI' "有三种类型 HT MI IT
AND objid = c_objname .
IF sy-subrc <> 0.
WRITE : / '模板文件:' ,c_objname , '不存在,请用TCODE:SMW0进行加载'.
EXIT.
ENDIF.
IF l_objdata-objid = space .
WRITE : / '模板文件:' , c_objname , '不存在,请用TCODE:SMW0进行加载'.
EXIT.
ENDIF.
CONCATENATE 'C:/' c_objname INTO g_filepath. "把路径与文件名称放到destination中
CONDENSE g_filepath NO-GAPS.
CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'
EXPORTING
key = l_objdata
destination = g_filepath
IMPORTING
rc = l_rc.
*调用日志工具
IF l_rc <> 0.
CONCATENATE '模板文件:' c_objname ' 下载失败'
into l_msgtx.
call function 'ZISZZG003_WRITE_LOG'
EXPORTING
dev_u = 'RCS01' " 开发项编号
spanr = '1' " 开发项顺序号
bukrs = sy-DYNNR " 当前的编号
proce = sy-tcode " 处理过程
msgtx = l_msgtx. " 日志信息文本
ENDIF.
ENDFORM.
step 3 :
Open the excel via below coding.
include ole2incl.
data:
g_filepath type rlgrap-filename,
g_EXCEL TYPE OLE2_OBJECT,
g_WORKBOOK TYPE OLE2_OBJECT,
g_worksheets TYPE OLE2_OBJECT,
g_CELL TYPE OLE2_OBJECT,
FORM f_open_file .
data: l_msgtx type BAPI_MSG.
create OBJECT g_excel 'Excel.application'.
*创建Excel文件时失败, 调用日志程序
l_msgtx = text-t02.
IF sy-subrc <> 0.
CONCATENATE '模板文件:' c_objname ' 下载失败'
into l_msgtx.
call function 'ZISZZG003_WRITE_LOG'
EXPORTING
dev_u = 'RCS01' " 开发项编号
spanr = '1' " 开发项顺序号
bukrs = sy-DYNNR " 当前的编号
proce = sy-tcode " 处理过程
msgtx = l_msgtx. " 日志信息文本
ENDIF.
SET PROPERTY OF g_excel 'visible' = 1. "EXCEL可见
CALL METHOD OF g_excel 'Workbooks' = g_workbook.
CALL METHOD OF g_workbook 'Open' = g_workbook
EXPORTING #1 = g_filepath. "打开模板
CALL METHOD OF g_excel 'Worksheets' = g_worksheets "模板SHEET,即SHEET1
EXPORTING #1 = 1.
ENDFORM.