2005 年のレポート ビルダーを見ています。ユーザーが自分でデータをフィルター処理できるように、フィルターを表示できることはわかっています。しかし、彼らがそれを望まない場合はどうなりますか? フィルタをオプションに設定するにはどうすればよいですか。すべてを表示するか、フィルターを使用します。
これで、フィルタリングされたレポートしか作成できなくなりました。
2005 年のレポート ビルダーを見ています。ユーザーが自分でデータをフィルター処理できるように、フィルターを表示できることはわかっています。しかし、彼らがそれを望まない場合はどうなりますか? フィルタをオプションに設定するにはどうすればよいですか。すべてを表示するか、フィルターを使用します。
これで、フィルタリングされたレポートしか作成できなくなりました。
まず、すべてのパラメータにデフォルト値を設定する必要があります。数値パラメーターの場合は 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 アクセス パラメータの使用を
参照してください。