【问题标题】:SSRS - dynamically restructure dataset for chartSSRS - 动态重组图表数据集
【发布时间】:2018-03-27 09:25:12
【问题描述】:

我正在尝试构建一个条形图来显示如何使用哪些药物来治疗某些病例。这是获得所需图表类型所需的数据形状。

drug    case 1  case 2   case 3
X       100     300      250
Y       200     150      150
Z       300     50       300

问题在于数据保存在实际数据集中,如下所示,因为表中的每一行都用于不同的报告。

 X case 1   X case 2    X case 3    Y case 1    Y case 2    Y case 3    Z case 1    Z case 2    Z case 3
100         300         250         200         150         150         300         50          300

我尝试过使用这种格式的数据,但它会产生令人困惑和不愉快的图表。由于此报告将针对我的数据源的所有行运行,我需要能够动态地重组自身(或创建辅助数据源)以允许这种情况发生。

这在 SSRS 中真的可能吗?

【问题讨论】:

  • 你能发布你到目前为止的尝试吗?

标签: reporting-services charts reportbuilder ssrs-grouping


【解决方案1】:

我会在 SQL 中执行此操作。

选项1

如果您可以返回构成您描述的数据集的原始数据,请以格式使用该数据

[DrugName] [CaseNumber] [Value]
   X             1       100
   X             2       300
   X             3       250
   Y             1       200
   Y             2       150
   Y             3       150
   Z             1       300
   Z             2        50
   Z             3       300

您的图表可以将病例和药物作为系列和类别(或者可能反过来)

选项2

如果您无法获取原始数据,那么您将不得不对您拥有的数据集进行 UNPIVOT(我假设这里是 SQL Server..)

查看 UNPIVOT 运算符

https://technet.microsoft.com/en-us/library/ms177410(v=sql.105).aspx

一旦你把它转变成这样的东西......

[DrugCaseNum] [value]
'X Case 1'     100
'X Case 2'     200
etc...

然后您可以将其用作子查询并将 DrugCaseNum 列拆分为其组成部分。

【讨论】:

  • @AlenSchofield,最终我确实返回并创建了一个辅助数据集,该数据集创建了每一行,然后将它们联合在一起。凌乱,但我可以使用参数过滤到正确的行。虽然这个枢轴选项很有趣。
猜你喜欢
  • 2015-10-17
  • 1970-01-01
  • 2017-11-11
  • 1970-01-01
  • 2023-03-14
  • 2019-09-30
  • 1970-01-01
  • 1970-01-01
  • 2021-03-26
相关资源
最近更新 更多