Условное форматирование / цвета в спарклайнах в SSRS

Я просмотрел несколько веб-сайтов, на которых все предлагают перейти в Данные диаграммы> Значения, а затем щелкнуть правой кнопкой мыши, чтобы изменить формулу атрибута "Цвет заливки" на формулу, которая определяет, как я хочу, чтобы цветовая схема выглядела, но я уже попробовал это и я не вернул то, что ожидал.

Мои данные (например, Fields!DailySalesGoalPassFail.Value) объединяются в Sparkline по Avg и классифицируются по EntryDate. Если выбрано одно местоположение, каждое из значений Pass/Fail будет равным "1" или "0" для любой заданной EntryDate, но если выбрано несколько местоположений, я хочу, чтобы Pass/Fail мог возвращать что-либо в между (например, ".5", если 1 из 2 магазинов в группе проходят).

Кроме того, я хочу иметь возможность закрасить узлы Sparkline зеленым, если он =1, красным, если =0, и желтым, если он где-то между ними, но каждый раз, когда я пытаюсь написать оператор Switch для обработки этого, и начальное значение равно 0, тогда вся строка красного цвета, даже если значение позже поднимается выше 0.

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

Что я делаю неправильно?

1 ответ

Решение

Я думаю твой Switch() зависит от неправильного Field, Потому что ваш Fields!DailySalesGoalPassFail.Value как вы сказали, сгруппированы по Avg и, скорее всего, число. Если твой Fields!DailySalesGoalPassFail.Value имеет, например, значения из 1 в 100 эта раскраска будет работать при выражении заполнения:

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

Я думаю, что вы на самом деле хотите, чтобы ваша искровая линия зависела от пройденного / неудачного значения В этом случае вы можете написать следующее в выражении заполнения (я не уверен, откуда берется ваше значение pass/fail. Я предполагаю, что это параметр сейчас):

=Switch(Parameters!PassFail.Value = 1, "Green",
        Parameters!PassFail.Value = 0, "Red",
        Parameters!PassFail.Value < 1 And Parameters!PassFail.Value > 0, "Yellow")
Другие вопросы по тегам