如何在 SQL Server Reporting Services - SSRS 中将多个组分成 1 行

问题描述 投票:0回答:2

我创建了一个报告来显示一些数据,但我需要获取每个组字段值的总和。但到目前为止,我只能对一个字段进行总计。从下面的示例表中,我只能根据 UOM 或基本 UOM 进行求和。我无法同时做到这两点。计量单位和基本计量单位列表可能因数据而异。可以做成下面这样的结果吗?

股票日期 产品代码 产品名称 数量 马来西亚国立大学 基本数量 基础计量单位
23 年 5 月 12 日 P002142213 产品A 150 电脑 150 电脑
23 年 5 月 15 日 P032142432 产品B 200 电脑 200 电脑
23 年 5 月 18 日 P947289323 产品C 160 CB 80 巴尔
23 年 5 月 21 日 P012412323 产品D 250 CB 250 CB
23 年 5 月 24 日 P123412332 产品E 100 电脑 100 电脑
23 年 5 月 27 日 P124213232 产品F 260 CB 260 CB
总计 570 CB 80 巴尔
450 电脑 510 CB
450 电脑
sql-server reporting-services reporting ssrs-2014
2个回答
0
投票

假设您只有少量有限数量的 UOM 和基本 UOM 值,那么您可以将行添加到表底部(确保它们位于现有行组之外)。

然后您必须对每个文本框的标签(例如“CB”)和数量表达式进行硬编码。

例如您需要的 CB 总量

=SUM(IIF(Fields!UOM.Value = "CB", Fields!Qty.Value, 0))

对每个实例重复此操作。


0
投票

此答案使用合并单元格内的表格来实现非常接近您的要求的结果。

我首先复制您的数据,然后添加一个显示数据的简单表格。

然后,我在当前详细信息组之外添加了几行,以便这些行始终显示在主要数据下方。

第一个新行只是为了让我们可以控制详细数据和摘要数据之间的差距。

在第二个新行上,我合并了

Qty
UOM
列,并使行高更大(正常高度的两倍)。

然后我将一个表格插入到这个合并的单元格中。在该表内,我设置行分组并将其排序为

UOM
字段和
=SUM(Fields!Qty.Value)
作为值表达式。

然后,我对基本数量和基本计量单位列重复此过程。

然后,我通过删除新行的边框来清理格式。

最终结果是这样的...

这里有一个简短的 GIF 来展示这个过程。 (右键单击并在新窗口中打开以最大化观看)。

© www.soinside.com 2019 - 2024. All rights reserved.