16

Я пытаюсь написать выражение поля для ячейки в моем отчете, где мне нужно изменить цвет фона ячейки в зависимости от значения строки в ячейке. Пример: если столбец имеет значение «Approved» в нем, ячейка должна показывать зеленый цвет фона. Я попытался следующие:SSRS Field Expression для изменения цвета фона ячейки

= IIF(fields!column.value = "Approved", "Green") 

и

= IIF(Fields!column.Value, "Approved", "Green") 

Ни работает .. Я знаю, что я что-то отсутствует в синтаксисе .. Наверное, я не ссылаюсь зеленый к задней основной цвет в синтаксис. Пожалуйста помоги!

+0

Если хмель решить проблему, вы должны принять его ответ – DForck42

ответ

44

Проблема с IIF (Fields! Column.Value = "Approved", "Green") заключается в том, что вам не хватает третьего параметра. Правильный синтаксис IIF ([некоторое логическое выражение], [результат, если логическое выражение истинно], [результат, если логическое значение ложно])

Попробуйте

=IIF(Fields!Column.Value = "Approved", "Green", "No Color") 

Вот список примеров выражений Expression Examples in Reporting Services

IIF in SSRS report

+0

Спасибо большое за réponse .. Это Решает синтаксис part .., но когда я просматриваю отчет, я вижу, что значение String «Approved» заменяется строковым значением «Зеленый». и я хочу изменить цвет фона, а не строковое значение. – Avinash

+1

Если вы используете построитель отчетов или BIDS, когда вы нажимаете на просмотр свойств ячейки в окне свойств, должно быть свойство Background Color. Вот где вы вводите свое выражение сверху. – Hopdizzle

+0

Ах .. Это решает требование .. Большое спасибо за вашу помощь. Очень ценю .. – Avinash

3

воспользоваться помощью цвета и BACKCOLOR Свойства, чтобы написать выражения для запроса. Добавьте следующие опции выражения для свойства цвета, которые вы хотите, чтобы обслужить)

Пример

=iif(fields!column.value = "Approved", "Green","<other color>") 

iif потребность 3 значение, сначала относящийся столбец, то второй должен обрабатывать Истина и третий должен обрабатывать Ложное для iif заявления

0

= IIF (Fields! ADPAction.Value.ToString(). TOUPPER(). Содержит ("СБОЙ"), "Красный", "Белый")

Также необходимо преобразовать в верхний регистр для сравнения on - двоичный тест.

+0

Привет, добро пожаловать в СО, приятно видеть, что вы начинаете с ответа. Код более читабельен, когда вы отформатируете его как код, просто отпустите его с помощью 4 пробелов! – iScrE4m

1

= IIF (поля! Column.value = Состояние, «Красный», «Black»)

Смежные вопросы