У меня есть набор данных, который я пытаюсь заставить все> 12 месяцев назад в одну группу. Я пытаюсь сделать это с помощью случая SQL, когда он назначает все месяцы и год> 12 месяцев назад значение int 0, но когда я пытаюсь поместить его в SSRS, он не работает.SSRS-Проблема с iif, содержащая функцию месяца,
Я пытался использовать эту формулу, но она не работает, если я не удалю функцию «MonthName». = IIF (Fields! ASGN_SUB_DUE_MONTH.Value> 0, MonthName (Fields! ASGN_SUB_DUE_MONTH.Value) & "" & Fields! ASGN_SUB_DUE_YEAR.Value
, "Больше, чем 12 месяцев назад")
Но эта формула работает = IIF (Fields! ASGN_SUB_DUE_MONTH.Value> 0, MonthName (IIF (Fields! ASGN_SUB_DUE_MONTH.Value> 0 и поля! ASGN_SUB_DUE_MONTH.Value < 13, Поля! ASGN_SUB_DUE_MONTH.Value, 1)) & "" & Fields! ASGN_SUB_DUE_YEAR.Value
, "Более 12 месяцев назад")
Кто-нибудь знает, почему и как я могу решить. Вторая функция работает, но мне неудобно оставлять ее в отчетах, чтобы включить вторую часть встроенных функций iif.
Заранее спасибо
У вас возникли проблемы с получением набора данных для работы? Я могу дать вам несколько указателей на этот оператор TSQL CASE, если вы публикуете то, что вы пробовали. –
Это Сонни, проблема не в том, как написан CASE, только с выходом. Наличие значений int не 1-12 вызывало проблемы. –
Вы сказали, что пытаетесь сделать это с помощью инструкции SQL 'CASE'. Почему бы вам не добавить этот оператор case обратно в свой SQL-запрос в своем наборе данных? Во многих случаях легче манипулировать данными в самом наборе данных. К счастью, у вас может быть столько наборов данных, сколько вам нужно, чтобы сделать свой отчет. –