【问题标题】:Using SSRS line charts to graph time periods on the y-axis使用 SSRS 折线图在 y 轴上绘制时间段
【发布时间】:2009-03-05 21:04:05
【问题描述】:

我希望使用 SSRS 折线图来绘制作业的结束运行时间。我在 y 轴上使用运行时,在 x 轴上使用日期。该图看起来像一条扁平线,并且时间不会显示在 y 轴上,但会显示整数。

我还想在特定时间放一条目标线来显示我们的 SLA 时间。

这是我试图绘制的数据示例,但我想要一条线。

+-------+----------+
|   y   |    x     |
+-------+----------+
| 10:05 | 3/1/2009 |
| 11:00 | 3/2/2009 |
| 10:15 | 3/3/2009 |
+-------+----------+

+-------+----------+----------+----------+
| 11:00 |          |    x     |          |
| 10:45 |          |          |          |
| 10:30 |          |          |          |
| 10:15 |          |          |    x     |
| 10:00 |    x     |          |          |
+-------+----------+----------+----------+
|       | 3/1/2009 | 3/2/2009 | 3/3/2009 |
+-------+----------+----------+----------+

【问题讨论】:

  • 嗨 Lori,你使用的是什么版本的 SSRS?

标签: reporting-services charts


【解决方案1】:

假设您有带有日期和时间的表格时间。 声明报告参数@LimitHourParam 十进制 - 用于目标时间。 设置数据集查询:

SELECT Date, SUM(Hours) AS Hours, 'Actual Hours' AS LimitHour
FROM Times 
GROUP BY Date
UNION ALL
SELECT DISTINCT Date, @LimitHourParam AS Hours, 'Hours Limit' AS LimitHour
FROM Times 

因此,您将获得按日期分组的结果小时数以及每个日期唯一的小时数限制。

在报表页面中放置图表控件。

转到图表属性->数据

按“添加值”
擦除Label的值并将Value设置为

=Sum(Fields!Hours.Value)

转到“编辑图表值”对话框的“点标签”选项卡,选中“显示点标签”,将数据标签设置为

= String.Format("{0}:{1}",  (Fields!Hours.Value / 1) - (Fields!Hours.Value Mod 1), (Fields!Hours.Value Mod 1)*60/1 - (Fields!Hours.Value Mod 1)*60 Mod 1)

添加类别组,将“Group On”表达式设置为

=Fields!Date.Value

添加系列组,将“Group On”表达式和标签值都设置为

=Fields!LimitHour.Value

进入图表属性->X轴,设置标签格式dd/mm/yyyy

结果应如下所示:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-01
    • 1970-01-01
    • 2016-06-24
    • 2016-10-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多