トップページへ PASSJ ブログへ
トップページへ
分科会
特集!
コミュニケーション
資格
セミナー・コンファレンス
インフォメーション



ビジネスインテリジェンス ボードリーダー:木戸 隆福

毎月第2、第4木曜日はボードリーダーからのレポートを掲載いたします。
 
   

2003年9月11日
『日付の扱い その 1 』

夏のボーナスで前から欲しかったロフテーの枕買っちゃいました。自分に合ったいい枕使うと寝やすさが格段に違いますね!後は寝る時間を確保するだけです…。

企業活動を行っていくうえで避けては通れないものの一つとして、「利益を求める」ということがあります。企業活動は将来にわたって継続するものと仮定されており、人為的に一定期間を区切って業績の評価を行わなければなりません。(そんなこと当たり前だろう、と言われてしまいそうですね。)だからこそ分析が必要となってくるわけですが、「一定期間」という部分に着目すると日付に関連した仕組みづくりをきちんと行っておくことで、使いやすさが随分と変わってくることになります。

Analysis Services ではディメンションと計算されるメンバを活用していきます。まずはディメンションの設定ですが、企業文化によって多少違いはあるものの、概ね下記のような階層構造を定義することになると思います。

年度 - (半期) - (四半期) - 年月度 - 年月日

分析マネージャでは、こう言った項目全てを用意していなくても、日付型一項目を利用し自動的に他の階層を定義することが可能です。ディメンションウィザードで共有ディメンションを定義する際、「ディメンションの種類と選択」画面で「 Time ディメンション」を選んでください。次の「 Time ディメンションレベルの作成」画面において 9 種類の階層構造が用意されています。

Time ディメンションをウィザードで定義すると、実に簡単に処理してくれるのですが、非常にやっかいな問題が潜んでいます。まず一つ目が締日の概念がないということです。「 Time ディメンションレベルの作成」画面で年度の始まりを設定できるのですが、ここで「日」に 21 を指定したとしても、年初と年度末以外の月は末締で処理が行われてしまいます。(末締めの企業であれば問題ないのですが…この設定項目の有効な使い方をご存知の方、ぜひともご教授ください。)二つ目は年度の算出が決算日の年に寄せられてしまうという点です。 4 月を期首月とした場合、 2003 年 4 月は 2004 年度となってしまいます。日本の商習慣にはちょっと合っていない感じですね。

この問題を回避するためには、大きく分けて二つの方法があります。一つ目はディメンションエディタでプロパティペインの Member Key Column や MemberName Column を編集する方法です。二つ目は Time ディメンションを選ばず、日付処理用のディメンションテーブルに項目を用意しておき、通常のディメンションと同じ手順で定義していく方法です。しかし二つ目の方法には少々注意しなくてはならない点があります。次回へ続く。

ボードリーダーレポート トップページへ

 

 
PASSJメールニュース 著作権ついて プライバシーポリシー リンクポリシー お問い合わせ
(C) 2005 Professional Association for SQL Server Japan. All rights reserved.