动态更改报表数据源以指向不同的数据库

时间:2014-01-13 14:43:57

标签: asp.net reporting-services sql-server-2008-r2

我们一直在开发一个Web表单项目,它可以通过url参数满足多家公司的需求。

每家公司都有自己的数据库。

如果公司“A”登录并运行报告以查看其数据,我们还要求直接通过SSRS访问报告,而无需通过SSRS将公司名称指定为报告参数本身。首先,我们不希望这些公司看到彼此的数据!

我的老板坚持认为他们不希望为每家公司部署多套报告。

我尝试使用一些动态SQL和一个隐藏的报表参数来更改数据库上下文,这在asp.Net站点中工作正常,但是直接访问它时,它无法理解这些要求。

我更倾向于asp.net网站将报告作为项目的一部分,以便每个报告始终可用(但我们将SSRS作为“软件包”的一部分出售),或者更喜欢每家公司都有自己的文件夹/报告集。

我在比赛的最后阶段参与了这项发展。我觉得所需要的是不可能的。

有没有人对如何使这项工作有任何想法?或者可以指出我正确的方向?

谢谢,

大卫

1 个答案:

答案 0 :(得分:0)

您可以使用报告参数参数化连接字符串的各个部分。请参阅此处的“基于表达式的连接字符串”部分:

http://msdn.microsoft.com/en-us/library/ms156450.aspx