2012-03-05 191 views
1

我有一个字段customerid这是查询中的字段,但我没有在报告中显示此customerId。字段customerid在数据集1中。传递字段值作为参数ssrs

我有另一个名为dataset2的数据集,我有查询“select ordername .... where order.customerId = o_custId”(我需要将数据集1中的customerId字段传递给参数o_cust_id)。

所以我创建了一个参数c_customer_id,我在参数的向导/属性中将“默认值”设置为customerid和dataset作为dataset1后,我选择了“从查询中获取值”后的数据集。然后我点击数据集2的属性,并在参数I set中设置:o_cust_id = [@c_customer_id](这是参数)。

因此,基本上我将o_cust_id的值设置为参数c_customer_id,其值设置为数据集1中的customerid字段。

问题是我只是得到所有customerid相同的值。数据集2中的ID未得到更新,但在数据集1中得到更新。所以相同的参数值被传递给数据集2。这里有什么问题?

感谢, raghul

+0

这些数据集是查询同一个数据库吗?如果是这样,将两个数据集组合成一个查询会更容易。 – 2012-03-06 08:50:22

+0

数据集2报告在数据集1的报告项目(表格,列表等)中,还是单独报告? – 2012-03-06 08:57:30

回答

1

这听起来好像dataset2被自己的报表项目内报告的,而不是为DataSet1的报表项(表格,列表等)内。

您描述的技术是如何在SSRS中创建子报表 - 请参阅herehere

如提供的链接所示,子报表需要位于主数据集的报表项的正文内 - 因此,此情况下的解决方案可能是为dataset2的报表项添加报表项以便为dataset1报表项添加报表项。

或者,将两个数据集组合成单个数据集可能会更简单。

+0

这两个数据集都从同一个数据库查询。我正试图将它结合起来。希望它有效。谢谢。 – 2012-03-06 22:28:47