0

报告需要在多个站点上运行,每个站点都有自己的连接字符串。这些站点名称和连接字符串集中存储。

我想做一个报告

  1. 接受站点名称作为参数
  2. 查询站点连接字符串
  3. 使用站点连接字符串来获取报告的数据

我尝试在报告中使用两个数据源,其中第一个数据源使用站点名称参数来检索连接字符串,第二个数据源使用带有函数的“嵌入式连接”作为其连接字符串。

=First(Fields!ConnectionString.Value, "SiteDetails")

但是,当我运行报告时,我得到:

[rsFieldInQueryParameterExpression] 用于数据集“SiteDataSource”中的参数“SiteDataSource”的表达式指的是一个字段。字段不能用于查询参数表达式。

有没有办法解决这个问题,使用数据库中的连接字符串?

我正在使用 SQL Server 2008 报告服务。

4

2 回答 2

3

通过将连接字符串存储在隐藏的报告参数中,然后使用该参数设置第二个查询的连接字符串,我已经在 SSRS 2005 中进行了这项工作。

于 2009-07-14T08:26:46.713 回答
0

我不久前写了一篇关于类似内容的博客文章,您可能会发现它很有用 - http://www.beakersoft.co.uk/2008/06/22/setting-a-data-source-at-runtime-on- sql报告服务/

于 2009-07-14T12:51:18.923 回答