在 Oracle Apex 5 中,我想 link 到交互式报告并设置过滤器 RequestID = #RequestID#
In Oracle Apex 5 I want to link to an Interactive Report and set a filter RequestID = #RequestID#
我正在尝试 link Apex 5 中的一个交互式报表的一列到另一个交互式报表。我想在后面的一个中使用第一个的值设置过滤器。我使用了 Link 类型的列,然后单击“目标”按钮来设置页码,如下所示:
没用。我读到还有其他方法,我可以使用 URL link 并构建 URL 以使用包传递参数但是如果我使用它,我如何将它绑定到 link?
通常您需要指定要在 link 中使用的运算符 - 文档:
Developing Reports > Editing Interactive Reports in Page Designer > Linking to Interactive Reports
Snippet concerning setting up a link:
To create a filter, use the following itemNames
and itemValues
syntax:
IR[region static ID]<operator>_<target column alias>
Consider the following example:
IR[EMP]C_ENAME:KING
意思是,如果您想在报告中放置一个过滤器,其中列 REQUEST_ID
与给定值匹配,您需要等号运算符语法:
IREQ_REQUESTID:#REQUEST_ID#
但是,使用
IR_REQUESTID:#REQUEST_ID#
也应该有效,因为 EQ
运算符是默认运算符。
还要考虑其他问题:页面上是否有多个IR?你需要引用正确的。您生成的 link 正确吗?检查它!
对我来说,它是这样工作的:
我在第二个 IR 的第二页上创建了一个项目(仅显示)(源类型:null)。
在列属性的第一个 IR 中设置 Link 文本和目标和页码(就像您已经做的那样)。在名称部分放置您刚刚创建的项目,在值部分放置列名称,其中是您的过滤器的值(如#Request_ID'#)。
然后在第二个 IR 的第二页上,您将在区域源中放置如下内容:
select REQUEST_ID,
REQUEST_NUMBER,
NAME,
FIRST_NAME,
COMPANY,
COUNTRY,
TYPE,
RQ_IS_ARCHIVE,
RQ_ID_TO
from REQUEST
where REQUEST_ID = :P20_REQUEST_ID
:P20_REQUEST_ID
是您在第二页上创建的项目。
您将第一页的 Request_ID 列的值传递给第二页的项目,然后将其用作条件。
希望这对你有帮助...
我找到了导致过滤器不起作用的原因。我试图过滤 "link" 类型的列。它在 "link" 时不起作用,但在 "plain text" 时起作用。所以现在你知道了。这是它的样子...
我正在尝试 link Apex 5 中的一个交互式报表的一列到另一个交互式报表。我想在后面的一个中使用第一个的值设置过滤器。我使用了 Link 类型的列,然后单击“目标”按钮来设置页码,如下所示:
没用。我读到还有其他方法,我可以使用 URL link 并构建 URL 以使用包传递参数但是如果我使用它,我如何将它绑定到 link?
通常您需要指定要在 link 中使用的运算符 - 文档: Developing Reports > Editing Interactive Reports in Page Designer > Linking to Interactive Reports
Snippet concerning setting up a link:
To create a filter, use the following
itemNames
anditemValues
syntax:IR[region static ID]<operator>_<target column alias>
Consider the following example:
IR[EMP]C_ENAME:KING
意思是,如果您想在报告中放置一个过滤器,其中列 REQUEST_ID
与给定值匹配,您需要等号运算符语法:
IREQ_REQUESTID:#REQUEST_ID#
但是,使用
IR_REQUESTID:#REQUEST_ID#
也应该有效,因为 EQ
运算符是默认运算符。
还要考虑其他问题:页面上是否有多个IR?你需要引用正确的。您生成的 link 正确吗?检查它!
对我来说,它是这样工作的: 我在第二个 IR 的第二页上创建了一个项目(仅显示)(源类型:null)。
在列属性的第一个 IR 中设置 Link 文本和目标和页码(就像您已经做的那样)。在名称部分放置您刚刚创建的项目,在值部分放置列名称,其中是您的过滤器的值(如#Request_ID'#)。
然后在第二个 IR 的第二页上,您将在区域源中放置如下内容:
select REQUEST_ID,
REQUEST_NUMBER,
NAME,
FIRST_NAME,
COMPANY,
COUNTRY,
TYPE,
RQ_IS_ARCHIVE,
RQ_ID_TO
from REQUEST
where REQUEST_ID = :P20_REQUEST_ID
:P20_REQUEST_ID
是您在第二页上创建的项目。
您将第一页的 Request_ID 列的值传递给第二页的项目,然后将其用作条件。
希望这对你有帮助...
我找到了导致过滤器不起作用的原因。我试图过滤 "link" 类型的列。它在 "link" 时不起作用,但在 "plain text" 时起作用。所以现在你知道了。这是它的样子...