【发布时间】:2014-02-19 02:29:46
【问题描述】:
我是报表生成器的新手,我将它与 SharePoint 2010 一起使用来创建包含多个列表的报表。我有一个数据集,其中包含一个日期时间字段列,我需要对其进行查询以限制拉回报告的行。我认为过滤器可以解决问题......但是我似乎无法找出只提取我需要的东西的正确方法。 我需要 orderstatus 已完成且 date1 为空或已推迟到 2015 年的所有行。
示例数据:
ID DATE1 OrderStatus
1 Empty Completed
2 Empty Not Started
3 12/01/2012 Completed
4 03/05/2013 Completed
5 08/21/2014 Completed
6 12/31/2014 Completed
7 01/07/2015 Completed
8 01/08/2015 Not Started
9 01/31/2015 Completed
在组属性中,我添加了 OrderStatus (Text) = Completed 的过滤器,这有效,但我还需要所有日期为空的行(或 1960 年之前的任何内容)或年份为 2015 年且 orderstatus 已完成的日期。 从上面的数据中,我希望在我的报告中看到以下行: 1、7、9
有没有更好的方法来添加 OR 选项,当我将 fx 用于表达式或值时,我得到 rsfilter 错误。 这是第一个过滤器:
Expression OrderStatus (Text)
Operator =
Value Completed
这是我添加的第二个过滤器:(此过滤器收到错误,不会处理)
Expression Date1 (Date/Time)
Operator =
Value [Expr] =(Fields!Date1.Value) < 12/01/1960 Or (Fields!Date1.Value) > 12/31/2014
我尝试了使用 OrElse、Xor、IsNothing、多个 Ands 等的不同方法...在查询级别进行行和报告级别过滤,但仍然得到类似的结果。 有人能指出我实现最终目标的正确方向吗?我在 Microsoft 中查看过,他们的示例没有 1 列需要空白和包含在结果集中的日期范围的场景。
我已按照指示更正了上述语法错误,但仍有 RSFilterProcessError。我会看看其他例子。该工具无法让我轻松复制过滤器代码并粘贴到此处。欢迎所有建议。
【问题讨论】:
-
我更正了语法并收到了类型错误,因此我修改了表达式以仅计算 并休了一年,以便类型兼容。现在我收到以下错误............无法评估分组“Details1”的 FilterValue。 (rsFilterEvaluationError)
标签: sql sql-server reporting-services reportbuilder3.0