在 Oracle Apex 中禁用 IR 中的链接

Posted

技术标签:

【中文标题】在 Oracle Apex 中禁用 IR 中的链接【英文标题】:Disable a Link in IR in Oracle Apex 【发布时间】:2021-03-23 10:24:18 【问题描述】:

我有一个问题。我的交互式报表表中有三列。第一列是 MID,它是隐藏的。其他列是 MNAME 和收入。 MID 是 MNAME 的 ID。当 ID 不为空时,我当然是在填写它的 MNAME。当 ID 为 null 时,它在我的查询中被命名为“Others”。

我已经为 MNAME 创建了指向应用程序中其他页面的链接。当 MID 为空时,我想禁用链接。或者换句话说,当 MNAME 为“其他”时,必须禁用链接。我怎样才能做到这一点 ? 非常感谢您的帮助和评论。

【问题讨论】:

【参考方案1】:

在 Apex 本身中,您不能,因为“链接”属性没有“条件”。因此,请在交互式报表的查询中自己创建一个链接。

例如:

select mid, 
       mname,
       revenue,
       --
       case when mid is null then null
            else '<a href="https://www.google.com">Click here</a>'
       end as link
from your_table

link 列的属性面板中,将转义特殊字符 设置为“否”。运行页面;只有MID 列的值不是NULL 的行才能看到链接。


如果您要导航到应用程序中的另一个页面,

then '<a href="f?p=&APP_ID.:14:&SESSION.">Click here</a>'

如果你想将值传递到另一个页面:

then '<a href="f?p=&APP_ID.:14:&SESSION.::NO::P14_MNAME,P14_MID:P1_MNAME,P1_MID">Click here</a>'
                                              --------- ------- ======== ======
                                              to P14 page       pass items from P1 page

【讨论】:

非常感谢您的回答。我想将此列与应用程序中的项目 P14_MID 链接到其他页面(第 14 页)。我应该如何在 "else ' 应用程序 ID=111,页面=14,项目:P14_MID 我贴了一个例子;看看答案的底部。用您的值替换服务器和端口。 非常感谢。我做到了。实际上,我也想看到“其他”,但没有链接。这里的单元格是空的'-'。我该怎么做? 使用“其他”而不是 NULL,例如case when mid is null then 'Others'

以上是关于在 Oracle Apex 中禁用 IR 中的链接的主要内容,如果未能解决你的问题,请参考以下文章

Oracle ApEx Radiogroup 禁用

如何获取要显示在 Oracle APEX 交互式报告中的图像或链接?

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

在交互式报表中创建列链接 -Oracle Apex

Oracle Apex 根据 LOV 选择的值动态启用/禁用文本字段

无法使用 ORACLE APEX 删除交互式报表中的行