Построитель отчетов, фильтр подсказок, как игнорировать фильтр? - PullRequest
0 голосов
/ 27 февраля 2009

Я смотрю на построитель отчетов с 2005 года. Я знаю, что могу предложить фильтр, чтобы пользователь мог фильтровать данные самостоятельно. Но что, если они этого не хотят? Как я могу установить фильтр по желанию. так что либо они видят все, либо используют фильтр.

Теперь я могу иметь только отфильтрованный отчет.

1 Ответ

1 голос
/ 11 марта 2009

Во-первых, вы должны установить значения по умолчанию для всех ваших параметров. Для числовых параметров это может быть 0, а для varchar - NULL или пустая строка. Для многозначных параметров я бы сказал, что нужно просто включить все доступные значения. Допустим, у вас есть параметры отчета:
UserIDParam, int, значение по умолчанию 0
UserNameParam, varchar, значение по умолчанию NULL
UserRelatedIDList, многозначный int, значение по умолчанию (0, 1, 2, 3, 4)
Тогда в запросе вы просто используете эти параметры в фильтрах:

SELECT U.ID, U.Name, U.Phone, U.Adress, RU.ID, RU.Name, RU.Phone, RU.Adress
FROM Users U
LEFT JOIN RelatedUsers RU ON U.ID = R.UserID
LEFT JOIN Users ON R R.RelatedUserID = ON RU.ID
WHERE ((ISNULL(@UserIDParam, 0) = 0) OR (U.ID = @UserIDParam)) AND
  ((ISNULL(@UserNameParam, '') = '') OR (U.Name = @UserNameParam)) AND
  ((0 IN (@UserRelatedIDList) AND R.UserID IS NULL) OR 
      (R.UserID IN (@UserRelatedIDList)))

См. Веб-блог Sleazy Hacks Reporting Services Криса Хейса - Значение параметра «Все»
Веб-журнал Sleazy Hacks Chrisis Hays Reporting Services - значение параметра «Все» Redux
SQLCenral Forum - значение параметра по умолчанию в службах Reporting Services

Теперь по умолчанию фильтры не будут отфильтровывать данные.
Вы также можете скрыть область параметров отчета в средстве просмотра отчетов. Если вы предоставляете доступ к своим отчетам с помощью ReportViewer или URL-адреса, вы можете настроить Панель инструментов , Параметры и другие параметры отчета:

http://servername/reportserver?/YourReportName&rs:Command=Render&rs:Format=HTML4.0&rc:Parameters=false

Настройка Параметры до:
true - покажет панель параметров,
false - скрывает панель параметров,
Свернутый - скрывает панель параметров, но может быть переключен конечным пользователем.
См. Использование параметров доступа к URL

...