SSRS 基于相同数据类型的多条线 - 折线图

SSRS multiple lines based on same data type - Line Chart

我有一个 TSQL 查询,它为某些性能基准提供了一个月的数据。我在折线图中显示数据。现在我想在报告中添加更多参数,以提供选择两个不同月份的数据并将其显示在同一折线图中以进行比较的选项。我不确定如何开始。关于如何获取数据集并在折线图中显示的任何想法都会有所帮助。任何模拟预期结果的链接也会有所帮助。

编辑:我在同一个数据集中带来了两个月的数据,当我像@Hannover Fist 说的那样进行系列分组表达式时,我得到了下面的图表。但是当我用类别分组进行表达时,我不会得到重叠的图表,因为某些东西会随日期而变化!请指导我做错了什么!下面是我的预期图表。

注意:查询太大,出于安全原因,我不能在此处 post。如果您需要有关查询的任何信息,请告诉我。

如果您在查询中 return 两个月的数据,我认为它会按您想要的方式工作。

为每个日期添加一个参数,然后根据带有查询或数据集的参数向数据添加过滤器。

然后在您的图表中将月份作为 系列 添加,并 Group On

这样的表达式
=FORMAT(Fields!Your_Date.Value, "YYYY-MM")

您需要做的是:

1) 增加一组数据,可以定义月份参数的有效值范围。

2) 更改主数据集,将参数包含在WHERE条件中(单值或多值)

3) 编辑参数属性。

4) 在设计窗格中编辑报表字段。

您想在水平轴(类别组)上设置一组简单的日期,然后使用月份作为系列组。

如果可能,return 日期和月份作为数据集中的单独列。让数据库做数据库擅长的事情。以 AdventureWorksDW 为例,

select ..., 
datepart(day, fulldatealternatekey) as Day, 
left(datename(month, fulldatealternatekey), 3) as Month, 
sum(SomeValue) as SomeValue
from ...

然后在折线图中,将值设置为 Sum(SomeValue),将类别组设置为日,将系列组设置为月。那应该做得很好。它可能会尝试每 5 天(5、10、15 等)设置轴标签,但您可以通过转到水平轴属性中的轴选项并将间隔更改为 1(只需键入值替换自动)。

如果您无法更改数据集查询,则使用表达式来完成同样的事情:

  • 对于类别组,请使用您的日期。但随后在“图表”窗格中右键单击它并打开“类别组属性”。单击标签旁边的表达式按钮并将此表达式(将 SomeDate 替换为您的实际日期列)设置为

    =DatePart("d", 字段!SomeDate.Value)

  • 重复类别组的 Group On 表达式。

  • 接下来,将您的日期添加为系列组,但右键单击它并打开系列组属性。将 Label 和 Group On 表达式更改为

    =月份名称(月份(字段!SomeDate.Value))

  • 如有必要,设置月份的系列组排序。只需使用:

    =月份(字段!SomeDate.Value)

这是我得到的 - 我假设这就是您正在寻找的结构。你的问题有点不清楚,但这是我对你的要求的看法。