我对SSRS很陌生,我几乎完成了我被要求做的报告,一切都按预期工作,但我的客户只是要求我说明报告在当前表格中打印了多少时间,在报告的标题中。
所以我的报告有两个参数:开始日期和结束日期。
假设我的客户提出了05-05-2005到06-06-2006期间的报告,并打印出标题/标题中的“REPORT NAME(打印#1)”。然后,如果他决定在一周后回来并打印相同的确切报告,则会显示“报告名称(打印#2)”。
反正有没有这样做?到目前为止,我的研究使我相信这是不可能的。
提前感谢任何潜在客户/解决方案!
答案 0 :(得分:3)
对于未来的读者:无需创建自己的查询日志记录。
您可以查询ReportServer.dbo.ExcecutionLog表。它包含许多有关报告请求的信息,包括XML格式的参数。您可以对其进行分组/统计,以确定特定报告的先前执行次数。
有关从执行日志中提取信息的更多信息: http://technet.microsoft.com/en-us/library/ms155836(v=sql.90).aspx
只有问题仍在确定用户是否打印了报告。您也可以从ExecutionLog中获取它:
自己查看打印输出生成的日志:查询按执行开始排序的执行日志,显示报告,重新查询,打印,重新查询等。
答案 1 :(得分:2)
你必须写一个custom Print delivery extension来在某个数据库中记录“打印”。所以实际上,不,在“纯粹的”SSRS中
思路: