Office Excel Add-in for SQL Server Analysis Services その4

Office Excel Add-in for SQL Server Analysis Services その3 の続きです。

今回は What-if分析 という機能を紹介します。
What-if分析 とは、「もしもアイスクリームの単価があと100円高かったなら、この四半期の売り上げはどうなっていただろうか」といった、任意のデータを変更することによる影響を分析することです。

What-if分析 は Office Excel Add-in for SQL Server Analysis Services (以下アドイン) 独特の機能というわけではなく、Excel 2003 も元々搭載している機能ですが、アドインの What-if分析 はクライアントの Excel で行った分析の結果をサーバのキューブに書き戻す機能を搭載しており、これが標準搭載の同機能との大きな差異となります。

Excel 2003 に標準搭載の What-if分析 機能については、マイクロソフトの Office Online にデモが用意されています。
動画による解説ですから What-if分析 がどういった機能なのかを理解し易いと思います。
デモ: Excel の "what-if" シナリオを使用して直感をチェックする

アドインを利用した分析に標準搭載の What-if分析 機能を活用できれば便利なのですが、アドインを利用して表示したレポート (分析用の、ピボットテーブルのようなUI) はセルが基本的に読み取り専用となっており、値の書き換えが必須となる What-if分析 とは相性が悪いです。
もちろん、Office Excel Add-in for SQL Server Analysis Services その1 で解説しました [自由形式に変換] 機能を活用すれば標準搭載の What-if分析 機能を利用することも可能です。

ただ、前述の通り、アドインの What-if分析 には分析時に活用した値をサーバに書き戻すことで分析値を再利用する機能を備えています。
標準搭載とアドインと、それぞれの What-if分析 に利点がありますから、適材適所で活用していくことになります。

それでは解説を開始します。
まずはアドインを用いてキューブのレポートを表示します。

Office Excel Add-in for SQL Server Analysis Services によるレポート

What-if分析を行うにあたって、影響を分析するために書き換えることの出来る値は、行と列の両方をリーフレベル (leaf-level: これ以上掘り下げられないレベル) までドリルダウンしたときに表示される値だけです。
書き換えてみたい値が表示されるレベルまでドリルダウンします。
今回は画面領域の都合で「1996年2月21日、水曜日」のデータのみを表示しています。

リーフレベルまでドリルダウン

What-if分析を開始するために、メニューバーを [キューブ分析] - [What-if 分析] の順に辿り、[開始] をクリックします。

What-if分析 の開始

今回利用したキューブはサーバ側で書き戻しの機能が無効に設定されているため、注意を促すメッセージが表示されました。

注意を促すメッセージ

メッセージのダイアログを閉じると、リーフレベルのセルが黄色になりました。
着色されたセルを任意の値に変更することで、その影響を分析していきます。

リーフレベルのセルが着色される

「スポーツ飲料パワー」の金額を「9000」から「30000」に増やしてみます。
セルの値を書き換えると、オリジナルの値がポップアップします。備忘録のようなものでしょう。

影響を調査したい値を書き換える

リーフレベルの値を変更しても、この時点でセル B4 に表示されている飲料の合計金額に変化がありません。
なぜなら、SQL Server の Analysis Services を用いたキューブ分析の場合、合計金額はクライアントサイドで Excel が計算するもののではなく、サーバサイドで Analysis Services が計算するものだからです。

合計金額を更新するためにツールバーで [レポートの更新] アイコンをクリックします。

レポートの更新アイコン

[レポートの更新] ダイアログが表示されてプログレスバーが再計算の進捗を教えてくれます。

レポートの更新ダイアログ

サーバサイドで合計金額が再計算され、結果が Excel に反映されました。

合計金額が更新される

最後に What-if分析 の後始末をします。
この操作を行わないと Excel を終了することが出来ません。

What-if分析を終了するために、メニューバーを [キューブ分析] - [What-if 分析] の順に辿り、[終了] をクリックします。
キューブの書き戻し機能が有効になっていれば、ここで [書き戻しのコミット] を選択して分析値を再利用することも出来ます。

What-if分析 のキャンセル

[レポートの更新] ダイアログが表示されてプログレスバーが再計算の進捗を教えてくれます。

レポートの更新ダイアログ

分析前の状態に戻りました。

分析終了

Published 土, 6 10 2006 16:34 by Ryosuke Uemoto