2012-12-27 345 views
1

我在这里和网络上的其他地方搜索过,并没有发现这个确切的问题/解决方案。如何计算MS reportviewer/rdlc中的平均计算平均值?

我正在使用MS reportViewer构建rdlc报告 - 我创建的报告基于现有电子表格,其中6个月的平均价格是针对每个月单独计算的,然后计算这些价格的平均值作为6个月期间的平均价格。无论我是否同意这种方法,或者它是否正确都无关紧要,我只需要知道如何让rdlc来做到这一点。

例如:

月价格1 Price2三角洲

月 - 12 $ 31.54 $ 30.03 $ 1.51

军12 $ 36.27 $ 34.60 $ 1.67

07月12 $ 44.19 $ $ 42.00 2.19

八月-12 $ 38.96 $ 37.06 $ 1.90

九月12 $ 36.89 $ 35.08 $ 1.81

OCT-12 $ 35.57 $ 33.97 $ 1.60

平均$ 37.24 $ 35.46 $ 1.78

(对不起,缺乏屏幕剪断的,我是新的,系统不会让我发表图片...)

我已经创建了一个tablix来完成每月的平均值计算 - 我使用表中的一个组将6个月的数据按月分组(然后隐藏每小时的价格数据,以便您只看到一个月总的行),但我卡在如何计算这是每列的平均表的底行。 (平均值的平均值是不一样的,平均的所有6个月价格从底层的数据 - 这是我在这个过程中...督察已经知道,那是我的第一个解决方案:-))

我试图做的就是平均数的平均值为给月份总细胞的名称,MonthlyAvgPrice1,然后在最后一行,用这个表达:

AVG(reportitems MonthlyAvgPrice1.Value!)

正如我有点期待,这并不工作,当我尝试运行报表,它就会生成错误说“为textrun值表达式‘Price1PeriodAvg.Paragraphs [0] .TextRuns [0]’使用聚合函数在报告项目上ons只能用于页眉和页脚中包含的报告项目。“

Hopfully我已经很好地解释了这一点,没有人知道如何做到这一点?

谢谢! -JayG

+0

我从来没有使用AVG函数,但我可以在[MSDN库]参见(http://msdn.microsoft.com/en-us/library/ms159806%28v=sql。 90%29.aspx),你可以指定你的函数的范围。范围[在这里解释](http://msdn.microsoft.com/en-us/library/ms159673%28v=sql.90%29.aspx) –

+0

从数据显示你需要的平均在最后一行中的每一列中的每一列..是什么意思? – Irfan

回答

0

其实它不是来自这个问题清楚,你怎么样,特别结合了数据报告的项目,但是从给定的信息,我的理解是,你可以

尝试这样的:

  • 右键单击Tablix行,插入下面
  • 一个行中的单元格,你想拥有这个平均平均值的插入下面的前PRESSION

    =Sum(Fields!Price1.Value)/6

    ,同样插入表达=Sum(Fields!Price2.Value)/6
    =Sum(Fields!Delta.Value)/6在你要显示的平均值


当然其他细胞,你会改变字段名称价格1,Price2等到您从中获取值的字段。

HTH

+0

感谢您的回复密码,这并不能很好地解决问题,因为有数千个价格值按月分组和平均。表中的那些行是隐藏的,因为我只需要报表中的最终月平均值。因此,有一个父组按月进行分组,然后每小时详细信息行(隐藏)包含计算每月平均值的总计行(可见),然后是总计行,位于父组之外,我尝试计算平均月平均值。 – JayG

+0

我的意思是你可以使用相同的表达式来获得平均值,然后像'= sum(urexpresssion)/ 6'这样做,把它放在单元格中,你应该得到结果.. ....如果它不清楚,那么你只需右键单击其中有你的月平均值的单元格,然后检查表达式,然后使用与上面所述相同的内容。首先尝试,它应该工作! – Irfan

+0

感谢您的建议密码,事实证明,正确的计算是整体平均,所以我不需要弄清楚如何做平均的平均值。真的很感谢您花时间回复! – JayG