我在SSRS中需要一些帮助才能找到YTD列的YTD(%)..
我有SSRS 2008 tablix区域,其中列为州,类别,1月,2月,3月,...,12月,年初至今。这些列具有总和和百分比值,具体取决于行。当列为%时,我需要帮助来计算YTD。
示例:
国家类别1月2月3月...... YTD
MN A 200 200 0 ...... 400
MN B 21 12 0 ........ 33
MN A%12.5 12.5 0 ........ ??
对于上面的A,B,YTD只是添加报告项目1月+ 2月+ 3月+ ....如图所示将是400和33(假设只有1月和2月的实际值> 0)。
对于A%以上的行(??),由于这是一个百分比列,我的YTD应该是非空/非零列的平均值...在这种情况下(12.5 + 12.5)/ 2 = 12.5但是我无法找出每个类别(1月,2月等)的非空列的计数...我已经尝试过avg,count,sum等,但我没有得到正确的值。如果我能找出denomintor(将是1月,2月,...,12月的非空列的计数),那么问题就会解决,我可以这样做:
(Jan + Feb + March + ... + Dec)/ Count(Jan,Feb,Mar,..,Dec)
Count应该只返回非空/非零列的计数,这样我才能进行平均计算..请帮助。
答案 0 :(得分:0)
我不确定你想要什么。
如果你想要的只是找出最后一列中一行的平均值,你可以这样做:
像这样制作你想要平均的列的表达式:
Sum(Fields!Jan.Value + Fields!Feb.Value...+Fields!Dec.Value)/
Sum(IIF(IsNothing(Fields!Jan.Value),0,1) +
IIF(IsNothing(Fields!Feb.Value),0,1) +
.
.
IIF(IsNothing(Fields!Dec.Value),0,1)
)
所以,在分母中,你这样做:
Sum(1+0+1+1+0...+0)
即。如果Field不为null,则返回1,否则返回0