次の方法で共有


レッスン 1 : Reporting Services Web サービス用のレポート データセットの定義

更新 : 2006 年 4 月 14 日

データ ソース接続を指定し、Web サービスから XML データを返す方法を習得するために、以下の手順を実行します。このレッスンでは、レポート サーバー Web サービスの ListChildren メソッドを呼び出して、レポート サーバー データベースのルート フォルダに含まれる全アイテムの一覧を取得し、データセットを作成します。また、ListChildren メソッドで必要なパラメータを定義し、ルート フォルダから階層全体を繰り返し処理するための既定値を設定します。Web サービスによって定義されたアイテム プロパティは、データセットのフィールドとして [データセット] ウィンドウに表示されます。最後に、データセット フィールドをレポート レイアウトにドラッグしてレポートをデザインします。レポートをプレビューすると、レポート、フォルダ、データ ソースなどのレポート サーバー データベースからのアイテムおよびアイテム プロパティが表示されます。

XML データ ソース、データセット、およびクエリを定義するには

  1. ブラウザ ウィンドウを開き、「https://localhost/reportserver/reportservice2005.asmx?wsdl」と入力して、レポート サーバー Web サービスの名前空間に関する情報を取得します。後で、クエリで名前空間を指定します。

    ms345338.note(ja-jp,SQL.90).gifメモ :
    ブラウザで XML WSDL 定義の応答を取得しようとしてできなかった場合は、「チュートリアル : レポートでの XML データの使用」の要件のセクションを確認してください。
    ms345338.note(ja-jp,SQL.90).gifメモ :
    名前空間のバージョン情報は、リリースによって異なる可能性があります。使用しているレポート サーバーの名前空間情報を確認するには、Web サービスが正しく参照されていることを確認する WSDL を生成します。名前空間の形式は、https://schemas.microsoft.com/sqlserver/<year>/<month>/<day>/reporting/reportingservices です。
  2. レポート デザイナを起動し、新しいレポートを作成します。レポートを作成する方法については、「チュートリアル : 基本的なレポートの作成」を参照してください。

  3. データ ビューで、[新しいデータセット] を選択します。データセットの名前を入力します (たとえば「XMLDataSet」)。

  4. [データセット] ダイアログ ボックスの [データ ソース] で、[新しいデータ ソース] をクリックします。[データ ソース] ダイアログ ボックスが開きます。

  5. データ ソースの名前を入力します (たとえば「XMLDataSource」)。

  6. [型] で、XML をクリックします。

  7. [接続文字列] で、レポート サーバー Web サービスを指す次の URL を入力します。

    https://localhost/reportserver/reportservice2005.asmx
    

    ダイアログ ボックスは次のようになります。

    XML データ ソースの種類のスクリーン ショット

    ms345338.note(ja-jp,SQL.90).gifメモ :
    SQL Server 2005 Reporting Services (SSRS) Service Pack 2 (SP2) 以降のバージョンの場合、SharePoint 統合モードで実行されているレポート サーバーには、接続文字列「http://<servername>/_vti_bin/ReportServer/ReportService2006.asmx」を使用してください。
  8. [資格情報] タブで、[Windows 認証 (統合セキュリティ) を使用する] をクリックします。

  9. [OK] をクリックして、変更を保存し、[データ ソース] ダイアログ ボックスを閉じます。

  10. [データセット] ダイアログ ボックスで、手順 1. で確認した名前空間のバージョン情報を使用して、次のクエリを入力します。

    <Query>
    <SoapAction>https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices/ListChildren</SoapAction>
    </Query>
    

    ダイアログ ボックスは次のようになります。

    XML データセットのスクリーン ショット

  11. [データセット] ダイアログ ボックスの [パラメータ] タブで、次の 2 つのパラメータを入力します。これらは ListChildren メソッドのパラメータで、レポート サーバーのフォルダ階層の起点および入れ子にされたフォルダを含めるかどうかを指定します。

    Item

    Recursive

    ms345338.note(ja-jp,SQL.90).gifメモ :
    SP2 以降のバージョンでは、Item パラメータのみが使用可能です。
  12. Item/ に設定します。レポート デザイナによって追加された "=" を削除します。/ 記号は、レポート サーバー フォルダ名前空間のルート ノードを指定します。

    ms345338.note(ja-jp,SQL.90).gifメモ :
    SP2 以降のバージョンにおいて、SharePoint 統合モードで Reporting Services を実行している場合、パラメータは SharePoint の最上位レベルのサイト、フォルダ、またはライブラリの URL である必要があります。たとえば、http://<servername>/<top level site>http://<servername>/<top level site>/<folder>、または http://<servername>/<top level site>/<document library> のようになります。
  13. Recursive1 に設定します。レポート デザイナによって追加された "=" を削除します。

    ダイアログ ボックスは次のようになります。

    パラメータを使用した XML データセットのスクリーン ショット

  14. [OK] をクリックします。データセットが [データセット] ウィンドウに追加されます。

  15. [!] (実行) をクリックして、結果セットを表示します。レポート サーバー データベースにレポートとその他のアイテムが含まれる場合は、アイテムごとに 1 行のデータが表示されます。

    ms345338.note(ja-jp,SQL.90).gifメモ :
    "クエリの実行中にエラーが発生しました" というエラーが発生した場合は、手順 11. で説明したようにパラメータが設定されていることを確認してください。ListChildren メソッドは、Item および Recursive のパラメータが必要です。
  16. ツール バーの [フィールドの更新] (データセット フィールドの更新) ボタンをクリックします。レポート定義が保存され、[データセットのレポート] ウィンドウのフィールドの表示が更新されて、使用するすべてのフィールドが表示されます。

    ダイアログ ボックスは次のようになります。

    データセット フィールドとクエリ結果のスクリーン ショット

次の手順

ここでは、レポート サーバー Web サービスを使用して、レポート サーバー データベース アイテム用のレポート データセットのメタデータを定義しました。レポートの処理時に、データセットのメタデータによって表現されるデータが、レポート サーバー データベースから取得されます。次は、XML の System.Data.DataSet object を返す Web サービスからレポート データセットを作成します。「レッスン 2 : Web サービスから返される ADO.NET データセット用のレポート データセットの定義」を参照してください。

参照

概念

Reporting Services のチュートリアル

その他の技術情報

レポート データセットの定義 (XML データ)
データ ソースへの接続
レポートのデータセットの定義
レポート固有のデータ ソースを作成または編集する方法 (レポート デザイナ)
データセットを作成する方法 (レポート デザイナ)
レポート データセットのフィールドの操作
[データセット] ウィンドウでフィールドを追加、編集、削除する方法 (レポート デザイナ)
[データセットのレポート] (レポート デザイナ)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手