如何设置从一个数据集中选择的值作为BI Publisher

时间:2017-10-20 10:44:48

标签: sql oracle bi-publisher

所以我的数据集1与DataBase1

中的SELECT userID from table1 where ...类似

我的数据集2在DataBase2上有一些复杂的SQL,必须有参数... where userID = :userID...

那么如何将我在SQL中获得的userID从DB1传递给我在DB2中运行的SQL?

1 个答案:

答案 0 :(得分:0)

这是一个简单的例子。像你提到的两个查询。我有一个传入参数来从第一个表(父记录)中选择一个集合。然后我将userID传递给第二个查询(子记录)。我将展示它在数据结构中的工作原理,每个父记录如何具有子记录。

<?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>