Как заставить SSRS фильтровать мой набор данных, прежде чем передать его в параметр множественного выбора? - PullRequest
0 голосов
/ 22 апреля 2020

Я использую SQL Инструменты данных сервера для Visual Studio 2015 для создания отчета, который извлекает данные из экземпляра Dynamics CRM с помощью Fetch XML.

Один из моих параметров позволяет пользователю выбирать из списка контактов (он же ContactParameter). В попытке создать функциональность, которая позволила бы пользователю «фильтровать» список из сотен или тысяч существующих контактов, я попытался создать новый параметр множественного выбора, который в основном представляет собой просто список букв от А до Я плюс одно пустое значение (он же LetterParameter).

Я хочу показать все контакты, если в LetterParameter выбрано только пустое значение, и показать контакты, отфильтрованные по их фамилиям, если в LetterParameter выбраны какие-либо значения. Я создал два поля, как показано ниже:

isBlank = Trim(Join(Parameters!LetterParameter.Value, "")) = ""

isInStr = IIF(InStr(Join(Parameters!LetterParameter.Value, ""), UCase(Left(Fields!lastname.Value, 1))) > 0, True, False)

Затем я создал очень простой фильтр в наборе контактных данных и включил в него строки, где это правда.

=Fields!isBlank.Value = True Or Fields!isInStr.Value = True

Мои поля и фильтр работают нормально, если я отображаю свои контакты в отчете, но список, отображаемый в ContactParameter, никогда не фильтруется. Как будто фильтрация не применяется, если я не использую этот набор данных в отчете. Есть ли способ принудительной фильтрации моего набора данных, прежде чем он будет передан моему параметру? Или лучший способ настроить это, чтобы я не столкнулся с этой проблемой?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...