mar*_*234 8 scope reporting-services
我认为这是一个相当简单的问题,但不能为我的生活找出如何做到这一点(SSRS 2008 R2).我正在使用Tablix,因为我需要显示详细数据(而不仅仅是聚合)
我有数据行(运费)和工作成本分配
报告中的(删节)数据是
TrackNo ShipCost NoJobs JobNo Job Cost T1 10.00 1 J1 10.00 T2 10.00 3 J2 3.33 T2 10.00 3 J3 3.33 T2 10.00 3 J4 3.33
因此,TrackNo T1可能有1个与之关联的作业,而TrackNo T2可能有3个作业相关联.然后,我支付了各种工作的成本.如果每件货物的价格为10美元:
我想要一个这样的下钻报告:
TrackNo Ship Total No. Jobs Job No Job Total + T1 10.00 1 J1 10.00 + T2 10.00 2 J2 3.33 J3 3.33 J4 3.33
在我的报告中,第1组正在追踪否; 第2组(儿童组)是工作号码.
TrackNo JobNo
报告中的发货总数为 First(Fields!ShipTotal.Value)
我想总结整个报告的ShipTotal(不是总计工作总数,因为它们有舍入错误:例如3.33*3 = 9.99)
如何将针对组1(First(Fields!ShipTotal.Value)
)显示的值相加?我在想范围是方法,但我迷路了.
Jam*_*e F 17
这个问题经常被问到旧版本的SSRS,所以很高兴回答一个支持你需要的功能的最新版本.SSRS 2008R2引入了对聚合聚合的支持.
在报告的总框中,将表达式设置为:
=SUM( MAX(Fields!ShipTotal.Value, "TrackNo"), "DataSetName")
Run Code Online (Sandbox Code Playgroud)
正如您所提到的,范围是其中的关键部分.上面的表达式表明SSRS应该为每个"TrackNo"组取第一个ShipTotal,并为数据集中的每个TrackNo组添加它们.(当然,在那里替换你的数据集名称.)
获得此结果的另外两种方法也适用于早期版本的SSRS: