SSRS 迷你图中的条件 Formatting/Colors

Conditional Formatting/Colors in Sparklines in SSRS

我查看了几个网站,它们都建议进入“图表数据”>“值”,然后右键单击以将“填充颜色”属性的公式更改为定义我希望配色方案外观的公式,但我已经试过了,但我没有得到我预期的结果。

我的数据(例如,Fields!DailySalesGoalPassFail.Value)按 Avg 聚合在迷你图中,并按 EntryDate 分类。如果选择了一个位置,对于任何给定的 EntryDate,每个 Pass/Fail 值都将是“1”或“0”,但是如果选择了多个位置,我希望 Pass/Fail 能够return 介于两者之间的东西(例如,如果组中 2 家商店中有 1 家通过),则为“.5”。

此外,我希望能够在 =1 时将迷你图的节点着色为绿色,如果 =0 则为红色,如果介于两者之间则为黄色,但每次我尝试编写 Switch 语句来处理该节点时并且起始值为0,则整条线为红色,即使该值后来攀升至0以上。

=Switch(
        Fields!DailySalesGoalPassFail.Value = 1, "Green",
        Fields!DailySalesGoalPassFail.Value = 0, "Red",
        true, "Yellow"
        )

我做错了什么?

我觉得你的Switch()依赖错了Field。因为您的 Fields!DailySalesGoalPassFail.Value 正如您所说的那样按 Avg 汇总,很可能是一个数字。例如,如果您的 Fields!DailySalesGoalPassFail.Value 具有从 1100 的值,此着色将适用于填充表达式:

=Switch(Fields!DailySalesGoalPassFail.Value < 50, "Green", 
        Fields!DailySalesGoalPassFail.Value > 50, "Red")

我认为您真正想要的是让您的迷你图取决于 pass/fail 值。在这种情况下,您可以在填充表达式中写入以下内容(我不确定您的 pass/fail 值来自何处。我现在猜测它是一个参数):

=Switch(Parameters!PassFail.Value = 1, "Green",
        Parameters!PassFail.Value = 0, "Red",
        Parameters!PassFail.Value < 1 And Parameters!PassFail.Value > 0, "Yellow")