レッスン 3: レポート モデルに基づくクエリの作成
このレッスンでは、年度ごとと四半期ごとに製品の売上を示すクエリを作成します。クエリには 6 つのフィールドを追加し、2003 年 5 月 1 日以降のデータだけを返すようにフィルタを適用します。作成するクエリは、SQL Server 2008 レポート ビルダのサンプル レポート「Product by Sales Year」で使用されているクエリと同じです。
クエリ デザイナ ウィンドウを開くには
ソリューション エクスプローラで [レポート] を右クリックし、[新しいレポートの追加] をクリックします。
レポート ウィザードが表示されます。
[次へ] をクリックします。
[データ ソースの選択] ページが表示されます。
[共有データ ソース] ドロップダウン リストで、[RMQBdatasource] を選択します。
[次へ] をクリックします。
[クエリのデザイン] ページで、[クエリ ビルダ] をクリックします。
[クエリ デザイナ] ウィンドウが表示されます。このウィンドウはレポート ビルダと似ています。左側に、クエリに追加できるエンティティと各フィールドの一覧があり、エンティティ一覧の右側にドロップ領域があります。クエリを作成するには、クエリで使用するエンティティとフィールドをこの領域にドラッグします。フィールド一覧の右には結果ペインがあります。いつでもクエリを実行して、返される結果を確認できます。
クエリを作成するには
[クエリ ビルダ] ウィンドウの [エンティティ] ボックスで、[Product] を選択します。
[フィールド] ボックスで、[Product Category] フィールドを選択し、クエリ領域へドラッグします。
[フィールド] ボックスから、[Product Subcategory] フィールドを Product Category フィールドの右端へドラッグします。
[フィールド] ボックスから、[Name] フィールドを Product Subcategory フィールドの右端へドラッグします。
[エンティティ] ボックスで、[Sales] をクリックし、次に [Sales Order] をクリックします。
[フィールド] ボックスで、[Order Date] フィールドを展開します。
[フィールド] ボックスから、[Order Year] フィールドを Name フィールドの右端へドラッグします。
[フィールド] ボックスから、[Order Quarter] フィールドを Order Year フィールドの右端へドラッグします。
[フィールド] ボックスから、[Sum Total Due] フィールドを Order Quarter フィールドの右端へドラッグします。
これで、必要なフィールドがすべて追加され、クエリは次のようになります。
次に、クエリにフィルタを適用します。
フィルタを適用するには
クエリ デザイナのツール バーで、[フィルタ] をクリックします。
[データのフィルタ選択] ダイアログ ボックスが表示されます。
[エンティティ] ボックスで、[Product] をクリックします。
[フィールド] ボックスで、[Product Category] をダブルクリックします。
フィルタ句で、[が次の値に等しい] をクリックし、次に [一覧にある] を選択します。
[(値が選択されていません)] をクリックし、次に [Accessories]、[Bikes]、および [Clothing] を選択します。
表示されるレポートでは、これらの製品の販売データだけが返されます。
[エンティティ] ボックスで、[Sales Order] をクリックします。
[フィールド] ボックスで、[Order Date] をクリックします。
フィルタ句で、[Order Date] をクリックし、次に [プロンプト] を選択します。
[が次の値に等しい] を右クリックし、[指定日付以後] をクリックします。
ドロップダウン リストで [5/1/2003] を選択するか、入力します。
[OK] をクリックします。
これで、レポート クエリにフィルタを適用しました。レポート ビューアに特定の販売日を入力すると、2003 年 5 月 1 日以降のアクセサリ、自転車、衣類の売上だけが表示されるようになります。次に、レポート ウィザードに戻ります。
レポート ウィザードに戻るには
クエリ デザイナで、[OK] をクリックします。
レポート ウィザードの [クエリのデザイン] ページが再度表示されます。先ほど作成したクエリは [クエリ文字列] ボックスに表示されます。