レッスン 3: テーブル レポートのデータセットの定義 (Reporting Services)

データ ソースを定義した後、データセットを定義する必要があります。Reporting Services では、レポートで使用するデータはデータセットに格納されます。データセットには、データ ソースへのポインターと、レポートで使用されるクエリ、および計算フィールドと変数が含まれています。

レポート デザイナーでクエリ デザイナーを使用すると、クエリをデザインできます。このチュートリアルでは、AdventureWorks2008R2 データベースから販売注文情報を取得するクエリを作成します。

レポート データ用に Transact-SQL クエリを定義するには

  1. レポート データ ペインで、[新規作成] をクリックし、[データセット] をクリックします。[データセットのプロパティ] ダイアログ ボックスが表示されます。

  2. [名前] ボックスに「AdventureWorksDataset」と入力します。

  3. [レポートに埋め込まれたデータセットを使用します。] をクリックします。データ ソース AdventureWorks の名前が [データ ソース] ボックスに表示され、[クエリの種類][テキスト] であることを確認します。

  4. [クエリ] ボックスに次の Transact-SQL クエリを入力するか、コピーして貼り付けます。

    SELECT 
       soh.OrderDate AS [Date], 
       soh.SalesOrderNumber AS [Order], 
       pps.Name AS Subcat, pp.Name as Product,  
       SUM(sd.OrderQty) AS Qty,
       SUM(sd.LineTotal) AS LineTotal
    FROM Sales.SalesPerson sp 
       INNER JOIN Sales.SalesOrderHeader AS soh 
          ON sp.BusinessEntityID = soh.SalesPersonID
       INNER JOIN Sales.SalesOrderDetail AS sd 
          ON sd.SalesOrderID = soh.SalesOrderID
       INNER JOIN Production.Product AS pp 
          ON sd.ProductID = pp.ProductID
       INNER JOIN Production.ProductSubcategory AS pps 
          ON pp.ProductSubcategoryID = pps.ProductSubcategoryID
       INNER JOIN Production.ProductCategory AS ppc 
          ON ppc.ProductCategoryID = pps.ProductCategoryID
    GROUP BY ppc.Name, soh.OrderDate, soh.SalesOrderNumber, pps.Name, pp.Name, 
       soh.SalesPersonID
    HAVING ppc.Name = 'Clothing' 
    
  5. (省略可能) [クエリ デザイナー] ボタンをクリックします。クエリは、テキスト ベースのクエリ デザイナーに表示されます。[テキストとして編集] をクリックすると、グラフィカルなクエリ デザイナーに切り替えることができます。クエリの結果を表示するには、クエリ デザイナーの [実行] (!) ボタンをクリックします。

    AdventureWorks2008R2 データベースの 4 つの異なるテーブルの 6 個のフィールドから取得したデータが表示されます。クエリでは、エイリアスなど Transact-SQL の機能が利用されます。たとえば、SalesOrderHeader テーブルは soh と呼ばれます。

    [OK] をクリックしてクエリ デザイナーを終了します。

  6. [OK] をクリックして [データセットのプロパティ] ダイアログ ボックスを閉じます。

    レポート データ ペインに AdventureWorksDataset データセットのフィールドが表示されます。

次の作業

これで、レポートのデータを取得するクエリを指定できました。次に、レポートのレイアウトを作成します。「レッスン 4 : レポートへのテーブルの追加 (Reporting Services)」を参照してください。