如何根据列中的值禁用oracle apex中的链接

时间:2019-03-30 23:48:31

标签: sql oracle oracle-apex

我有一个包含许多列的交互式报告。这些列之一是员工审查。在审查中,值可以是好,坏或不适用。该列具有一个表格的链接,该表格使雇主可以将审核从不适用更改为好坏。另一列是员工。此员工列具有指向员工资料的链接。因此,当雇主登录oracle apex时,他们可以转到此交互式报告。现在,我已经设置好了,以便雇主可以单击“雇员姓名”列并进入雇员资料并查看其详细信息。我要这样做,以便一旦将评论设置为好或坏,该链接就会停​​止工作(以便雇主只能在查看他们的个人资料时才查看它们,而在其他任何时间都不能查看)。

我不确定这是一个过程还是验证。我不认为它是动态动作,因为它不会让我根据交互式报表中的列进行动态动作。如果可能的话,有人可以概述我需要在过程中输入的代码以实现此目标。

如果描述不清楚,请告诉我,我将尝试对其进行更改。

2 个答案:

答案 0 :(得分:1)

我一直打算写一篇博文,详细介绍一个简单的示例,但是它属于您的SQL。

select case when col = 'reason to display' then
  apex_page.get_url(...)
end as my_col

并将列定义为非escape special characters

或签出slide 58

答案 1 :(得分:0)

如果我正确理解它,则想在emp_Review列中创建一个链接。 如果Emp_review列的值为“不适用”,则显示链接并打开表单,否则应禁用链接。

您只能在Interactive Report SQL查询中实现此目的。 您可以编写以下代码,假设表单页数为2,并在第2页中创建了一个P2_EMP_Id隐藏项,以将emp_id从第1页传递到第2页:

Select EMP_ID, --Or whatever ID column you have 
CASE when Emp_review ='Not Applicable' then 
'<A HREF=F?P=&APP_ID.:2:&SESSION.::NO:RP,2:P2_EMP_ID:'||EMP_ID||'></A>'
ELSE Emp_review
END Emp_review, 
other_column1, --Select other necessary column
Other_column2 
from --your table name