报告服务超时已过期

时间:2009-11-08 15:05:30

标签: sql sql-server reporting-services

我正在开发一个报告服务,同时还要查询获取:

  

报告处理期间发生错误。   调用的目标抛出了异常。   超时已过期。操作完成之前经过的超时时间或服务器没有响应。

我知道SQL服务器上的查询运行了两分钟。

我在web.config中设置了连接字符串,如下所示:

  

“数据源= servA;初始   目录= myPortal;集成   安全性=真;连接超时= 1000“

它对我不起作用。

3 个答案:

答案 0 :(得分:3)

您可以在连接字符串中指定connection timeout,但这只表示等待连接成功的时间,

您正在寻找的是command timeout。这指定SSRS将等待特定查询成功的时间。如果我没记错,您可以在command timeout设置中的每个报告中进行更改吗?或者它可能被称为execution timeout

答案 1 :(得分:1)

我如何使用BIDS 2008:

  1. 在“报表数据”窗格中,右键单击“数据集”,然后选择“数据集属性”。
  2. 在“数据集属性”模式窗口中“查询”选项卡的底部,设置“超时(以秒为单位)
  3. 的值

答案 2 :(得分:0)

请参阅此Link

完成Dataset.xsd的设计后,在Dataset.Designer.cs中找到以下代码:

protected global::System.Data.SqlClient.SqlCommand[] CommandCollection {
        get {
            if ((this._commandCollection == null)) {
                this.InitCommandCollection();
            }
            return this._commandCollection;
        }
    }

并将其更改为:

protected global::System.Data.SqlClient.SqlCommand[] CommandCollection
    {
        get
        {
            if ((this._commandCollection == null))
            {
                this.InitCommandCollection();
                _commandCollection[0].CommandTimeout = 0;
            }
            _commandCollection[0].CommandTimeout = 0;
            return this._commandCollection;
        }
    }

构建您的计划并享受。