Oracle APEX 文本页面项作为 SQL 查询中的不可编辑超链接字段

Posted

技术标签:

【中文标题】Oracle APEX 文本页面项作为 SQL 查询中的不可编辑超链接字段【英文标题】:Oracle APEX Text Page Item as non-editable hyperlink field from a SQL Query 【发布时间】:2015-10-30 12:49:33 【问题描述】:

我和我的同事花了太多时间尝试做我们认为应该相当简单但没有成功的事情。我们有一个表格,其中包含一列网址。在我们的表单页面上,我们在网格中创建项目,其中某些项目需要是不可编辑的可操作超链接字段,以便用户单击并在另一个页面中打开链接(即目标 = 空白)。我们尝试了此博客中的这些解决方案,但均未成功:

https://community.oracle.com/thread/618722?tstart=0

以下是我们的具体要求:

    我们有一个文本项::P2_link1,它通过“Source>Source Used = Only when current value of item is null and Source type = SQL Query 例如:

    从 table1 中选择 ref_link,其中 step = 1.1;

    在我们的表单页面上,该项目需要一个不可编辑的项目(即他们无法编辑通过 SQL 查询拉入的网址)。但该链接需要是可操作的,以便新选项卡或窗口打开到 SQL 查询中引用的页面。

我们非常感谢您提供的任何帮助,

谢谢,

【问题讨论】:

您使用什么类型的报表?交互式?经典?或表格。我假设它的表格,因为用户可以编辑列。我建议您将报表类型更改为交互式或经典报表。 【参考方案1】:

使用仅显示项目而不是文本项目。

您需要为项目源中的链接构建 html,例如:

select '<a href="' || ref_link || '">' || ref_link || '</a>' 
from table1 
where step = 1.1;

默认情况下,这将显示如下转义:

<a href="http://bbc.co.uk">http://bbc.co.uk</a>

编辑项目,进入安全性并将转义特殊字符设置为否。

现在您应该会看到一个有效的链接。

【讨论】:

您好,感谢您的回复。我已按照您的指示转到“T”,bbc.co.uk">http://bbc.co.uk</a> 仍然显示。好像 APEX 忽略了特殊字符 = 否。有什么想法吗?谢谢 我不知道 - 也许您可以在 apex.oracle.com 上设置您的示例,我可以看看? 嗨,我会在这周晚些时候尝试这样做。不过有趣的是,我在上周末离开了,然后回来了,现在我收到了这个错误。错误。我没有改变任何东西。 "计算页面项目 P2_1_1_LINK 的项目源值。ORA-06502: PL/SQL: 数字或值错误: 字符串缓冲区太小" 我这周要去度假,但会留意我的归来 - 或者其他人可能会提供帮助。 嗨,谢谢。这是一个测试应用程序,供任何想要尝试的人使用。我在这里使用的是新的 Oracle,而我的版本是 4.2,所以我希望在主题方面不会有很大的不同。 apex.oracle.com/pls/apex/f?p=43249:1

以上是关于Oracle APEX 文本页面项作为 SQL 查询中的不可编辑超链接字段的主要内容,如果未能解决你的问题,请参考以下文章

在Oracle Apex中显示按钮时,服务器端条件取决于页面项的值?

Oracle Apex 中的计算未返回预期结果

具有自动完成 oracle apex 的文本字段

从 apex 页面进程调用 pl/sql 函数

oracle apex 只刷新一个区域而不是整个页面

模态对话框上的 Oracle Apex 设置页面项