在SSRS中按组内的日期有条件地计算行数吗?

时间:2019-02-13 15:35:48

标签: reporting-services

我正在尝试计算组中满足SSRS中特定条件的行数。

在我的Tablix中;我有一个类别组。在此类别组中,有一个Create_date列。我要计算Create_date在当前月份内的组中的行数。

=SUM(IIF(ReportItems!Inital_Date.Value > 
DATEADD(mm, DATEDIFF(mm,0, Today()), 0) 
AND ReportItems!Inital_Date.Value > 
DATEADD(dd,-1,DATEADD(mm,1,DATEADD(mm, DATEDIFF(mm,0, Today()), 0)))
, 1, 0))

我也尝试指定字段!而不是ReportItems !;我想我可能需要适当指定小组的范围?

这给了我一个错误: 汇总功能只能用于页面页眉和页脚中包含的报表项目。

我也包括了一张tablix布局的图像。

Tablix Layout

2 个答案:

答案 0 :(得分:0)

我无法在环境中对此进行测试,但是如果您只是想针对当前月份进行测试,则可以将表达式简化为

=SUM(IIF(MONTH(Fields!Initial_Date.Value) = MONTH(Today()),1,0))

作用域将与您放置表达式的作用域相同,因此,如果它在行组中,则SUM将针对该行组中的所有行进行操作,这是默认行为。

答案 1 :(得分:0)

在您的表情中修改为:

= IIF(MONTH(Fields!Initial_Date.Value)= MONTH(Today())AND(YEAR(Fields!Initial_Date.Value)= YEAR(Today())),1,0)