我有一个数据集,其中包含3年的数据,并且我只想获取Tablix的数据集中的最新年份,在这种情况下为2019年。
在这种情况下,我只想按等级总计(计数)发生的IncidentID的数量。
数据集:
所需结果:
我不确定是否要对“组属性”进行过滤,并尝试执行“最大日期”或使用其他功能。每年数据集都会添加一个新的年份,这些年份不是硬编码的。
谢谢。
答案 0 :(得分:1)
您可以使用这样的表达式来获取条件计数:
const input = "./index.js mongodb://localhost:27017/docs find betty";
const regex = /(mongodb:\/\/\w*(\:\d{1,5})?\/(\w*))/;
const url = input.match(regex)[1];
const db_name = input.match(regex)[3];
console.log(url);
console.log(db_name);
这将检查每个组中的最大年份。您可以在=Count(IIf(Fields!SchoolYear.Value = Max(Fields!SchoolYear.Value, "GradeRowGroup"), 1, Nothing))
函数中将行组或整个数据集用于合并范围。对于学年与最大值匹配的行,Max
语句返回1。然后IIf
只是汇总它们。
答案 1 :(得分:0)
我认为有两种实用的方法:
您可以将学年作为参数。如果您希望(默认情况下)打开实际年份,可以转到学年参数右键单击>参数属性>默认值>指定值。应该是这样的:
[School Year].[Year].&[2018]
将上面的表达式更改为以下内容:
=“ [学年]。[年份]。&[”&CStr(Year(Now()))&“]”
通过这种方式,默认情况下会以实际的学年打开报告,您还可以选择其他学年以获得信息。在tablix中,只需添加Count()
和Sum()
以及您需要的其他所有内容。
或者您可以在Tablix中添加一个过滤器(这是更静态的),例如:
'Expression
=Fields!SchoolYear.Value = Year(Now()) 'Integer
=Fields!SchoolYear.Value = CStr(Year(Now())) 'String
'Type
Boolean
'Value
True
答案 2 :(得分:0)
一个同事帮助我解决了这个问题。我正在使用数据栏来显示汇总,他说要在“图表数据”上放一个表达式,这样就可以了。
=Sum(IIF(MAX(Fields!SchoolYear.Value)=Fields!SchoolYear.Value,Fields!NumDays.Value,0))