3

我正在构建一个基本上是指示一天中不同状态的时间线的报告例如,假设我有这些数据

TIME                    |  STATUS
________________________|________   
2011-07-21 11:04:00.000 | Working
2011-07-21 11:05:00.000 | Working
2011-07-21 11:06:00.000 | Working   
2011-07-21 11:07:00.000 | Resting   
2011-07-21 11:08:00.000 | Resting
....    
2011-07-21 12:00:00.000 | Resting   
2011-07-21 12:01:00.000 | Working   
2011-07-21 12:02:00.000 | Working   
...

我想生成某种图表,比如按时间顺序排列的水平条,像这样

在此处输入图像描述

是绿色工作时间和红色休息时间=)

我正在使用报告生成器,但我现在不知道该去哪里

我尝试使用条形图,但它倾向于“累积”状态,出现一个大的绿色条,然后,其余的,一个大的红色条......

任何提示从哪里开始?

Tks

4

2 回答 2

4

我知道这个线程很旧,但我在构建这个确切的报告时遇到了它。我成功了,这很甜蜜。

使用范围条形图。

在数据系列中,将 Top 值设置为 EndDate 或 (Duration + StartDate),将 Low 值设置为 StartDate。单击填充并指定并使用上面 Kevin Fisher 的 SWITCH 示例作为填充颜色。

获得所需外观的关键是通过系列属性窗口。在 CustomAttributes 下,设置 DrawSideBySide=False。

下面的链接提供了一些甘特风格的示例,可能有助于进行额外的调整。

http://pnarayanaswamy.blogspot.com/2010/09/range-bar-chart-gantt-chart-using-ssrs.html

http://thinkepm.blogspot.com/2012/05/creating-portfolio-timeline-using-ssrs.html

希望这对那里的人有所帮助,当然缺乏这方面的例子。

于 2012-06-13T20:23:26.567 回答
0

最简单的方法可能是单系列面积图,其中 Y 值是静态设置的(例如 1)。将您的 X 值设置为时间字段。在系列属性中,您可以将填充颜色设置为表达式:

=SWITCH(Fields!Status.Value = "Working", "Green", Fields!Status.Value = "Resting", "Red")

这应该给你一个恒定的高度栏,根据状态值改变颜色。调整轴并调整格式,你就在那里!唯一的麻烦可能是你现在拥有的边界,但有可能......

希望这可以帮助。如果您有任何问题,请告诉我。

于 2011-07-25T20:55:39.897 回答