SAP系统中用Excel上载数据时,为防止用户用错模板,可以将excel模板保存在SMW0中,每次上载前通过程序再从SMW0下载下来。
1, SMW0 模板上载
Tcode SMW0选择‘Binary data...'选项
输入package,运行
进入下一屏后,点击创建按钮添加excel文档,
如果出现下面的错误,提示’No MIME type assigned to object',则需要为excel格式的文件创建一个类型,
MIME type创建通过菜单
点击新建按钮,输入type和扩展名(extension),保存即可。如下图,type是excel,扩展名是*.xls
2, 模板下载代码
下载主要通过函数DOWNLOAD_WEB_OBJECT()实现。
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
REPORT ZTEST_SMW0_DOWNLOAD. DATA: lwa_wwwdata_tab LIKE wwwdatatab, l_filename TYPE rlgrap-filename. l_filename = 'C:/temp/xx.xlsx'. SELECT SINGLE * FROM wwwdata INNER JOIN tadir ON wwwdata~objid = tadir~obj_name INTO CORRESPONDING FIELDS OF lwa_wwwdata_tab WHERE wwwdata~srtf2 = 0 AND wwwdata~relid = 'MI' "标识二进制的对象 AND tadir~pgmid = 'R3TR' AND tadir~object = 'W3MI' AND tadir~obj_name = 'ZGA_NONSTPRICE'."模板名字 IF sy-subrc = 0. CALL FUNCTION 'DOWNLOAD_WEB_OBJECT' EXPORTING key = lwa_wwwdata_tab destination = l_filename. ENDIF. |
SWM0中内容:
如果要通过程序上载模板文件到SMW0中,可以用函数UPLOAD_WEB_OBJECT()实现。
以上。
发表评论