根据日期字段过滤 Tablix
Filtering Tablix based on date field
我有一份报告显示 returns 基本数据行。我需要对此进行过滤,只获取昨天的数据。我正在考虑向 tablix 添加过滤器,选择日期字段,将运算符值设置为 =,然后使用 Today(),但似乎无法使用 -1 或类似的东西来操作 Today()。
欢迎提出任何其他表达建议。
另外,对于同一个数据集,只要另一个日期字段不是同一日期,我就需要根据一个提交日期过滤昨天。例如,修改日期是昨天,但创建日期不同。
有几种方法可以实现这一点。您可以使用两个过滤器通过过滤器完成此操作,第一个 > dateadd("d",-1,Today())
和第二个 < Today()
。但我建议在 SQL 中使用参数,而不是在报告阶段使用。在您的 SQLs WHERE 子句中,您可以添加
WHERE ...
And
[date field] BETWEEN @StartDate and @EndDate
然后您可以在报告@StartDate 和@EndDate 中创建两个 Date/Time 类型参数,并根据需要使用它们来操作数据。然后,您可以将这些参数的默认值设置为您想要的任何值,当 运行 生成报告时,它将为您(或您的最终用户)提供一个日历,供您选择 you/they 喜欢的任何日期范围。同样,如果您只需要 "yesterdays" 数据,您可以将默认的 @StartDate 设置为 =dateadd("d",-1,Today())
并将您的 @EndDate 默认设置为 =Today()
这样,您的无关数据将在 SQL 处被删除级别意味着您不会浪费资源来导入比您需要的更多的数据,并且如果您想要针对不同日期范围的一次性 运行 报告,则不必费力地更改过滤器。
我有一份报告显示 returns 基本数据行。我需要对此进行过滤,只获取昨天的数据。我正在考虑向 tablix 添加过滤器,选择日期字段,将运算符值设置为 =,然后使用 Today(),但似乎无法使用 -1 或类似的东西来操作 Today()。
欢迎提出任何其他表达建议。
另外,对于同一个数据集,只要另一个日期字段不是同一日期,我就需要根据一个提交日期过滤昨天。例如,修改日期是昨天,但创建日期不同。
有几种方法可以实现这一点。您可以使用两个过滤器通过过滤器完成此操作,第一个 > dateadd("d",-1,Today())
和第二个 < Today()
。但我建议在 SQL 中使用参数,而不是在报告阶段使用。在您的 SQLs WHERE 子句中,您可以添加
WHERE ...
And
[date field] BETWEEN @StartDate and @EndDate
然后您可以在报告@StartDate 和@EndDate 中创建两个 Date/Time 类型参数,并根据需要使用它们来操作数据。然后,您可以将这些参数的默认值设置为您想要的任何值,当 运行 生成报告时,它将为您(或您的最终用户)提供一个日历,供您选择 you/they 喜欢的任何日期范围。同样,如果您只需要 "yesterdays" 数据,您可以将默认的 @StartDate 设置为 =dateadd("d",-1,Today())
并将您的 @EndDate 默认设置为 =Today()
这样,您的无关数据将在 SQL 处被删除级别意味着您不会浪费资源来导入比您需要的更多的数据,并且如果您想要针对不同日期范围的一次性 运行 报告,则不必费力地更改过滤器。