SSRS集团就多个colums,总数和扩展

时间:2016-07-12 14:21:21

标签: reporting-services ssrs-2008

在ssrs中,我有一个来自查询(mssql db)的数据集,它返回三列:

数据集1

timestamp
customer
product

我正在尝试显示一个总计按时间戳(仅限日期)和产品的表格,并且时间戳在日期折叠。见例1。

Date                   Customer      product    total
+ 07/12/2016           Max           Fork       5
+ 07/12/2016           Max           Spoon      4
+ 07/10/2016           Jim           Knife      11
+ 06/02/2016           Steve         Fork       6

允许用户展开日期以查看确切时间戳的行,例如......

Date                   Customer      product    total
- 07/12/2016           Max           Fork       5
 07/12/2016 16:25:12   Max           Fork       1
 07/12/2016 13:11:02   Max           Fork       1
 07/12/2016 12:45:45   Max           Fork       1
 07/12/2016 10:33:20   Max           Fork       1
 07/12/2016 08:25:55   Max           Fork       1
+ 07/12/2016           Max           Spoon      4
+ 07/10/2016           Jim           Knife      11
+ 06/02/2016           Steve         Fork       6

我得到的作品在这里和那里工作,但不是全部在一起。任何帮助,将不胜感激。我从头开始创建表并且很复杂。谢谢。

1 个答案:

答案 0 :(得分:2)

我从这个样本数据集开始

Date    Customer    Product
2016-07-15 02:14:15.777 Max Fork
2016-07-15 03:14:15.777 Max Fork
2016-07-15 04:14:15.777 Max Fork
2016-07-15 05:14:15.777 Max Fork
2016-07-15 06:14:15.777 Max Fork
2016-07-15 03:14:15.777 Max Spoon
2016-07-15 04:14:15.777 Max Spoon
2016-07-15 05:14:15.777 Max Spoon
2016-07-15 06:14:15.777 Max Spoon

以下是我的意思

从报表上的空白表开始,设置其数据集(我的只是DataSet1)。

现在首先放入详细信息行。您没有表明您正在从数据库返回指标,因此我假设每条记录都是1(?)。我以这种方式设置表格:

enter image description here

这就像这样呈现

enter image description here

接下来,我们要创建一个父组。选中该表后,右键单击“详细信息”行组,然后选择添加组>家长小组......

在“分组依据”框中,put = 1。我们稍后会改变这个。选中“添加组头”。单击“确定”。

enter image description here

这将在左侧添加一个我们不想要的新列,因此您可以删除该列(但只删除列,而不是组!)。

它最终应该是这样的:

enter image description here

在“行组”区域中,双击新组以打开“组属性”。在Group On部分中,将表达式从我们之前放入的“= 1”更改为此

=FORMAT(Fields!Date.Value, "MM-dd-yyyy")

接下来,将客户和产品添加为其他分组列,然后单击“确定”。

enter image description here

现在回到表中,将组的Date列单元格值设置为用于对其进行分组的相同表达式:

=FORMAT(Fields!Date.Value, "MM-dd-yyyy")

客户和产品相同,但在“总计”列中,将表达式设置为

=COUNT(1)

enter image description here

这是迄今为止的预览

enter image description here

剩下要做的就是折叠组并制作它们以便切换它们。

单击要作为切换的文本框,并记下文本框的名称。对我来说,它是Textbox68。

再次双击详细信息行组以打开属性。转到可见性部分。将其设置为“隐藏”,然后选中“此报表项可以切换显示:”。选择适当的文本框(在我的例子中是Textbox68)

这是预览

enter image description here