在此服务器上找不到apex_util.get_blob

时间:2018-01-27 10:21:08

标签: oracle oracle-apex oracle-apex-5.1

我正在尝试开发一个交互式报告,其中我使用blob列来下载blob文件(可能是jpeg或pdf)。我在blob列上创建了下载字段,但是当我点击它时,它会出现如下所述的错误 " 在此服务器上找不到请求的网址/apex/apex_util.get_blob "

注意:我使用的是oracle apex 5.1.2。

有人可以帮我解决这个错误。

2 个答案:

答案 0 :(得分:1)

假设BLOB列名为BLOB_COLUMN,并且它包含JPEG或PDF。它是用于创建交互式报告的SELECT语句中的一列。

默认情况下,BLOB_COLUMN的类型是"纯文本"。如果您刚刚将其更改为Download BLOB并填写了所需的BLOB属性,那么它就不会起作用。

相反,您应该在IR的SELECT中创建另一列:

select ...,
  dbms_lob.getlength(blob_column) download_blob
from ...

并将BLOB属性应用于它。我刚刚在apex.oracle.com上试过它,按预期工作。如果它仍然不适合您,请在同一网站上创建一个示例,提供凭据,以便我们某人可以查看。

答案 1 :(得分:0)

在BLOB属性中有一个主键列。 get_blob使用报表中的相同列值从给定表中获取blob。因此,如果在两个表(联合报表)中有两个ID列,则必须为另一个表创建一个视图,并在其中使用另一个列名作为ID。使用此视图和新的ID列名称作为PK。