为什么我的SSRS报告显示旧数据?

问题描述 投票:22回答:9

我有一个实时报告,它以某种方式显示缓存数据,尽管事实上我已禁用所有缓存(我知道)。当我在BIDS查询编辑器中运行查询时,它显示当前数据。但是在BIDS预览和实际部署的报告中,它仍然显示过时的数据。

我尝试在报告网站的报告属性中切换报告缓存,然后我进入IIS HTTP标头属性并将内容设置为“立即过期”。我之前在BIDS预览窗口中看到过这个问题,因为.data文件与报告定义一起存储(我已经删除/刷新了几次),但我从未见过现实报告。

在某个地方我还有其他缓存选项吗?

编辑:该报告还有一个用户选择的参数,这使得这更令人困惑,因为我的印象是,即使启用了缓存,参数也会导致SSRS使用最新数据。

reporting-services reportingservices-2005
9个回答
33
投票

在SSRS的开发模式中,我通常删除report_name.rdl.DATA文件。那就是数据是从上次运行中保留的。

花了几个小时才弄清楚这是我的问题,更改源数据和报告看起来像上次运行。

编辑:请注意不要删除.rdl报告文件(它是要删除的“report.rdl.data”文件以刷新结果集)。


23
投票

旧帖子,但我仍然遇到这个问题,并发现了一篇关于如何在外部工具下放置选项以使其更容易的文章。

  1. 转到工具>外部工具...
  2. 使用以下设置添加新工具: 标题:清除报告数据缓存 命令:"%WinDir%\System32\cmd.exe" 争论:/C DEL /S /Q "$(SolutionDir)\*.rdl.data" 检查选项:使用“输出”窗口并在退出时关闭

现在,只要您想删除报表数据缓存,只需转到“工具”>“清除报表数据缓存”即可

全文在这里:http://jasonfaulkner.com/ClearDataCacheBIS.aspx


3
投票

这些选项都不适合我 - 然后我勾选了数据源属性中的“在处理查询时使用单个事务”,并且预览开始使用最新数据运行。


2
投票

我发现在SSRS 2010中使用VS时,预览模式只会显示旧数据。如果我转到数据集查询并点击刷新,那么新数据将会降低,然后预览将显示新数据。这很烦人,但阅读它我明白部署的报告会刷新自己好。我无法证明这个理论,因为我无权查看我的部署报告,这更令人讨厌。无论如何,我从各个帖子中获取了一些提示并将报告属性中的AutoRefresh属性从0更改为1.然后当我进入预览模式时,报告更新了OK但每1秒更新一次。现在我得到该属性的工作方式并将其设置为1000000.这意味着当您第一次进入预览时它会刷新一次,然后它会在1000000秒内再次刷新,这时我将退出预览模式并愉快地构建报告更多。我真的不知道这会对部署的报告产生什么影响,但我会想到的情况大致相同。也许有权访问其已部署报告的其他人可以提供建议。


1
投票

我发现使用SSRS,从报告中删除Report的DataSource,然后重新创建它可以摆脱BIDS环境中的所有缓存数据。但是,我从未在部署的报告中看到过这样的行为。

您可以尝试从SSRS服务器中删除共享数据源,然后重新部署它。也许它会导致类似的刷新。但是,如果部署的报告在生产环境中,我不一定会像这样跳到极端。


1
投票

对于那些寻求旧数据显示甚至报表生成器显示当前数据的人来说,这可能会有所帮助。

我现在也在现有的实时报道中遇到这些问题。我在DB端更新了数据。但这种改变并没有奏效。我刷了好几次。仍显示旧数据。后来我发现我点击了报告的“查看报告历史记录”[如果您将鼠标悬停在报告名称中,则会显示此选项,然后单击Downarrrow]。在报告历史记录页面的左侧,我进入了“处理选项”,在那里我可以看到两个无线电选项可用。

  1. 始终使用最新数据运行此报告
  2. 从报告快照中呈现此报告

不幸的是,我的报告有Point2选择。它每天早上7点安排。所以,早上7点之后,如果我们做了任何改变,我们就无法立即看到。我们必须等待第二天的快照。 BUt,我们可以通过选择Point1来改变这一点,它会为您带来最新的数据。

希望这可以帮助维护SSRS报告的人。

此致,Viswa V.


0
投票

始终使用最新数据运行此报告不要缓存此报告的临时副本

  1. 仔细检查是否通过ReportManager在“处理选项”下选择了上述选项。
  2. 检查您的数据集是否正在查询当前数据。
  3. 刷新报告。

这很奇怪。


0
投票

许多人忘记这样做,始终确保您的.rds文件是最新的。在SSRS中,重新构建和重新部署“共享数据源”和“共享数据集”以及您的报告。

  1. 选择“共享数据源”和“共享数据集”(.rds)文件。
  2. 单击鼠标右键,“构建”。
  3. 单击鼠标右键,“部署”。

现在从主机重新运行报告。


0
投票

在Visual Studio 2017中,单击相关报表的“预览”选项卡。

在图标工具栏上有一个刷新图标,当您单击它时将从数据库中提取最新数据:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.