如何从一个数据集的BI Publisher的设置从选择值在其他数据集参数

问题描述:

所以我有了类似SELECT userID from table1 where ...从DATABASE1如何从一个数据集的BI Publisher的设置从选择值在其他数据集参数

我有dataset2有一些复杂的SQL上DATABASE2必须数据集1有参数... where userID = :userID...

那么我怎样才能将我在SQL中从DB1获得的userID传递给我在DB2中运行的SQL呢?

+0

你有两个数据库之间的数据库链接? –

+0

我不是管理那个数据库,但我想这是可能的,这将在BI发布者的工作? – HoTTab1CH

+0

从你的问题很难说,但在我看来,你真的只是问如何将一个数据库中的一个表连接到另一个数据库中的另一个表。数据库链接提供了一个简单的方法。如果您可以让连接在SQL中工作,那么您可以使连接在BIP中工作。但也可能是因为我的简化本能使我误解了你的问题 –

下面是一个简单的例子。像你提到的两个查询。我有一个传入参数从第一个表(父记录)中选择一个集合。然后我将用户ID传递给第二个查询(子记录)。我将展示数据结构中的工作方式,以及每个父记录如何具有子记录。

<?xml version="1.0" ?> 
<dataTemplate name="DATA_DEFINITION_NAME" version="1.0" defaultPackage="DATA_DEFINITION_CODE"> 
<properties> 
<property name="ENCODING" value="windows-1252"/> 
<property name="debug_mode" value="on" /> 
<property name="scalable_mode" value="on" /> 
</properties> 
<parameters> 
<parameter name="i_parameter" dataType="NUMBER" /> 
</parameters> 
<dataQuery> 
<sqlStatement name="Q_TABLE_1"><![CDATA[select userid, username from table1 where column1 = :i_parameter ]]></sqlStatement> 
<sqlStatement name="Q_TABLE_2"><![CDATA[select ValueColumn from table2 where userid = :userid ]]></sqlStatement> 
</dataQuery> 
<dataStructure> 
<group name="users" source="Q_TABLE_1"> 
<element name="username"   value="username"   /> 
<group name="userdata" source="Q_TABLE_2"> 
<element name="ValueColumn"      value="ValueColumn"    /> 
</group> 
</group> 
</dataStructure> 
</dataTemplate>