繁体   English   中英

Sharepoint SSRS空白报告,无错误

[英]Sharepoint SSRS blank report with no errors

我有一个运行在SharePoint(2010)集成模式下的IIS(7.5.7600.16385)上运行的SSRS(2008 R2)实例,并且有多个报告运行了大约10分钟,然后报告加载微调消失了,我们剩下了空白的白色屏幕。 日志中没有显示错误消息,有时存储过程此后仍在sql服务器上运行。

我确信这是某种超时,但无法确定在哪里。 这里所有的超时值是什么,以及如何更改每个超时值?

有许多超时设置。

如果您认为数据集正在超时,则可以在单个数据集上设置超时 在Visual Studio中打开数据集属性以进行设置。 如果要在服务器范围内设置它,也可以在RSReportServer.config中进行调整:

<Add Key="DatabaseQueryTimeout" Value="0"/> <!--None-->

您可以使用SharePoint报告列表中的操作菜单,从“ 报告属性”对话框中调整单个报告的报告执行超时。

对于Web服务器超时,可以在\\Program Files\\Microsoft SQL Server\\MSSQL.X\\Reporting Services\\ReportManager\\Program Files\\Microsoft SQL Server\\MSSQL.X\\Reporting Services\\ReportServer中的web.config文件中调整sessionState两个文件中的超时(对于ReportManager web.config)和ExecutionTimeout (通过执行IISRESET调整它们后重新启动IIS)

 <httpRuntime executionTimeout = "36000" />

但是,您的SQL查询不可能持续超过10分钟或会话超时。 尝试在Sql Server Management Studio中从报表中执行SQL查询,并查看查询需要花费多长时间。 我敢打赌,他们会持续数秒钟,而不是几分钟。 如果他们花了几分钟时间,请研究添加索引或查看执行计划,以查看是否可以优化查询以停止进行全表扫描。

因此,不可能通过增加数据集或服务器超时设置来解决此问题,您会遇到其他问题,而性能问题最可能的原因是参数嗅探。 发生的情况是Sql Server试图优化查询并将其完全弄乱,从而导致可怕的性能下降和超时。 我们需要解决此问题,而不是增加超时限制。

幸运的是,这很容易解决。 尝试其他答案中讨论的有关使用局部变量文本SQL表达式的技术,以避免参数嗅探问题,或者尝试在SQL查询的末尾添加OPTION (RECOMPILE)

您是否检查了ReportViewer.ServerReport.Timeout的默认值? 我相信它默认为600秒。

Change it 


    From:<asp:ScriptManager ID="ScriptManager1" runat="server">
    To:<asp:ScriptManager ID="ScriptManager1" runat="server" 
    AsyncPostBackTimeout="600">

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM