reporting-services - 如何在 SSRS 报告中设置动态轴单位?
问题描述
我有一个包含以下格式数据的数据集:您在右侧看到的图表是 SSRS 报告中使用的折线图。这是您在下面看到的示例数据。SSRS 报告中的图表包含月数据(与此处的日数据相反)我需要动态设置轴(Y 轴数字),以便当数字更改时,所述图表也会更新,而无需手动更新 Y 轴.
我知道我可以设置折线图的垂直轴属性,然后转到“最小值”并编写一个表达式以最小化一列,但我不确定如何处理 3 列的 MIN 函数(即 5 年以下,5- 10 年和 10 年以上)
TL;DR:我需要更改垂直轴以使最后 3 列组合的 MIN -5 值(在下图中)和这些列的 MAX +5 值再次结合。因此 MIN 应为 -5(即 0-5),MAX 应为 48(43+5)
解决方案
我假设将 Y 轴最小值和最大值设置为 Auto 不适合您的情况,无论出于何种原因?
可能有更好的方法来做到这一点,但这是我的想法......
=
IIF(
IIF(
MIN(Fields!ColA.Value) < MIN(Fields!ColB.Value),
MIN(Fields!ColA.Value),
MIN(Fields!ColB.Value)
)
< MIN(Fields!ColC.Value),
IIF(
MIN(Fields!ColA.Value) < MIN(Fields!ColB.Value), MIN(Fields!ColA.Value),
MIN(Fields!ColB.Value)
)
, MIN(Fields!ColC.Value)
) -5
和...
=
IIF(
IIF(
MAX(Fields!ColA.Value) > MAX(Fields!ColB.Value),
MAX(Fields!ColA.Value),
MAX(Fields!ColB.Value)
)
> MAX(Fields!ColC.Value),
IIF(
MAX(Fields!ColA.Value) > MAX(Fields!ColB.Value), MAX(Fields!ColA.Value),
MAX(Fields!ColB.Value)
)
, MAX(Fields!ColC.Value)
) +5