代码之家  ›  专栏  ›  技术社区  ›  Esti

如何从MIME存储库向SAP Adobe表单添加图像?

  •  1
  • Esti  · 技术社区  · 15 年前

    我已将图像加载到SAP MIME存储库:

    :watermark100.bmp

    图标(位于“属性”窗口的“技术信息”下)。我没有设置这个,我假设SAP会根据上传时的文件类型默认设置这个选项。

    现在,我尝试以SAP adobe窗体显示此图像:

    在窗体界面中,我创建了一个全局常量:

    GV_IMG_WATERMARK TYPE STRING VALUE 'watermark100.bmp'
    

    在上下文中,我创建了一个图形节点:

    Name:         WATERMARK
    Graphic Type: GRAPHIC CONTENT
    Field:        GV_IMG_WATERMARK 
    MIME Type:    'icon'  //I have also tried '.bmp'
    

    不幸的是,当我测试表单时,没有显示图像。知道我做错了什么吗?

    其他评论:

    • 似乎有一种比较复杂的方法,我可以将图像转换为XSTRING并将其传递给表单,接下来我可能会尝试,但对于我要实现的目标来说,它似乎过于复杂。
    1 回复  |  直到 5 年前
        1
  •  5
  •   Esti    15 年前

    好吧,我用以下方法解决了这个问题:

    将数据声明更改如下:URL只是遵循MIME存储库中的树结构

    data:      gv_bmp_watermark type xstring.
    constants: gc_url_watermark type string 
        value '/BC/PUBLIC/MyImages/watermark100.bmp'.
    

    在“代码初始化”下的接口中,我添加了以下内容:(请注意,您必须使用顶部的接口导入和导出相关变量-如果不导入和导出,您将得到一个相当不言自明的编译错误)

    //* Read Images
    data: lr_api type ref to if_mr_api.
    
    lr_api = cl_mime_repository_api=>get_api( ).
    
    lr_api->get( exporting i_url = gc_url_watermark
                 importing e_content = gv_bmp_watermark ).
    

    上下文节点只发生了轻微的更改:

    Name:         WATERMARK         
    Graphic Type: GRAPHIC CONTENT         
    Field:        GV_BMP_WATERMARK          
    MIME Type:    'image/bmp'