レッスン 3 : テーブル レポートのデータセットの定義 (Reporting Services)
データ ソースを定義した後、データセットを定義する必要があります。 Reporting Servicesでは、レポートで使用するデータは データセットに格納されます。 データセットには、データ ソースへのポインターと、レポートで使用されるクエリ、および計算フィールドと変数が含まれています。
レポート デザイナーでクエリ デザイナーを使用すると、クエリをデザインできます。 このチュートリアルでは、AdventureWorks2012 2008 データベースから販売注文情報を取得するクエリを作成します。
レポート データ用に Transact-SQL クエリを定義するには
[ レポート データ ] ウィンドウで、[ 新規] をクリックし、[ データセット]をクリックします。[ データセットのプロパティ ] ダイアログ ボックスが開きます。
[ 名前 ] ボックスに「 AdventureWorksDataset」と入力します。
[レポートに埋め込まれたデータセットを使用します] をクリックします。
データ ソースの名前 AdventureWorks2012 が [ データ ソース ] テキスト ボックスに含まれており、[ クエリの種類 ] が [テキスト] であることを確認します。
[クエリ] ボックスに次の 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'
(省略可能) [クエリ デザイナー] ボタンをクリックします。 クエリは、テキスト ベースのクエリ デザイナーに表示されます。 [テキストとして編集]をクリックすると、グラフィカル クエリ デザイナーに切り替えることができます。 クエリ デザイナーのツール バーの実行 (!) ボタンをクリックして、クエリの結果を表示します。
AdventureWorks2012 データベースには、4 つの異なるテーブルの 6 つのフィールドのデータが表示されます。 クエリでは、エイリアスなど Transact-SQL の機能が利用されます。 たとえば、SalesOrderHeader テーブルは soh と呼ばれます。
[OK] をクリックしてクエリ デザイナーを終了します。
[OK] をクリックして [データセットのプロパティ] ダイアログ ボックスを閉じます。
レポート データ ペインに AdventureWorksDataset データセットとフィールドが表示されます。
次の作業
これで、レポートのデータを取得するクエリを指定できました。 次に、レポートのレイアウトを作成します。 「レッスン 4: レポートへのテーブルの追加 (Reporting Services)」を参照してください。
参照
SQL Server データ ツールのレポート デザイナーのクエリ デザイン ツール (SSRS)
SQL Server の接続の種類 (SSRS)
チュートリアル:Transact-SQL ステートメントの作成