レッスン 5: ドリルスルー レポートに渡すパラメータの追加 (レポート ビルダ 2.0)
ドリルスルー レポートとは、現在のレポート内のリンクをクリックするとアクセスできるレポートです。ドリススルー アクションが設定されたテキスト ボックスをクリックすると、ドリルスルー レポートが表示されます。ドリルスルー レポートにパラメータが存在する場合は、各レポート パラメータにパラメータ値を渡す必要があります。
このレッスンでは、まず、販売注文パラメータを受け取って販売注文の各行アイテムの製品名、数量、および合計金額を表示する新しいレポートをデザインします。データは AdventureWorks2008 サンプル データベースから取得します。次に、「チュートリアル : 基本的なテーブル レポートの作成 (レポート ビルダ 2.0)」またはその後のいずれかのレッスンで作成したレポートを変更して、販売注文のドリルスルー リンクを追加します。ユーザーがメイン レポート内のリンクをクリックすると、販売注文詳細レポートが開き、販売の各行アイテムが表示されます。
新しいレポート定義ファイルを作成してレポート サーバーに保存するには
[スタート] ボタンをクリックし、[プログラム]、[Microsoft SQL Server 2008 レポート ビルダ] の順にポイントして、[レポート ビルダ 2.0] をクリックします。
デザイン画面で、[タイトルを追加するにはここをクリックしてください] をクリックし、「Sales Order Details」と入力します。
レポート ビルダのボタンの [名前を付けて保存] をクリックします。
[最近使ったサイトとサーバー] をクリックします。
レポートを保存する権限があるレポート サーバーの名前をクリックします。
[名前] に「Sales Order Details」と入力します。
[保存] をクリックします。
これで、メイン レポートのリンクのターゲットとなる新しいレポートが保存されました。
テーブル ウィザードを起動して接続を追加するには
デザイン画面の [データを追加するには、ここをクリックしてください] で、[テーブルまたはマトリックス] をクリックします。
テーブルまたはマトリックスの新規作成ウィザードが開いて、[データ ソースへの接続の選択] ページが表示されます。
「チュートリアル : 基本的なテーブル レポートの作成 (レポート ビルダ 2.0)」で作成した AdventureWorks2008 サンプル データベースのデータ ソースを参照して指定するか選択します。
[次へ] をクリックします。
レポート データ用に Transact-SQL クエリを定義するには
[クエリのデザイン] ページで、[テキストとして編集] をクリックします。テキスト ベースのクエリ デザイナが表示されます。
次の Transact-SQL クエリをクエリ ペインに貼り付けます。
SELECT P.Name AS Product, SD.OrderQty AS Quantity, SD.LineTotal FROM Sales.SalesOrderDetail AS SD INNER JOIN Production.Product AS P ON SD.ProductID = P.ProductID INNER JOIN Sales.SalesOrderHeader AS SH ON SD.SalesOrderID = SH.SalesOrderID WHERE (SH.SalesOrderNumber = (@SalesOrder) ) ORDER BY SD.SalesOrderDetailID
[OK] をクリックします。
フィールド コレクションを作成する際は、クエリ デザイナでクエリ パラメータ値を使用してクエリを実行する必要はありません。それでもクエリを実行する場合は、販売注文番号として SO43661 を使用できます。
[次へ] をクリックします。
以上で、レポート定義にデータセットが追加されました。
データをグループにまとめるには
[フィールドの配置] ページで、Product を [行グループ] にドラッグします。
Quantity を [値] にドラッグします。
LineTotal を [値] にドラッグして Quantity の下に配置します。
[次へ] をクリックします。
以上で、テーブルに表示する 1 つの行グループと 2 つのデータ値が追加されました。
小計と合計を追加してスタイルを選択するには
[レイアウトの選択] ページの [オプション] で、[小計と総計を表示] が選択されていることを確認します。
[グループの展開/折りたたみ] オプションをオフにします。
3 つの列と 3 つの行があるテーブルが [プレビュー] ペインに表示されます。
[次へ] をクリックします。[スタイルの選択] ページでスタイルを選択します。
[完了] をクリックします。
テーブルがデザイン画面に追加されます。テーブルには 3 列および 3 行が含まれています。行グループ ペインには Product というグループのみが表示され、詳細データは表示されません。
[実行] をクリックして、レポートをプレビューします。
テーブルの書式を設定するには
[デザイン] ビューに切り替えます。
2 行目のセルをクリックして下にドラッグし、[Sum(LineTotal)] が格納された 2 つのセルを選択します。
[ホーム] タブの [数値] グループで、[通貨] ボタンをクリックします。
両方のセルの数値に通貨の書式が適用されます。
レポート ビルダのボタンの [保存] をクリックして、このレポートをレポート サーバーに保存します。
次に、メイン レポートとなるレポートを開いてドリルスルー アクションを追加し、このレポートを指定します。
レポートにレポート ドリルスルー アクションを追加するには
レポート ビルダのボタンの [開く] をクリックします。
前のレッスンで作成した Sales Order レポートに移動して、[開く] をクリックします。
SalesOrderNumber 列で [SalesOrderNumber] が含まれるテキスト ボックスを右クリックし、[テキスト ボックスのプロパティ] をクリックします。
[アクション] をクリックします。
[ハイパーリンクとして有効にする] の [レポートに移動する] を選択します。
ダイアログ ボックスに別のセクションが表示されます。
[レポートの指定] で、[参照] をクリックします。
[最近使ったサイトとサーバー] で、前の手順で作成した Sales Order Detail レポートを参照して、[開く] をクリックします。
[レポートの実行に以下のパラメータを使用] で、[追加] をクリックします。
新しい行がグリッドに追加されます。
[名前] の一覧で、SalesOrder を選択します。
ドロップダウン リストの [値] で、[SalesOrderNumber] を選択します。
これにより、対象レポートが必要なパラメータにメイン レポートの値がバインドされます。
次は、ドリルスルー リンクのテキスト スタイルと色を変更します。
[フォント] をクリックします。
ドロップダウン リストの [文字飾り] で、[下線] を選択します。
[色] の一覧で、[青] をクリックします。
[OK] をクリックします。
これで、追加したテキスト ボックスのテキストに下線と選択した色が付きます。こうした装飾によって、別のレポートへのアクティブなリンクがわかりやすくなります。
レポートのプレビューを表示するには
[実行] をクリックして、レポートをプレビューします。Sales Orders レポートには、日付でグループ化された販売注文が表示されます。SalesOrderNumber 列には、ドリルスルー リンクとして販売注文番号が表示されます。
販売注文番号をクリックします。
ドリルスルー リンクによって指定されたレポートが実行され、クリックした販売注文番号の注文の詳細が表示されます。
注意 メイン レポートに戻るには、レポート ビューア ツール バーの戻る矢印をクリックします。