【问题标题】:SSRS 2012: "The report execution has expired or cannot be found. (rsExecutionNotFound)"SSRS 2012:“报告执行已过期或找不到。(rsExecutionNotFound)”
【发布时间】:2015-08-11 18:14:40
【问题描述】:

我正在使用 SQL Server Reporting Services 2012 并在没有任何已知原因的情况下收到此错误:The report execution eqaiekfzmk2snc55y0zrow55 has expired or cannot be found. (rsExecutionNotFound)

虽然我通过 Google 搜索找到了描述问题的其他帖子,但这些解决方案对我没有帮助:

  • 重新启动 SQL Server、SQL Server 代理和 SQL Server 报告服务
  • 在连接到报告服务器时通过 SQL Server Management Studio 增加执行超时
  • rs:ClearSession 添加到 URL 查询字符串(并尝试 IE、Chrome 和 Firefox)
  • 在每个故障排除步骤和重新测试后重新部署
  • 我查看了 Reporting Services 日志文件夹 C:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\LogFiles,但我看到日期戳已经超过两个月了,我看不到与症状相关的任何内容。
  • 我查看了 ExecutionLog3 并没有看到任何与症状相关的内容。 use ReportServer; select * from ExecutionLog3;

为了找出有效的方法,我验证了:

  • 查询和结果都很好,在 Management Studio 中可以看到
  • 我可以在服务器上的数据工具中预览报表
  • 我可以在远程访问服务器时查看报告

我只在从服务器外部查看页面时看到错误。这是一个相对轻量级的查询和结果集,所以我不敢相信这个问题与执行超时有任何关系。

我更改了文件名并重新部署。我现在可以看到该报告,但这不是一个真正的解决方案,因为我仍然不知道真正导致问题的原因以及如何解决它。如果症状再次出现,我无法继续更改文件名并重新部署。

有没有办法更好地了解正在发生的事情?我需要更改的特定日志文件或属性?

更新:

我以为我已经解决了这个问题,但显然没有。我在错误日志中没有发现任何有用的信息:仅重述了浏览器中可见的相同错误消息。当我重新部署(使用 SQL Server Data Tools)时,错误消失了......几个小时或直到第二天,当我需要重新部署以使错误消失时。

【问题讨论】:

  • 你可以看看Report Server Execution Logs,看看里面有没有什么好东西。我还没有证实这些在 2012 年仍然存在,但它们有时在 2008 r2 中很有用。
  • 我不知道执行日志。这将在与此问题无关的其他领域帮助我。不幸的是,它不能帮助我诊断这个问题。
  • 您可以在 \ReportingServices\LogFiles -->C:\Program Files\Microsoft SQL Server\MSRS12.MSSQLSERVER\Reporting Services\LogFiles 的 SSRS 日志文件中找到更详细的信息跨度>
  • 您如何查看报告 - 报告管理器?共享点?使用 ReportViewer 控件的自定义 Web 应用程序?如果是在浏览器中,您使用的是哪个浏览器版本?
  • 它是一个浏览器。我尝试了所有最新版本的 IE、Chrome 和 Firefox。

标签: sql-server reporting-services


【解决方案1】:

这可能对某人有所帮助。

在我的情况下,报告网址有尾随空格(一个愚蠢的错误),导致了这种情况。

【讨论】:

  • 我也遇到了同样的问题!
  • 就我而言,这是一份之前运行良好的报告(相同的 URL);第二次尝试,它奏效了——所以它有时显然是一个暂时的问题。如果你明白了,请稍等,积极思考,甜甜地微笑,然后再试一次(实际上,我所做的只是再试一次,而且奏效了)。
  • 你节省了我的时间伙伴.. :)
【解决方案2】:

我知道这是一个老问题,但我最近遇到了这个问题,结果证明它是一个错误的会话 cookie。 cookie session-id 与错误消息中的 guid 匹配,一旦我删除了 cookie,之后一切正常。该报告曾一度被配置为缓存一份临时副本

但此后已关闭(但是,在关闭之前存在问题,因此可能不相关)。

希望这个答案能帮助其他人节省我在我的环境中弄清楚它所花费的时间:)

【讨论】:

  • 这个答案对我帮助很大。最后,我们使用的是 Chrome,所以我转到设置 >(单击高级)> 内容设置 > Cookies > 查看所有 cookie 和站点数据 > [报告服务 url] > [报告名称 cookie]。这是在本地发生的,所以我的报告服务 url 只是 localhost,并且 cookie 的调用方式与报告完全相同。
【解决方案3】:

我已将&rs:Command=ClearSession 添加到我的网址末尾,并且可以正常使用。

【讨论】:

    【解决方案4】:

    如另一个答案中所述,您可以清除通常可以解决此问题的会话。

    如果您的网址中已经有问号,请在末尾添加以下内容。

    &rs:Command=ClearSession
    

    如果您没有,则需要在末尾添加以下内容。

    ?rs:Command=ClearSession
    

    【讨论】:

      【解决方案5】:

      我刚刚遇到了这个问题,它是针对已正常工作的现有报告。但是,当我处理其他内容时,报表生成器在另一个窗口中打开了一段时间,并且我没有保存我的工作(我正在应用过滤器,并且不想用我的测试过滤器保存我的更改)。我突然想到,由于报告一直在工作,但它一直处于闲置状态,它可能已经过时了。我打开数据集属性,单击查询设计器,然后单击“运行查询”。然后查询设计器从数据源获得一个新的请求。我关闭了“数据集属性”窗口并单击“运行”,我的报告再次显示出来。

      【讨论】:

        【解决方案6】:

        对我来说,我没有尾随空格。

        有些人幸运地清除了“Microsoft.Reporting.WebForms.ReportHierarchy”的 Session.Keys

        我通过 global.asax 中的 Session.Clear 解决了它

        【讨论】:

          【解决方案7】:

          对于我们来说,尝试使用 Internet Explorer 11 在 SSRS 2016 服务器上运行报告时出现错误。用户创建了一个直接链接到报告的书签。可能发生的情况:IE 为收藏夹保留 cookie 和临时 Internet 文件,以“帮助它们更快地加载”。用户可能最初运行了报告,然后为包含会话信息的报告创建了书签。

          解决方法:删除书签,然后清除 IE 中的浏览器历史记录 (CTL+SHIFT+DEL),确保取消选中“保留收藏夹网站数据”。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2018-03-31
            • 2021-04-24
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2017-11-09
            • 2017-01-01
            • 1970-01-01
            相关资源
            最近更新 更多