Oracle Apex 5交互式报告blob图像显示

时间:2016-09-13 13:24:56

标签: image oracle blob oracle-apex oracle-apex-5

我已经在 Oracle APEX 4 中提供了顶级应用程序。哪个工作正常。

现在我正在尝试迁移到 APEX 5 的相同顶点应用程序。

在迁移 Apex 4 中正常工作的某些功能后,无法在apex 5中工作

  1. 在顶点5的交互式报告中将数据库表中的Blob图像显示为图标。
  2. 我使用以下查询在交互式报告中显示图像

    sudo apt-get install -y python-dev python-tk libpython-dev libevent-dev libsuperlu-dev libblas-dev liblapack-dev libatlas3-base libatlas-dev
    sudo pip install matplotlib setuptools SymPy pysparse pyvtk
    

    在我的应用程序内的列表视图下我得到一个由 apex_util.get_blob_file_src 生成的URL,当我尝试访问以下链接时,我在浏览器中收到错误

    http://server-info/apex/apex_util.get_blob_file?a=107&s=3797597566580&p=16&d=299222323103903080&i=299221224544903071&p_pk1=621333&p_pk2=&p_ck=P7Pek2qEnfoo5FBbvmqn4SQ-ymA&p_content_disposition=inline

    来自浏览器的错误:

    select
    apex_util.get_blob_file_src('P16_IMAGE', image_id) as icon_image from image_table
    

    请告知我是否需要对Apex 5 Interactive报告进行任何特定设置才能显示图标图像。

3 个答案:

答案 0 :(得分:0)

两件事,在区域定义内,将函数调用嵌入到图像标记中,以在交互式报告中将其显示为图像。

SELECT '<img src="'||APEX_UTIL.GET_BLOB_FILE_SRC('P16_IMAGE',image_id,null,'inline')
||'" height="100" width="140"/>' as IMAGE_DISPLAY FROM IMAGE_TABLE

这样您也可以控制图像的宽度和大小。

其次,在报告属性上,确保将显示类型设为“标准报告列”

答案 1 :(得分:0)

使用RESTful服务更快,您可以在IR列HTML表达式中引用img URL。例如。, 检查一下: http://krisrice.blogspot.ae/2013/07/using-restful-to-deliver-images-for-apex.html

即使你想坚持使用GET_BLOB,也建议从SQL查询中删除所有HTML标记到列HTML表达式。

答案 2 :(得分:0)

在交互式报告中显示 Blob 图像的最简单方法。

设置 Blob“PIC_ID”的静态 ID 并在 Inline CSS 中复制以下内容

td[headers="PIC_ID"] img { display: block;宽度:40px;边框:1px 实心 #999;填充:4px;背景:#f6f6f6; }