• SWM0-Excel模板上载以及模板下载程序


    SAP系统中用Excel上载数据时,为防止用户用错模板,可以将excel模板保存在SMW0中,每次上载前通过程序再从SMW0下载下来。

    1, SMW0 模板上载

    Tcode SMW0选择‘Binary data...'选项

    2017-02-28_13-30-13

    输入package,运行

    2017-02-28_13-31-13

    进入下一屏后,点击创建按钮添加excel文档,

    2017-02-28_13-31-45

    如果出现下面的错误,提示’No MIME type assigned to object',则需要为excel格式的文件创建一个类型,

    2017-02-28_13-32-29

    MIME type创建通过菜单

    2017-02-28_18-18-42

    点击新建按钮,输入type和扩展名(extension),保存即可。如下图,type是excel,扩展名是*.xls

    2017-02-28_18-19-39

    2, 模板下载代码

    下载主要通过函数DOWNLOAD_WEB_OBJECT()实现。

    代码如下:

    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中内容:

    2017-02-28_18-47-36

    如果要通过程序上载模板文件到SMW0中,可以用函数UPLOAD_WEB_OBJECT()实现。

    以上。

  • 相关阅读:
    资料-Java基础:多线程--创建启动线程的多种方式
    资料-Java基础:基础总结-运算符
    资料-Java基础:父子类加载过程
    总结提纲-逐渐补充
    资料-Java基础:类加载处理过程
    资料-Java基础:双亲委派模型
    资料-Java基础:类加载方式及差异
    转载:java 泛型详解-绝对是对泛型方法讲解最详细的,没有之一
    无法启动IIS Express web服务,端口正在使用!
    关于在本地新建数据库作业,无法成功的问题【本地SQLSERVER链接的服务器数据库】
  • 原文地址:https://www.cnblogs.com/datie/p/11435741.html
Copyright © 2020-2023  润新知