动态设置SSRS报告的数据源而无需无人值守的执行帐户?

BVe*_*non 7 security report reporting-services

我需要在运行时动态指定SSRS报告的数据源.我发现了这些解决方案

在服务器端以编程方式更改报告的SSRS数据源

SSRS动态共享数据源

像Crystal Reports这样的其他技术让我们可以很容易地随意更改数据源几十年,所以我觉得这些黑客攻击仍然是实现这一目标的最佳方法,但假设情况如此:是否可以在没有启用无人值守执行帐户?

Ros*_*ush 9

以下是我在运行时更改数据源的方法.

  1. 创建报告参数DatabaseServer.
  2. 创建报告参数DatebaseName.
  3. 为报告创建dsTest数据源(这是用于本地测试).
  4. 将dsTest数据源设置为指向测试数据库.
  5. 创建另一个"dsDynamic"数据源并将其连接字符串表达式设置为以下内容: ="Data Source="+Parameters!DatabaseServer.Value+";Initial Catalog=" + Parameters!DatabaseName.Value

  6. 通过将所有数据集设置为在步骤3中创建的测试连接来构建和测试报告.

  7. 在实时部署之前,将报告的数据集设置为在步骤5中创建的动态数据集.
  8. 将数据库名称和服务器名称从应用程序发送到报告,指向另一个数据库实例.