Как фильтровать столбец, используя список параметров нескольких значений в SSRS

Я новичок в SSRS. То, что я считал очень простым, заняло у меня 1 день, и я не могу это исправить. Все, что мне нужно, это следующее

Select * from table1 where len(username) <= 6 Select * from table1 where len(username) >= 7 

Я хочу отобразить меню выпадающих меню с двумя вариантами «Короткое имя пользователя» и «Длительное имя пользователя». Когда имя пользователя нажимается на короткое имя пользователя, отображается первый результат запроса, и когда пользователь нажимает «Длинные имена пользователей», отображается второй результат запроса.

Что я сделал до сих пор, я добавил список параметров с двумя значениями, т.е. Short parameter list = 6 и Long parameter list = 7. Затем я добавил два фильтра. В первом выражении = len (NameColumn.value) operator = <= value = @parameter. Во втором выражение = len (NameColumn.value) operator => = value = @parameter. Можете ли вы, пожалуйста, что я могу сделать для ее достижения.

Вы можете сделать аналогичный FILTER в наборе данных, о котором упоминалось @ energ1ser.

У вас будет параметр, в котором пользователь выбирает Long или Short. Вы можете использовать для этого разные значения.

Для выражения вы должны использовать:

 =IIF( (Parameters!YourParameter.Value = "Short" and LEN(FIELDS!USERNAME.VALUE) <= 6) OR (Parameters!YourParameter.Value = "Long" and LEN(FIELDS!USERNAME.VALUE) >= 7), 1, 0) 

Для типа используйте Integer , Operator = и Value 1 .

Это выражение вычисляет каждую строку как 0 или 1, а затем фильтрует ее на 1 .

Чтобы отобразить ВСЕ записи, добавьте еще один символ ИЛИ, если для параметра выбрано значение Все.

 =IIF( (Parameters!YourParameter.Value = "Short" and LEN(FIELDS!USERNAME.VALUE) <= 6) OR (Parameters!YourParameter.Value = "Long" and LEN(FIELDS!USERNAME.VALUE) >= 7) OR (Parameters!YourParameter.Value = "All"), 1, 0) 

Я думаю, что лучше выполнить фильтрацию в запросе, чем использовать фильтры SSRS. Попробуйте этот запрос.

 select * from table1 where (@Parameter = 0 and len(username) <= 6) or (@Parameter = 1 and len(username) >= 7) 

И ваш параметр можно настроить таким образом.

введите описание изображения здесь

  • Как я могу заставить мои источники данных SSRS / наборы данных работать параллельно?
  • sp_send_dbmail вставить файл mhtml в тело
  • Как удалить URL веб-службы сервера отчетов из диспетчера конфигурации Reporting Service Configuration Manager
  • Как настроить SQL Azure Reporting?
  • Форматирование ячеек матрицы SSRS
  • Параметр SSRS multi-select не может записывать значения с запятой
  • Почему мои диаграммы не отображаются в SSRS 2012?
  • Задайте значение параметра SSRS Report Parameter с переданным значением Querystring в SSRS
  • Как получить данные из собственной таблицы ссылок в sql
  • Форматирование цвета SSRS на основе параметра
  • SSRS объединяет и объединяет два отчета в один отчет
  • Interesting Posts

    Как я могу узнать, какая версия SQL Server работает на машине?

    Раунд вверх или вниз до ближайшего 20

    SQL – объединение двух разных таблиц по имени без дубликатов

    T-SQL concatenate & convert string to date time

    Подключение к LocalDB Server в Navicat Premium

    Какой инструмент генерирует диаграммы из иерархических данных SQL Server?

    Как найти идентификатор языка сообщений?

    Каковы наилучшие практики для строковых полей данных?

    Не удалось развернуть проект. Для получения дополнительной информации запросите представление operation_messages для идентификатора операции «20132»?

    Нумерация Дублированные имена в разделенной запятой строке

    Любые побочные эффекты для использования ProviderManifestToken = 2005 в edmx-файле (для поддержки SQL Server 2005)?

    Как получить данные изображения с SQL Server, записать в файл, сохранить файл на диск с помощью C #

    Ограничение внешнего ключа SQL DROP TABLE

    Используя Sql Management Objects (SMO) для подключения к SQL, как узнать, имеет ли представление какие-либо строки?

    foreach в выбранных строках SQL хранимая процедура

    Давайте будем гением компьютера.