更改渲染显示以水平显示图表(x 列数)

Change rendered display to show chart horizontally (x number of columns)

我在 SSRS(我相信是 2014 版)中得到了一份报告,它在 tablix 中有一个图表,如图所示:

当我点击 "View Report" 时,它显示如下:

注意它是如何垂直向下显示每个图表(每个细节)的。有没有简单的方法或 属性 我可以用来表示水平显示 x 列数。因此,不是每行一个图表,而是在它旁边显示下一个图表……水平方向依此类推,直到它达到 "x" 数字。所以它会显示 WP 10.45,然后在它旁边显示 WP 3.05 等的图表。

tl;dr:我最终复制了 tablix,然后设置了过滤器。

技术细节

对于其他想要这样做并且需要更好解释的人,我正是这样做的。

还记得我在最初的问题中提到的我第一次创建的 tablix。 这个:

我继续复制整个 tablix(作为另一个 tablix)并将它们都放在 Reporting Services 中的 rectangle 对象之上。它们是完全相同的 tablix 报告内容:

很难看到,但它们都在一个矩形对象的顶部。话虽如此,然后我转到了我的 tablix 的属性并转到了过滤器部分:

注意表达式,当我单击表达式按钮时,这是我输入的表达式:

=Fields!SortOrder.Value Mod 2

现在您可能会问 SortOrder 到底是什么,嗯,这是针对我的业务案例的。我们的每个 "milestones" 都有一个与之关联的排序顺序。我们不想按字母顺序排序,因为 A-Z 无关紧要。我们必须提供一列以确保我们的里程碑正确排列,我们 table 中的排序顺序就是这样做的。

现在您可能也想知道为什么 Mod 2。好吧,只是因为我们想并排显示 2 个图表。如果您想显示 3 个图表,您可以使用 Mod 3 并复制 tablix 3 次。如果您想显示 4 个图表,您可以使用 Mod 4 并复制 tablix 4 次,等等

在我的案例中,通过结合使用 Mod 2SortOrderSortOrder 字段只是一个整数)。我最终得到的结果为 0(完全除以)或值为 1(我得到余数)。因此,我的过滤器成立,因为我的 tablix 之一的过滤器值为 0,而另一个的过滤器值为 1,如图所示:

结果非常好......我们最终得到了这个:

将其与我最初在问题中提出的内容进行比较,您会发现这实际上要好得多。我也可以在 RS 中使用列 属性 但这看起来不太好。