带有使用Case语句到不同页面的超链接的Oracle APEX交互式报表列

时间:2015-12-11 15:55:29

标签: oracle oracle-apex

我正在尝试使用APEX交互式报告,并根据案例陈述的结果在应用程序中添加指向不同页面的超链接。我猜我在这里没有正确格式化href。任何帮助是极大的赞赏。在这个例子中,当'部分' ='确认项目'我希望用户能够单击该行的列,然后将它们带到第2页。

谢谢,

select
section,
status,
case when section = 'Confirm The Project' then 
('<a href="'|| sys.htf.escape_sc('f?
p='||:APP_ID||':2:'||:APP_SESSION||':::2,RIR:IR_Status:Active:') ||'">')     else null end as Link
from 
crd_trans_final_view

1 个答案:

答案 0 :(得分:1)

或者,您可以使用ORACLE APEX的列链接功能来执行此操作。只需删除案例陈述或将此代码粘贴到交互式报告来源

即可
select
section, 
status,
Link
from 
crd_trans_final_view
  

您忘了提及您正在使用的Oracle APEX版本:

适用于4.2

  
      
  1. 转到 REPORT ATTRIBUTE 部分
  2.   
  3. 然后在 LINK COLUMN 下选择链接到自定义目标
  4.   
  5. 然后选择适当的 LINK ICON ,它可以是任何图标或只是文字,具体取决于您的需求
  6.   
  7. 然后将 TARGET 更改为网址
  8.   
  9. 然后将其粘贴到网址框
  10.   
    javascript:removeURL('#SECTION#');
  
      
  1. 然后转到主页&gt; JAVASCRIPT&gt;函数和全局变量声明并粘贴此代码:
  2.   
    function removeURL(section){
      if (section  == 'Confirm The Project'){ 
       window.open('f?p='+$v('pFlowId')+':2:'+$v('pInstance')+':::::');
       }
    }
  
      
  1. 然后跑步并检查。
  2.   

适用于APEX 5版本

  

1.转到列并将其类型更改为链接
  2.然后在链接下,选择网址作为 TARGET
  3.然后选择列名称为链接文本
  4.然后按照上面的步骤从5到7。

     

请注意,要比较的字符串/值应等于存储在数据库中的值。

希望这有帮助