【问题标题】:pass field value as parameter ssrs将字段值作为参数 ssrs 传递
【发布时间】:2012-03-06 17:04:51
【问题描述】:

我有一个字段 customerid,它是查询中的一个字段,但我没有在报告中显示此 customerId。字段 customerid 在 dataset1 中。

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

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

所以基本上我将 o_cust_id 的值设置为参数 c_customer_id,其值设置为 dataset1 中的 customerid 字段。

问题是我只是为所有 customerid 获得相同的值。 id 在 dataset2 中没有更新,但在 dataset1 中得到更新。所以同样的参数值被传递给dataset2。这里有什么问题?

谢谢, 拉胡尔

【问题讨论】:

  • 这些数据集查询的是同一个数据库吗?如果是这样,将两个数据集组合成一个查询会更容易。
  • dataset2 是在 dataset1 的报表项(表、列表等)中报告,还是单独报告?

标签: parameters reporting-services datafield


【解决方案1】:

听起来好像 dataset2 是在它自己的报告项中报告的,而不是在 dataset1 的报告项(表、列表等)中报告。

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

如提供的链接所示,子报表需要位于主数据集的报表项的正文中 - 因此在这种情况下,解决方案可能是将数据集 2 的报表项添加到数据集 1 的报表项中。

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

【讨论】:

  • 从同一个数据库查询的两个数据集。我正在尝试将它结合起来。希望它有效。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-01
  • 1970-01-01
  • 2012-11-18
  • 1970-01-01
相关资源
最近更新 更多