Отчет SSRS - Фильтры набора данных - PullRequest
1 голос
/ 09 февраля 2012

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

=IIf(Parameters!DoctorID.Value = "All" Or Parameters!DoctorID.Value = "", "*", Parameters!DoctorID.Value)

Что я хочу сделать с помощью приведенного выше кода, если DoctorID = ALL или "" (пусто), то я хочу опуститьэто из фильтров, поэтому я возвращаю информацию для всех врачей.Однако всякий раз, когда значение DoctorID = ALL, я не возвращаю ни одной строки.Должно быть так, что я получаю ВСЕ строки, так как DoctorID не является конкретным числом.

Не означает ли "*" (звездочка) пропуск этого фильтра?Я что-то здесь не так делаю?

Спасибо!

1 Ответ

0 голосов
/ 09 февраля 2012

Формула фильтра, которую вы предоставляете, - это только половина уравнения: с каким оператором вы сравниваете это? И да, я не видел, чтобы SSRS использовал звездочку в качестве подстановочного знака.

Подумайте о том, чтобы вставить свой фильтр в запрос для набора данных. Предложение SQL WHERE может стать довольно мощным. Я бы написал ваш фильтр в запросе как

  ...
WHERE
   @DoctorID = 'All' OR @DoctorID = ''
   OR @DoctorID = myTable.DoctorID

Это также позволит вам довольно легко перейти к параметру с несколькими значениями.

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