Reporting Services でのデータ接続、データ ソース、および接続文字列
Reporting Services レポートにデータを含めるには、最初に データ ソース および datasetsを作成する必要があります。 このトピックでは、データ ソースの種類、データ ソースの作成方法、およびデータ ソースの資格情報に関連する重要な情報について説明します。 データ ソースには、データ ソースの種類、接続情報、および使用する資格情報の種類が含まれています。 データ ソースには、埋め込みと共有の 2 種類があります。 埋め込みデータ ソースは、レポート内で定義され、そのレポートでのみ使用されます。 共有データ ソースは、レポートとは別のアイテムとして定義され、複数のレポートで使用できます。 詳細については、「Embedded および共有データ接続またはデータ ソース (レポート ビルダーおよび SSRS)およびEmbedded および共有データセット (レポート ビルダーおよび SSRS)を参照してください。
適用対象: Reporting Services ネイティブ モード | Reporting Services SharePoint モード |
Note
レポート定義 (.rdl) は、レポート ビルダーおよび SQL Server Data Tools のレポート デザイナーで作成および変更できます。 これらの作成環境では、レポートおよび関連アイテムの作成方法、開く方法、および保存方法が異なります。 詳細については、「microsoft.com の Web レポート デザイナー および レポート ビルダー (SSRS)でのレポートのデザイン」を参照してください。
埋め込みデータ ソースおよび共有データ ソース
埋め込みデータ ソースと共有データ ソースとでは、作成、格納、および管理の方法が異なります。
レポート デザイナーで、SQL Server Data Tools (SSDT) プロジェクトの一部として、埋め込みまたは共有データ ソースを作成します。 プレビュー用にローカルで使用するか、プロジェクトの一部としてレポート サーバーまたは SharePoint サイトに配置するかを制御することができます。 自分のコンピューターおよびレポート サーバー、さらにレポートの配置先の SharePoint サイトにインストールされているカスタム データ拡張機能を使用できます。
システム管理者は、別のデータ処理拡張機能および .NET Framework データ プロバイダーをインストールおよび設定できます。 詳細については、「データ処理拡張機能と .NET Framework データ プロバイダー (SSRS)」を参照してください。
Microsoft.ReportingServices.DataProcessing API を使ってデータ処理拡張機能を作成すると、その他の種類のデータ ソースもサポートできます。
レポート ビルダーで、レポート サーバーまたは SharePoint サイト上の保存先を参照して共有データ ソースを選択するか、または、レポートに埋め込みデータ ソースを作成します。 共有データ ソースは、レポート ビルダーで作成することはできません。 レポート ビルダーでカスタム データ拡張機能を使用することはできません。
組み込みデータ拡張機能
Reporting Services の既定のデータ拡張機能には、次の種類のデータ接続が含まれます。
Microsoft SQL Server
Microsoft SQL Server Analysis Services
Microsoft SharePoint リスト
Azure SQL データベース
Microsoft SQL Server 並列データ ウェアハウス
OLE DB
Oracle
SAP NetWeaver BI
Hyperion Essbase
Teradata
XML
ODBC
Power View 用の Microsoft BI セマンティック モデル: PowerPivot ギャラリーと Power View 用に構成されている SharePoint サイトでは、このデータ ソースの種類を使用できます。 このデータ ソースの種類は、Power View プレゼンテーションにのみ使用されます。 詳細については、「 Power View に適した BI セマンティック表形式モデルの作成 (ビデオ)」を参照してください。
Reporting Services でサポートされるデータ ソースおよびバージョンの一覧については、「Reporting Services でサポートされるデータ ソース (SSRS)」を参照してください。
データ ソースを作成する
データ ソースを作成するには、次の情報が必要です。
データ ソースの種類 接続の種類 (Microsoft SQL Server など)。 この値は、接続の種類のドロップダウン リストから選択します。
接続情報 接続情報には、データ ソースの名前と場所、および各データ プロバイダーに固有の接続プロパティが含まれます。 接続文字列 は、接続情報のテキスト表現です。 たとえば、データ ソースが SQL Server データベースの場合は、データベースの名前を指定することができます。 埋め込みデータ ソースの場合は、実行時に評価される式に基づく接続文字列を記述することもできます。 詳細については、このトピックで後述する「 式に基づく接続文字列 」を参照してください。
資格情報 データにアクセスするために必要な資格情報を指定します。 データ ソースおよびデータ ソースの特定のデータにアクセスするには、データ ソースの所有者から適切な権限を許可されていることが必要です。 たとえば、ネットワーク サーバーにインストールされている AdventureWorks2012 サンプル データベースに接続するには、サーバーに接続するためのアクセス許可と、データベースにアクセスするための読み取り専用アクセス許可が必要です。
Note
資格情報は、あえてデータ ソースとは別に管理されます。 ローカル システムでレポートのプレビューに使用する資格情報は、パブリッシュされたレポートの表示に必要な資格情報とは異なります。 レポート サーバーまたは SharePoint サイトにデータ ソースを保存した後は、その場所にあるデータを操作する関係上、資格情報の変更が必要となる場合があります。 詳細については、「 データ ソースの資格情報」を参照してください。
Note
SQL Server Data Tools (SSDT) でレポートの埋め込みデータ ソースを作成する場合は、サーバー エクスプローラーではなく、ソリューション エクスプローラーまたはレポート データ ペインのレポート デザイナーにデータ ソースを作成する必要があります。 SQL Server レポート デザイナーでは、サーバー エクスプローラーで作成された Visual Studio データ ソースはサポートされていません。
レポート データ ペインには、レポートに追加された共有データ ソースへの参照と埋め込みデータ ソースが表示されます。 レポート ビルダーにおける共有データ ソースの参照先は、レポート サーバー上または SharePoint サイト上の共有データ ソースです。 レポート デザイナーにおける共有データ ソースの参照先は、ソリューション エクスプローラーの [共有データ ソース] フォルダーに表示される共有データ ソースです。
データ ソースの資格情報
資格情報は、接続情報とは別に保存および管理できる設計になっています。 資格情報は、データ ソースの作成、データセット クエリの実行、レポートのプレビューなどで使用されます。
Note
ログイン名やパスワードなどのログイン情報は、データ ソースの接続プロパティに含めないようにすることをお勧めします。 可能な限り、資格情報が保存された共有データ ソースを使用してください。 データ接続を作成する場合やデータセット クエリを実行する場合は、作成環境で [データ ソース] ダイアログ ボックスの [資格情報] ページを使用して資格情報を入力します。
自分のコンピューターからデータにアクセスする際に入力する資格情報は、ローカルのプロジェクト構成ファイルに安全に保管され、そのコンピューターに固有の情報となります。 プロジェクト ファイルを別のコンピューターにコピーするときは、データ ソースの資格情報を再定義する必要があります。
レポート サーバーまたは SharePoint サイトにレポートを配置した場合、埋め込みデータ ソースと共有データ ソースは別々に管理されます。 ローカル コンピューターからデータにアクセスするために必要なデータ ソース資格情報は、レポート サーバーからデータにアクセスするために必要な資格情報とは異なる場合があります。
レポートを発行した後も、データ ソース接続が正常に接続し続けるかどうかを確認することをお勧めします。 資格情報を変更する必要がある場合は、レポート サーバー上で直接変更できます。
レポートで使用されるデータ ソースを変更するには、ネイティブ モードのレポート マネージャーまたは SharePoint モードのドキュメント ライブラリからレポート のプロパティを変更します。 詳細については、「
一般的な接続文字列の例
接続文字列は、データ プロバイダーの接続プロパティのテキスト表現です。 次の表に、さまざまなデータ接続に使用される接続文字列の例を示します。
データ ソース | 例 | 説明 |
---|---|---|
ローカル サーバーの SQL Server データベース | data source="(local)";initial catalog=AdventureWorks |
データ ソースの種類を Microsoft SQL Server に設定します。 詳細については、「SQL Server の接続の種類 (SSRS)」を参照してください。 |
ローカル サーバーの SQL Server データベース | data source="(local)";initial catalog=AdventureWorks |
データ ソースの種類を Microsoft SQL Server に設定します。 |
SQL Server インスタンス database |
Data Source=localhost\MSSQL10_50.InstanceName; Initial Catalog=AdventureWorks |
データ ソースの種類を Microsoft SQL Server に設定します。 |
SQL Server Express データベース | Data Source=localhost\MSSQL10_50.SQLEXPRESS; Initial Catalog=AdventureWorks |
データ ソースの種類を Microsoft SQL Server に設定します。 |
クラウド内の SQL Database | Data Source=<host>;Initial Catalog=AdventureWorks; Encrypt=True |
データ ソースの種類を Azure SQL Database に設定します。 詳細については、「 SQL Azure 接続の種類 (SSRS)」を参照してください。 |
SQL Server 並列データ ウェアハウス | HOST=<IP address>;database= AdventureWorks; port=<port> |
データ ソースの種類を Microsoft SQL Server Parallel Data Warehouse に設定します。 詳細については、「SQL Server 並列データ ウェアハウスの接続の種類 (SSRS)」を参照してください。 |
ローカル サーバーの Analysis Services データベース | data source=localhost;initial catalog=Adventure Works DW |
データ ソースの種類を Microsoft SQL Server Analysis Services に設定します。 詳細については、「MDX のための Analysis Services の接続の種類 (SSRS)」または「DMX のための Analysis Services の接続の種類 (SSRS)」を参照してください。 |
Sales パースペクティブを持つ Analysis Services テーブル モデル データベース | Data source=<servername>;initial catalog= Adventure Works DW;cube='Sales' |
データ ソースの種類を Microsoft SQL Server Analysis Services に設定します。 cube= 設定にパースペクティブの名前を指定します。 詳しくは、「パースペクティブ (SSAS テーブル)」をご覧ください。 |
ネイティブ モードで構成されているレポート サーバーのレポート モデル データ ソース | Server=http://myreportservername/reportserver; datasource=/models/Adventure Works |
レポート サーバーまたはドキュメント ライブラリの URL と、レポート サーバー フォルダーまたはドキュメント ライブラリ フォルダーの名前空間内のパブリッシュされたモデルへのパスを指定します。 |
SharePoint 統合モードで構成されているレポート サーバーのレポート モデル データ ソース | Server=https://server; datasource=https://server/site/documents/models/Adventure Works.smdl |
レポート サーバーまたはドキュメント ライブラリの URL と、レポート サーバー フォルダーまたはドキュメント ライブラリ フォルダーの名前空間内のパブリッシュされたモデルへのパスを指定します。 |
SQL Server 2000 Analysis Services サーバー | provider=MSOLAP.2;data source=<remote server name>;initial catalog=FoodMart 2000 |
データ ソースの種類を OLE DB Provider for OLAP Services 8.0 に設定します。ConnectTo プロパティを 8.0 に設定すると、SQL Server 2000 Analysis Services データ ソースへの高速な接続を実現できます。 このプロパティを設定するには、 [接続プロパティ] ダイアログ ボックスの [詳細プロパティ] タブを使用します。 |
Oracle サーバー | data source=myserver |
データ ソースの種類を Oracle に設定します。 レポート デザイナーがインストールされているコンピューターとレポート サーバーに、Oracle クライアント ツールがインストールされている必要があります。 詳細については、「Oracle の接続の種類 (SSRS)」を参照してください。 |
SAP NetWeaver BI データ ソース | DataSource=http://mySAPNetWeaverBIServer:8000/sap/bw/xml/soap/xmla |
データ ソースの種類を SAP NetWeaver BI に設定します。 詳細については、「SAP NetWeaver BI の接続の種類 (SSRS)」を参照してください。 |
Hyperion Essbase データ ソース | Data Source=https://localhost:13080/aps/XMLA; Initial Catalog=Sample |
データ ソースの種類を Hyperion Essbase に設定します。 詳細については、「Hyperion Essbase の接続の種類 (SSRS)」を参照してください。 |
Teradata データ ソース | data source= <NNN>.<NNN>.<NNN>.<NNN>; |
データ ソースの種類を Teradata に設定します。 接続文字列は、各フィールドが 1 ~ 3 桁の 4 つのフィールドで構成されるインターネット プロトコル (IP) アドレスです。 詳細については、「Teradata の接続の種類 (SSRS)」を参照してください。 |
XML データ ソース、Web サービス | data source=http://adventure-works.com/results.aspx |
データ ソースの種類を XML に設定します。 接続文字列は、Web サービス記述言語 (WSDL) をサポートする Web サービスの URL です。 詳細については、「XML の接続の種類 (SSRS)」を参照してください。 |
XML データ ソース、XML ドキュメント | https://localhost/XML/Customers.xml |
データ ソースの種類を XML に設定します。 接続文字列は XML ドキュメントへの URL です。 |
XML データ ソース、埋め込み XML ドキュメント | 空 | データ ソースの種類を XML に設定します。 XML データはレポート定義に埋め込まれています。 |
localhost
を使用してレポート サーバーに接続できない場合は、TCP/IP プロトコルのネットワーク プロトコルが有効になっていることを確認します。 詳細については、「 Configure Client Protocols」を参照してください。
パスワードの特殊文字
パスワードを要求したり、接続文字列にパスワードを含めるように ODBC データ ソースや SQL データ ソースを構成し、ユーザーが句読点のような特殊文字を使用してパスワードを入力した場合、基になるデータ ソースのドライバーによってはその特殊文字を検証することができません。 レポートを処理する際に、この問題によって、"パスワードが無効です" というメッセージが表示される場合があります。 パスワードを変更できない場合は、データベース管理者と連携して、適切な資格情報をシステム ODBC データ ソース名 (DSN) の一部としてサーバーに格納することができます。 詳細については、 .NET Framework SDK ドキュメントの「OdbcConnection.ConnectionString」を参照してください。
式に基づく接続文字列
式に基づく接続文字列は実行時に評価されます。 たとえば、データ ソースをパラメーターとして指定し、接続文字列にパラメーター参照を含めて、ユーザーがレポートのデータ ソースを選択できるようにすることができます。 たとえば、ある多国籍企業がいくつもの国や地域にデータ サーバーを持っているとします。 式ベースの接続文字列を使用すると、販売レポートを実行するユーザーは、レポートの実行前に特定の国/地域のデータ ソースを選択することができます。
次の例では、SQL Server の接続文字列でデータ ソースの式を使用する方法を示します。 この例では、 ServerName
というレポート パラメーターが作成されているものとします。
="data source=" & Parameters!ServerName.Value & ";initial catalog=AdventureWorks"
データ ソースの式は、実行時またはレポートのプレビュー時に処理されます。 式は、Visual Basic で記述する必要があります。 データ ソースの式を定義する際には、次のガイドラインに従います。
静的な接続文字列を使用してレポートをデザインする。 静的な接続文字列とは、式を使わずに設定した接続文字列です (たとえば、レポート固有のデータ ソースまたは共有データ ソースの作成手順に従うと、静的な接続文字列を定義することになります)。 静的な接続文字列を使用することで、レポート デザイナーでデータ ソースに接続し、レポートの作成に必要なクエリ結果を取得することができます。
データ ソースの接続を定義する際には、共有データ ソースを使用しない。 共有データ ソース内では、データ ソースの式を使用できません。 レポートの埋め込みデータ ソースを定義する必要があります。
資格情報は接続文字列とは別に指定する。 保存された資格情報、要求された資格情報、または統合セキュリティを使用することができます。
レポート パラメーターを追加してデータ ソースを指定する。 パラメーター値には、使用可能な値の静的な一覧を指定するか (この場合、使用可能な値には、レポートで使用できるデータ ソースを指定する必要があります)、実行時にデータ ソースの一覧を取得するクエリを定義します。
データ ソースの一覧が同じデータベース スキーマを共有するようにする。 すべてのレポートのデザインは、スキーマ情報から始まります。 レポートの定義で使用されているスキーマと、実行時にレポートが使用する実際のスキーマが一致しないと、レポートが実行されない場合があります。
レポートをパブリッシュする前に、静的な接続文字列を式で置き換える。 レポートのデザインが完了するまでは、静的な接続文字列を式で置き換えません。 式を使用すると、レポート デザイナー内でクエリを実行できなくなります。 さらに、レポート データ ペイン内のフィールド一覧と、[パラメーター] の一覧が、自動的に更新されなくなります。
参照
埋め込みおよび共有データ接続またはデータ ソース (レポート ビルダーおよび SSRS)レポート データ ソースの管理[データ ソースのプロパティ] ダイアログ ボックス、[資格情報共有データ ソースのプロパティ] ダイアログ ボックス、[資格情報]、[資格情報]、[作成、変更、および削除] (SSRS)Set 展開プロパティ (Reporting Services))レポート データ ソースの資格情報と接続情報を指定しますデータ接続またはデータ ソースの追加と検証 (レポート ビルダーおよび SSRS)