0

2005 年のレポート ビルダーを見ています。ユーザーが自分でデータをフィルター処理できるように、フィルターを表示できることはわかっています。しかし、彼らがそれを望まない場合はどうなりますか? フィルタをオプションに設定するにはどうすればよいですか。すべてを表示するか、フィルターを使用します。

これで、フィルタリングされたレポートしか作成できなくなりました。

4

1 に答える 1

1

まず、すべてのパラメータにデフォルト値を設定する必要があります。数値パラメーターの場合は 0、varchar の場合は NULL または空の文字列です。多値のパラメーターの場合、使用可能なすべての値を含めるだけです。したがって、レポート パラメータがあるとしましょう:
UserIDParam, int, デフォルト値 0
UserNameParam, varchar, デフォルト値 NULL
UserRelatedIDList, multivalue int, デフォルト値 (0, 1, 2, 3, 4)
次に、クエリでは、フィルタで thouse パラメータを使用するだけです:

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)))

Chris Hays の Reporting Services Sleazy Hacks Weblog - "All" Parameter Value
Chris Hays の Reporting Services Sleazy Hacks Weblog - "All" Parameter Value Redux SQLCenral フォーラム - Reporting Services のデフォルト パラメータ値を参照してください

デフォルトでは、フィルターはデータを除外しません。
また、レポート ビューアーでレポート パラメーター領域を非表示にすることもできます。ReportViewer または URL を使用してレポートへのアクセスを提供する場合は、ツールバーパラメーター、およびその他のレポート設定を構成できます。

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

パラメータを true - パラメータ パネルを表示、false - パラメータ パネルを非表示、 Collapsed - パラメータ パネルを非表示にしますが、エンド ユーザーが切り替えることができます。URL アクセス パラメータの使用を 参照してください。



于 2009-03-11T10:52:04.107 に答える