2

我有包含名称、描述和消息的列。为了在 ssrs 中查看这些列,应用了日期过滤器。但是,当日期很短时,我会收到错误消息。错误:由于达到资源限制,提供程序终止了执行。我的问题是:是否可以将数据过滤器减少到数据库中存在的最后日期。这样,数据过滤器可以应用于数据库中最后一个存在的日期,然后将消除错误。

提前致谢。

编辑1:

时间戳 | 姓名 | 说明 | 留言 |

2011 年 11 月 12 日上午 10:50:51 | EBKBH 2349| 泵|功能性|

2012 年 1 月 8 日上午 10:50:51 | ZDFWH 2989| 传感器 | 关闭 |

假设 1/08/12 是数据库中的最后一个日期,但在过滤器中我选择了 01/01/13 - 02/02/13 之间的日期,然后应用程序运行了很长时间,然后它给了我我之前提到的错误

4

1 回答 1

1

当您可以在 SSRS 中选择多个数据源时,我不明白您为什么要执行 Openquery。

我会做一些比这更简单的事情。

  1. 为您的表格日期设置一个数据源,如果您的实际数据在其他地方,则设置另一个数据源。
  2. 设置一个数据集,将其称为“MaxDate”,用于最后一个日期,例如:

    Select Max(Date) as MaxDate
    From (tableName)
    

    这为您提供了听起来像您想要的整个表格的最大日期。

  3. 在 2 中设置获取此数据集的参数。通过选择参数以使用“从查询中获取值”。选择它以使用 MaxDate 作为 id 和标签。

  4. 现在为您的主查询设置一个数据集,但是您喜欢并执行如下谓词:

    Where dt between @Start and @MaxDate
    
  5. You can set up the @Start parameter with whatever you want for the date values but the @MaxDate is bound to a max date you specified.

** Optional: You set another Date field as @End and just default the value of the @MaxDate to it if you want the flexibility to not HAVE TO use the @MaxDate. You would simply create a third variable, @End, and then in the 'Default Values' pane choose 'specify values'. Hit the 'Fx' (expression) button, and then choose Parameters!MaxDate.Value and this would DEFAULT it to the max date. But you could choose a prior date as well.

I usually set up most of my reports up with defaults for dates from a shared dataset to keep them all running on set date ranges.

于 2013-02-12T17:06:18.070 回答