データ ソースへの接続
更新 : 2006 年 12 月 12 日
Reporting Services で、レポート定義には、レポート内で使用する 1 つ以上のクエリ、レイアウト情報、および外部のデータ ソースに対するデータ ソース接続が含まれます。データ ソース接続では、データ ソースの種類、接続文字列、および資格情報を指定します。Reporting Services では、データ ソース接続情報はデータセット内に指定します。レポートのデータセットを定義するうえで最初に行う作業は、使用するデータ ソースの定義です。
Reporting Services では、データ ソースの種類として SQL Server、Analysis Services、Oracle、ODBC、OLE DB、SAP NetWeaver BI、および XML をサポートするデータ拡張機能が提供されています。Microsoft.ReportingServices.DataProcessing API を使用してデータ処理拡張機能を作成すると、その他の種類のデータ ソースもサポートすることができます。データ ソースに保持されている接続情報は、データ ソースの種類により異なります。さまざまな種類の接続文字列について、このトピックで詳しく説明します。
データ ソースは、以下の方法で指定することができます。
- レポート内に格納された埋め込み情報 (これは、レポート固有のデータ ソースと呼ばれます)。
- 共有データ ソース。別途レポート デザイナで定義し、レポートをパブリッシュするときに、個別のアイテムとしてレポート サーバーに格納します。
- 実行時にデータ ソースを選択するために使用する式。
データ ソースには、クエリ情報は保持されません。クエリ情報は、データ ソースを使用してデータベースに接続するデータセット内に保持されます。詳細については、「レポートのデータセットの定義」を参照してください。
レポート定義内で使用するデータ ソースを指定する際、サーバー エクスプローラではなくレポート デザイナでデータ ソースを作成する必要があります。SQL Server 2005 に含まれているバージョンのレポート デザイナは、サーバー エクスプローラで作成された Visual Studio データ ソースを使用しません。
レポートをレポート サーバーにパブリッシュした後で、異なるデータ ソースを使用するようにレポートを構成することができます。たとえば、テスト データ ソースから、同じデータ構造を持つ運用データ ソースに切り替えることができます。
詳細については、「Reporting Services のデータ ソース プロパティの設定」を参照してください。
プレビューで使用する資格情報
レポート デザイナでレポートをプレビューする際、データはデータ ソースから取得されます。データ ソースに接続するために使用する資格情報は、[データ ソース] ダイアログ ボックスまたは [共有データ ソース] ダイアログ ボックスの [資格情報] タブで指定します。これらの資格情報は、ローカル プロジェクト構成ファイルに格納され、資格情報が格納されるコンピュータに固有です。プロジェクト ファイルを別のコンピュータにコピーするときは、データ ソースの資格情報を再定義する必要があります。
レポート固有のデータ ソース
レポート内にデータ ソースを作成できます。この場合、データ ソースはそのレポートでしか利用できません。データ ソースは、レポート内で定義されているどのデータセットからも使用できますが、そのプロジェクトの他のレポートからは使用できません。ある特定の接続を必要とするレポートが 1 つしかなく、パブリッシュ後にデータ ソースを別個に管理したくない場合に、レポート固有のデータ ソースを使用してください。レポートのパブリッシュ後は、データ ソースはレポートのプロパティの一部として管理されます。レポート固有のデータ ソースの指定の詳細については、「レポート固有のデータ ソースを作成または編集する方法 (レポート デザイナ)」を参照してください。
共有データ ソース
接続のメンテナンスを単純化するために、複数のレポートで共有するデータ ソースを作成できます。複数のレポートがすべて同じデータ ソースを使用していて、これらのレポートの接続情報が変更された場合、接続情報を一度変更すれば、これらすべてのレポートに対応できます。これは、レポートをテスト環境から稼働環境に移動する場合や、データ ソースを個別のアイテムとして管理する場合に便利です。
レポート デザイナで共有データ ソースを作成すると、この共有データ ソースはレポート プロジェクトに独立したファイルとして保存されます。このファイルは、データ ソース、データ ソース ID、および接続情報を含む XML ドキュメントになります。プロジェクトのレポートをパブリッシュすると、データ ソースも同時にパブリッシュされます。サーバー上に既にデータ ソースが存在している場合は、プロジェクトの OverwriteDataSources プロパティによって、プロジェクトのデータ ソースでサーバー上のデータ ソースが上書きされるかどうかが決まります。このプロパティは、プロジェクトの配置プロパティを利用して変更できます。レポートのパブリッシュ後は、データ ソースはプロジェクトの他のレポートと一緒に保存され、個別に管理できます。
共有データ ソースを操作する方法については、以下のトピックを参照してください。
データ ソースの式
接続文字列で式を使用することで、実行時にユーザーがデータ ソースを選択できるようになります。たとえば、多国籍企業がいくつもの国にデータ サーバーを持っていると仮定します。式ベースの接続文字列を使用すると、販売レポートを実行するユーザーは、レポートの実行前に特定の国のデータ ソースを選択することができます。
次の例では、SQL Server の接続文字列中でデータ ソースの式を使用する方法を示します。この例では、ServerName
というレポート パラメータが作成されていることが前提です。
="data source=" & Parameters!ServerName.Value & ";initial catalog=AdventureWorks
データ ソースの式は、実行時またはレポートのプレビュー時に処理されます。式は、Visual Basic で記述する必要があります。データ ソースの式を定義する際には、以下のガイドラインに従います。
- 静的な接続文字列を使用してレポートをデザインする。静的な接続文字列とは、式を使わずに設定した接続文字列です (たとえば、レポート固有のデータ ソースまたは共有データ ソースの作成手順に従うと、静的な接続文字列を定義することになります)。静的な接続文字列を使用することで、レポート デザイナでデータ ソースに接続し、レポートの作成に必要なクエリ結果を取得することができます。
- データ ソースの接続を定義する際には、共有データ ソースを使用しない。共有データ ソース内では、データ ソースの式を使用できません。レポート固有のデータ ソースを定義する必要があります。
- 資格情報は接続文字列とは別に指定する。保存された資格情報、要求された資格情報、または統合セキュリティを使用することができます。
- レポート パラメータを追加してデータ ソースを指定する。パラメータ値には、使用可能な値の静的な一覧を指定するか (この場合、使用可能な値には、レポートで使用できるデータ ソースを指定する必要があります)、実行時にデータ ソースの一覧を取得するクエリを定義します。
- データ ソースの一覧が同じデータベース スキーマを共有するようにする。すべてのレポートのデザインは、スキーマ情報から始まります。レポートの定義で使用されているスキーマと、実行時にレポートが使用する実際のスキーマが一致しないと、レポートが実行されない場合があります。
- レポートをパブリッシュする前に、静的な接続文字列を式で置き換える。レポートのデザインが完了するまでは、静的な接続文字列を式で置き換えません。式を使用すると、レポート デザイナ内でクエリを実行できなくなります。さらに、[データセット] ウィンドウ内のフィールド一覧と、[パラメータ] の一覧が、自動的に更新されなくなります。
パスワードの特殊文字
パスワードを要求したり、接続文字列にパスワードを含めるように ODBC データ ソースや SQL データ ソースを構成し、ユーザーが句読点のような特殊文字を使用してパスワードを入力した場合、基になるデータ ソースのドライバによってはその特殊文字を検証することができません。レポートを処理する際に、この問題によって、"パスワードが無効です" というメッセージが表示される場合があります。パスワードを変更できない場合は、データベース管理者と連携して、適切な資格情報をシステム ODBC データ ソース名 (DSN) の一部としてサーバーに格納することができます。詳細については、.NET Framework SDK のドキュメントの「OdbcConnection.ConnectionString」を参照してください。
メモ : |
---|
パスワードなどのログイン情報を接続文字列に追加しないことをお勧めします。レポート デザイナでは、[データ ソース] ダイアログ ボックスに、資格情報の入力に使用できるタブが別に用意されています。ここで入力した資格情報は、レポート デザイナが動作するコンピュータ上に安全に保管されます。 |
一般的な接続文字列
次の表に、さまざまなデータ ソースの接続文字列の例を示します。
データ ソース | 例 | 説明 |
---|---|---|
SQL Server OLTP データベース |
|
データ ソースの種類を SQL Server に設定します。 |
Analysis Services データベース |
|
データ ソースの種類を SQL Server Analysis Services に設定します。 |
レポート モデル データ ソース |
|
レポート サーバーまたはドキュメント ライブラリの URL と、レポート サーバー フォルダまたはドキュメント ライブラリ フォルダの名前空間内のパブリッシュされたモデルへのパスを指定します。 |
SQL Server 2000 Analysis Services サーバー |
|
データ ソースの種類を OLE DB Provider for OLAP Services 8.0 に設定します。 ConnectTo プロパティを 8.0 に設定すると、SQL Server 2000 Analysis Services のデータ ソースにより高速に接続できるようになります。このプロパティを設定するには、[接続プロパティ] ダイアログ ボックスの [詳細プロパティ] タブを使用します。 |
Oracle サーバー |
|
データ ソースの種類を Oracle に設定します。レポート デザイナがインストールされているコンピュータとレポート サーバーに、Oracle クライアント ツールがインストールされている必要があります。詳細については、「レポート データセットの定義 (Oracle データベースのリレーショナル データ)」を参照してください。 |
SAP NetWeaver BI データ ソース |
|
データ ソースの種類を SAP NetWeaver BI に設定します。詳細については、「レポート データセットの定義 (SAP NetWeaver BI システムの多次元データ)」を参照してください。 |
Hyperion Essbase データ ソース |
|
データ ソースの種類を Hyperion Essbase に設定します。詳細については、「レポート データセットの定義 (Hyperion Essbase データベースの多次元データ)」を参照してください。 |
XML データ ソース |
|
データ ソースの種類を XML に設定します。接続文字列は XML ドキュメントへの URL です。詳細については、「レポート データセットの定義 (XML データ)」を参照してください。 |
localhost を使用してレポート サーバーに接続できない場合は、TCP/IP プロトコルのネットワーク プロトコルが有効になっていることを確認します。詳細については、「SQL Server データベース エンジンへの接続」を参照してください。
参照
処理手順
レポート固有のデータ ソースを作成または編集する方法 (レポート デザイナ)
共有データ ソースを作成または編集する方法 (レポート デザイナ)
概念
共有データ ソースとレポート固有のデータ ソース
レポート レイアウトでのデータの操作
Reporting Services のデータ ソース プロパティの設定
レポート サーバーのフォルダ階層
その他の技術情報
[データ ソース] ([資格情報] タブ、レポート デザイナ)
[共有データ ソース] ([資格情報] タブ、レポート デザイナ)
ヘルプおよび情報
変更履歴
リリース | 履歴 |
---|---|
2006 年 12 月 12 日 |
|
2006 年 7 月 17 日 |
|
2006 年 4 月 14 日 |
|
2005 年 12 月 5 日 |
|