ドリルスルー アクションの定義と使用
ファクト ディメンションによってファクト データを多次元化する場合、必要なデータのみが返されるようにフィルタを設定しないとクエリのパフォーマンスが低下する可能性があります。これを回避するために、返される合計行数を制限するドリルスルー アクションを定義できます。これにより、クエリのパフォーマンスが大幅に向上します。
このトピックの作業では、インターネット経由での顧客への販売について注文の詳細情報を返すドリルスルー アクションを定義します。
ドリルスルー アクション プロパティの定義
ドリルスルー アクション プロパティを定義するには
Analysis Services Tutorial キューブのキューブ デザイナを開いて、[アクション] タブをクリックします。
[アクション] タブにはいくつかのペインがあります。このタブの左側には [アクション オーガナイザ] ペインと [計算ツール] ペインがあります。これら 2 つのペインの右側には表示ペインがあり、[アクション オーガナイザ] ペインで選択したアクションの詳細が表示されます。
次の図はキューブ デザイナの [アクション] タブを示しています。
[アクション] タブのツール バーで [新しいドリルスルー アクション] ボタンをクリックします。
表示ペインに、空のアクション テンプレートが表示されます。
[名前] ボックスに、このアクションの名前として「Internet Sales Details Drillthrough Action」と入力します。
[メジャー グループのメンバ] ボックスの一覧で [Internet Sales] をクリックします。
[ドリルスルー列] で、[ディメンション] の一覧から [Internet Sales Order Details] を選択します。
[返される列] 列で、[Item Description] と [Order Number] チェック ボックスをオンにして、[OK] をクリックします。次の図は、ここまでの手順を実行した場合に表示されるアクション テンプレートを示しています。
次の図のように、[追加のプロパティ] を展開します。
[最大行数] ボックスに「10」と入力します。
[キャプション] ボックスに「Drillthrough to Order Details...」と入力します。
これらの設定は、返される行数を制限し、クライアント アプリケーションのメニューに表示されるキャプションを指定します。次の図は、[追加のプロパティ] での設定を示しています。
ドリルスルー アクションの使用
ドリルスルー アクションを使用するには
[ビルド] メニューの [Analysis Services Tutorial の配置] をクリックします。
配置が正常に完了したら、Analysis Services Tutorial キューブのキューブ デザイナで [ブラウザ] タブをクリックし、[再接続] ボタンをクリックします。
データ ペインからすべての階層とメジャーを削除し、フィルタ ペインからすべてのディメンション メンバを削除します。
Internet Sales-Sales Amount メジャーをデータ領域に追加します。
Customer ディメンションの Location フォルダの Customer Geography ユーザー定義階層を [フィルタ] ペインに追加します。
[フィルタ式] の一覧で、[All Customers]、[Australia]、[Queensland]、[Brisbane]、[4000] の順に展開し、Adam Powell のチェック ボックスをオンにして [OK] をクリックします。
Adam Powell に対する Adventure Works Cycles 社の売上合計がデータ領域に表示されます。
データ ペイン内のデータ セルをクリックし、そのデータ セルを右クリックして、[Drillthrough to Order Details] をクリックします。
次の図のように、Adam Powell に発送された注文の詳細が [データ サンプル ビューア] に表示されます。しかし、注文日、期限、発送日などの追加の情報があればさらに便利です。次の手順では、これらの情報を追加します。
[閉じる] をクリックして [データ サンプル ビューア] ウィンドウを閉じます。
ドリルスルー アクションの変更
ドリルスルー アクションを変更するには
Internet Sales Order Details ディメンションのディメンション デザイナを開きます。
このディメンションには 3 つの属性しか定義されていません。
[データ ソース ビュー] ペインで、何もない領域を右クリックし、[すべてのテーブルを表示] をクリックします。
[書式] メニューの [自動レイアウト] をポイントし、[ダイアグラム] をクリックします。
InternetSales (dbo.FactInternetSales) テーブルを検索します。検索するには、[データ ソース ビュー] ペインの空いている領域を右クリックし、[テーブルの検索]、[InternetSales]、[OK] の順にクリックします。
以下の列を基にして、新しい属性を作成します。
OrderDateKey
DueDateKey
ShipDateKey
Order Date Key 属性の Name プロパティを Order Date に変更します。次に、Name Column プロパティの参照ボタンをクリックし、[名前列] ダイアログ ボックスで、基になるテーブルとして [Date] を選択し、基になる列として [SimpleDate] を選択します。[OK] をクリックします。
Due Date Key 属性の Name プロパティを Due Date に変更します。次に、Order Date Key 属性と同じ方法で、この属性の Name Column プロパティを Date.SimpleDate (WChar) に変更します。
Ship Date Key 属性の Name プロパティを Ship Date に変更します。次に、この属性の Name Column プロパティを Date.SimpleDate (WChar) に変更します。
Analysis Services Tutorial キューブのキューブ デザイナを開き、[アクション] タブに切り替えます。
[ドリルスルー列] ボックスで、チェック ボックスをオンにして以下の列を [返される列] の一覧に追加し、[OK] をクリックします。
Order Date
Due Date
Ship Date
次の図はこれらの列が選択された状態を示しています。
変更されたドリルスルー アクションの確認
変更されたドリルスルー アクションを確認するには
[ビルド] メニューの [Analysis Services Tutorial の配置] をクリックします。
配置が正常に完了したら、Analysis Services Tutorial キューブのキューブ デザイナで [ブラウザ] タブに切り替え、[再接続] ボタンをクリックします。
データ セルを 1 つクリックし、そのセルを右クリックして [Drillthrough to Order Details] をクリックします。
Adam Powell に発送された注文の詳細が [データ サンプル ビューア] に表示されます。表示される情報には、次の図に示すように、注文日、期限、発送日が含まれます。
[閉じる] をクリックして [データ サンプル ビューア] を閉じます。