0

我正在使用 APex 4.2

我有一个带有班车列表的页面(第 31 页)。该列表包含几个工作类别(a、e、x、c 等)。我在该页面上有一个按钮,可以根据所选的工作类别生成报告。我单击按钮,查询运行,然后将我带到报告页面(第 27 页)。查询是沿着这些线

select * from 'table'
where (instr(':'||:P31_JOB_CATEGORY||':',':'||JOB_CATEGORY||':') > 0)

其中 P31_JOB_CATEGORY 由穿梭列表表示。这给了我第 27 页所需的结果,但是,有没有办法捕获在第 31 页的穿梭列表中选择的每个选定的工作类别并将其传递到第 27 页以显示?最好将它存储在某种连接字符串中以便于处理,即 A、E、C、X。任何帮助将不胜感激。提前致谢。

4

1 回答 1

0

原因在于如何将穿梭值保存到会话状态以及如何构造顶点 URL。
如您所见,穿梭值是通过用冒号连接选定值来构造的。例如,我在ENAMEfrom上有一个穿梭EMP,选择 3 个值并提交页面。穿梭的会话状态是:URUGUAY:HOWARD:M BENZ

现在假设您重定向到另一个页面,使用此穿梭项目的值设置项目。URL 将如下所示: f?p=54687:6:100741653098795::NO::P6_TEXT:URUGUAY:HOWARD:M BENZ

顶点 URL 是使用冒号构造的。您将带有冒号的值放在那里根本不适用于顶点。
解决方案?您可以提交页面并使用计算来替换冒号,然后分支到目标页面。例如,我用我的名字替换冒号 ~: URUGUAY~HOWARD~M BENZ。然后,在您的目标页面上,您可以使用此值并调整您的 sql 或使用前/后标头中的计算来再次替换分隔符。

于 2013-04-10T19:35:59.953 回答