【问题标题】:SSRS different results in Data tab and Preview tabSSRS 在数据选项卡和预览选项卡中的不同结果
【发布时间】:2008-12-03 17:31:46
【问题描述】:

当我在 SQL Server Reporting Services 中构建的报表的“数据”选项卡中运行查询时,我得到了正确的结果(nov 和 dec 数据)。当我预览报告时,我得到了 10 月份的旧数据。这对我来说没有任何意义。我不确定发生了什么事。注意:数据在Oracle中。

这是我正在使用的日期过滤器

receipt_date + 2 <= SYSDATE

该查询在 SQL Developer 和 Visual Studio 中 .rdl 设计器的“数据”选项卡中运行良好……只是在我运行报告时不在“预览”选项卡中……那是我获得 10 月数据的时候。

有人知道这里发生了什么吗?

【问题讨论】:

    标签: reporting-services


    【解决方案1】:

    SSRS 在本地缓存数据以供设计人员使用。仅当开发人员使用不同的参数集在 VS.NET 中预览报表时,缓存的数据才会更新,在您的情况下,这永远不会发生,因为报表没有参数。

    要允许 SSRS 刷新缓存数据,请导航到包含您的设计时 RDL 文件的目录并删除所有扩展名为“.data”的文件。

    【讨论】:

      【解决方案2】:

      这已经太晚了,但也许这可以在未来帮助其他人。

      在开发 SQL Reporting Services 报表时,一个非常烦人的功能是在测试报表时预览数据在本地缓存,而不是在每次运行时获取。即使显式刷新数据也不能总是解决这个问题。解决此问题的最可靠方法是删除与您的报告 RDL 文件关联的 .data 文件。这些数据文件与您的报告定义存储在同一文件夹中。

      虽然您可以手动删除这些文件,但对 BIS 的以下 15 秒配置更改使删除所有数据缓存的过程像菜单选择一样简单。

      让我们看看如何实现这一点。

      在 Visual Studio 中 -->

      1. 转到工具 - 外部工具...
      2. 使用以下设置添加新工具:

      现在,当您想删除报表数据缓存时,只需转到工具 - 清除报表数据缓存。

      【讨论】:

        【解决方案3】:

        唯一对我有用(在 2008 R2 中)是删除 .data 文件并重建报告。预览选项卡上的刷新按钮没有任何作用,编辑 RSReportDesigner.config 文件(位于 C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PublicAssemblies)。非常令人沮丧。如果我更改查询或 sp 逻辑,我现在必须手动删除报告项目目录中的 .data 文件,以便查看数据的最新呈现。

        希望此问题已在 SSRS 2012 数据工具中得到修复。

        【讨论】:

          【解决方案4】:
          【解决方案5】:

          Greg 帖子中的链接指向此解决方法,在 Greg 发布后添加:http://blog.summitcloud.com/2010/05/disable-reporting-services-data-cache-in-development/ 这解释了哪个配置文件控制数据缓存,并说刷新预览实际上可能会为您提供新数据。 (我现在正在运行一个很长的查询,所以我还不知道这是否有效。)

          【讨论】:

            【解决方案6】:

            尝试点击“预览”选项卡上的“刷新”按钮。

            如果我理解正确,那与我的问题相同。

            我可以在“报告数据”窗口中看到查询成功运行,但每当我运行报告预览时,都没有得到任何结果。

            经过一番折腾后,我意识到,我需要做的就是点击刷新按钮(预览选项卡上的小图标)以使用新数据刷新预览。

            【讨论】:

            • 为我按下 BIDS VS2010 中的刷新按钮不起作用。也没有删除缓存文件。更奇怪的事情正在发生 - 我已经验证了来自存储过程的数据。 RDL 来自 2008 年的解决方案副本,因此这里可能存在错误。
            【解决方案7】:

            数据集的参数有什么不同吗?报告参数是否完全提供数据集?如果有,它们是什么? 报告是服务器报告吗?如果是这样,服务器上设置的时间是多少?

            【讨论】:

              【解决方案8】:

              没有报告参数.....每次运行完全相同的sql。当您询问报告是否为服务器报告时,我不确定您的意思。

              【讨论】:

                【解决方案9】:

                我有一个理论我无法测试。此报表未部署到报表管理器,而是从 Visual Studio 运行。我不知道这是否会有所不同。

                【讨论】:

                  【解决方案10】:

                  在 BIDS VS2010 中为我按下刷新按钮不起作用。也没有删除缓存文件。我的问题是我没有行组 - 所以它只在报告中显示一个(旧)记录。

                  【讨论】:

                    猜你喜欢
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 2018-04-16
                    • 1970-01-01
                    • 1970-01-01
                    • 2019-01-29
                    • 1970-01-01
                    相关资源
                    最近更新 更多