2016-06-10 54 views
2

客户希望获得报告运行最后x次的历史记录和pdf副本。他们希望能够:如何在运行时创建SSRS报告的存档历史记录

1)重新运行具有相同参数的报告(有没有问题)

2)具有原始报告的保存PDF副本供以后观看

3 )为系统中的所有(80)报告设置此通用设置。

有没有人知道每次用户运行该报告时都可以自动生成并存储报告的文件副本的方法。或者选择一种从ReportServer或ReportServerTempDB数据库提取报告的方法。

我意识到SSRS具有历史快照,但据我所见,它们对我的问题没有用处。

1)它们必须作为快照运行,不能由用户直接运行。

2)他们需要有一个具有缺省值的所有参数(因为它们是作为一个快照通过一个作业中运行)

这似乎很奇怪,这样一个简单的要求不能得到满足,如果我我想知道遗漏了什么。是否有任何第三方产品提供此功能?

任何帮助真的很感激。

+0

我最近发现这篇文章,告诉你如何在每次执行报告时启动存储过程。您可能会发现它很有用:http://www.advancedssrs.com/2014/01/how-can-i-run-stored-procedures-with.html – vercelli

+1

谢谢vercelli – Gerard

回答

0

而是创建运行报表的存档,您可以查询包含的所运行的所有报告的详细信息数据库,并已使用的参数,谁当等

查找范围ReportManager数据库。有意见将会让你成为那里的一部分,加入目录以获得报告的详细信息等。

注意数据在重新启动(以及一段时间后)时被剔除,因此您需要一个进程将其复制到另一张表以进行长期存储。我也提取Windows用户的详细信息到另一个表,所以我可以有真实姓名。这些都是作为SSRS经理报告公开的。

编辑这可能不符合您的要求,因为当您使用相同参数运行报表时,如果基础数据发生更改,您可能会得到不同的结果。

+0

谢谢迈克。所有报告详细信息都保存在ReportsServer数据库中,并且您可以在稍后的日期重新运行具有相同参数的报告,但您将获得不同的数据。实际的报告数据未被存储,因此您无法复制用户在以后看到的报告。这是我的问题 - 用户需要系统中每个报告运行的历史记录,运行它的人员以及生成的实际报告的副本。 – Gerard