SSRS在同一个表中汇总数天和月份的数据

时间:2018-02-08 15:57:21

标签: reporting-services dataset report tabular

假设以下数据集: - 产品 - 约会 - produceUnit

我怎样才能实现以下故事:

产品|今天生产单位的总和|本月生产单位的总和

我不想要群组记录,所以如果在数据集中有10个产品我想要全部显示它们。

例如: 输入数据集:

+--------+-------------+---------------+
|Product | date        | produced unit |
+--------+-------------+---------------+
| M&Ms   | 2018-02-08  |       5       |
+--------+-------------+---------------+
| M&Ms   | 2018-02-08  |       2       |
+--------+-------------+---------------+
| M&Ms   | 2018-02-28  |       3       |
+--------+-------------+---------------+
| Kit Kat| 2018-02-08  |       10      |
+--------+-------------+---------------+
| Kit Kat| 2018-02-28  |       10      |
+--------+-------------+---------------+

Today is 2018-02-08
Output:
+--------+-------------------------------+---------------------------------+
|Product | sum of Produced Unit this day | sum of produced Unit this Month |
+--------+-------------------------------+---------------------------------+
| M&Ms   |             7                 |                10               |
+--------+-------------------------------+---------------------------------+
| M&Ms   |             7                 |                10               |
+--------+-------------------------------+---------------------------------+
| M&Ms   |             7                 |                10               |
+--------+-------------------------------+---------------------------------+
|Kit Kat |            10                 |                20               |
+--------+-------------------------------+---------------------------------+
|Kit Kat |            10                 |                20               |
+--------+-------------------------------+---------------------------------+

1 个答案:

答案 0 :(得分:0)

  1. 将计算字段添加到数据集中,该数据集获取生产日期的月份。在这个例子中,我使用了=Month(Fields!Date.Value),但是如果你过了几年,你可能需要使用每个月的第一天作为你的共同价值。

  2. 添加计算字段以获取今天生成的数字。例如: =IIf(Fields!Date.Value = "2/8/2018", Fields!Produced.Value, Nothing)

  3. 创建一个新表。将“详细信息”组更改为按月分组。添加按产品分组的父行组。

  4. “今日制作单位总和”的表达式如下: =Sum(Fields!Produced_Today.Value)

  5. “本月生产单位总和”的表达式如下: =Sum(Fields!Produced.Value)

  6. 以下是结果示例: enter image description here

  7. 说明:该表首先按产品分组,然后按月分组。如果您不想显示月份和日期列,则可以隐藏它们。今天产生的数量正在数据集级别进行过滤。本月产生的金额将在月份组的范围内汇总。

    显然,这是一个简单的例子,但您可以采用此处显示的原则来考虑更多变量,例如数据集中的多个月。