简体   繁体   English

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

[英]How to set value from select from one Data Set as parameter in other Data Set in BI Publisher

So I have dataset1 that has something like SELECT userID from table1 where ... from DataBase1 所以我有一个数据集1,它具有类似于SELECT userID from table1 where ...来自DataBase1

And I have dataset2 that has some complicated SQL on DataBase2 that must have parameter ... where userID = :userID... 我有dataset2,它在DataBase2上具有一些复杂的SQL,必须具有参数... where userID = :userID...

So how can I pass that userID that I get in SQL from DB1 to SQL that I'm running in DB2? 那么,如何将在SQL中从DB1获得的userID传递给在DB2中运行的SQL?

Here is a simple example. 这是一个简单的例子。 Two queries like you mentioned. 像您提到的两个查询。 I have an incoming parameter to select a set from the first table (parent records). 我有一个传入参数,可以从第一个表(父记录)中选择一个集合。 And then I pass the userID to the second query (child records). 然后,我将userID传递给第二个查询(子记录)。 I show how that works in the data structure too, how each parent record can have child records. 我还将说明它在数据结构中的工作原理,以及每个父记录如何具有子记录。

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM