SSRS超时已过期.操作完成之前经过的超时时间或服务器没有响应

use*_*329 6 sql-server bids reporting-services

我有一个包含多个报告的报告解决方案.到目前为止,我已经能够添加基于SPROC的数据集而没有任何问题.但是,当我尝试添加最新的数据集,并使用SPROC作为其查询类型时,当我单击刷新字段时,我收到以下错误:超时已过期.操作完成之前经过的超时时间或服务器没有响应.

我已经在数据源属性>编辑>测试连接中测试了数据库连接,它运行正常.

我在以下方面将超时时间增加到100:

  1. 数据源的连接字符串,即 - Connect Timeout = 100
  2. 工具>选项>数据库工具>查询和视图设计器.取消长时间运行查询设置为100.
  3. 工具>选项>数据库工具>表和数据库设计器>已检查'覆盖表设计器更新的连接字符串超时值.事务超时后设置为100

SPROC在SQL数据库中运行良好.大约需要55秒.

还有其他想法吗?谢谢.

更新:我现在无法使用SPROC添加任何数据集.甚至认为SPROC在SQL中都运行良好!!!!!!

Tom*_*any 5

如果使用报表生成器,则还可以在数据集中增加超时。

报表生成器中的数据集超时设置


Jay*_*Jay 1

报告中要记住的一点是,当它运行时,它将尝试运行所有数据集,以确保它们可运行,并且可以返回它们请求的数据。因此,通过单独运行每个过程,您实际上并没有重复 SSRS 正在尝试做的事情……而且说实话,不用费心。

您可以尝试在报告运行时运行 sp_who,或者甚至手动执行这些过程以查看它们共有哪些表。由于您的过程需要 52 秒才能返回其数据集,因此我假设它做了一些繁重的工作。如果没有查询,没有人能够知道确切的问题是什么。

我建议使用 NO LOCK 来查看是否可以解决您的问题。如果是这样,那么你的进程就会争夺数据并互相阻塞......可能会陷入无限循环。使用 NO LOCK 并不能解决问题。不过,请阅读它的作用并自行判断。