我正在使用Apex 20.1.0.00.13,尝试在经典报表的列上创建链接。
我已按照以下步骤创建列的链接,并将其重定向到与以下步骤相同的应用程序中的页面:
要创建到另一个页面的链接,请在“链接生成器-目标”对话框中: 类型-在此应用程序中选择页面。 页-指定目标页码。 设置项目-选择名称和值以指定项目的会话状态。 清除会话状态,清除缓存-指定要在其上清除缓存的页码。要指定多页,请输入以逗号分隔的页码列表。 休息分页-选择是可重置此页面的分页。v 高级,请求-指定要使用的请求。 点击确定。
但是当我设置项目和值以指定项目的会话状态时,“设置项目:名称”不会填充列,它显示为空白,有人可以让我知道我要去哪里了。
我正在尝试从第1页建立链接,说一行的部门编号为2,将直接指向第2页,其中包含部门2的详细信息。还有其他方法可以做到这一点。由于它是列而不是项目,因此我无法将其作为参数传递给下一页。
提前谢谢!
答案 0 :(得分:0)
正确;这里没有“项目”,您必须在报告中创建超链接。
假设这是经典报表的查询:
with test (id, name) as
(select 1, 'Google' from dual union all
select 2, 'Yahoo' from dual union all
select 3, 'Bing' from dual
)
select
id,
'<a href="' || case
when name = 'Google' then 'https://www.google.com'
when name = 'Yahoo' then 'https://www.yahoo.com'
when name = 'Bing' then 'https://www.bing.com'
end
|| '" target="_blank">' || name || '</a>' as link
from test
order by name;
转到LINK
列的属性,并将“转义特殊字符”设置为“否”。运行报告;一切都会正常。
如果-如您所说-使用它导航到应用程序中的另一页并将某些项目设置为某些值(来自IR),那么您将执行以下操作:
SELECT
'f?p=&APP_ID.:217' ||
':&APP_SESSION.::NO::P217_ID' ||
':' || r.id
as link, ...
FROM my_table r ...
换句话说:它导航到第217页,并将r.id
列值传递到位于第217页的P217_ID
项中。
link
列。会是
#link#
(从字面上讲,键入#link#
)答案 1 :(得分:0)
可能您可以将这两个页面更改并合并为一个“主从页面”。这样,您可以使用内置的查找功能。