2016-04-01 12 views
1

ベッドの予約率(ホテル内のようなもの)を知る必要があります。mdx startDateからendDateまでの期間の数値を取得する

(範囲内に部分的にある日付の予約の部分和を含む)の範囲内にある予約の日付の範囲をオンライン(月額合計月)の数、

StartDateとEndDateを "countSejoursDate"(カウント(行))とメジャー "NbrOfBeds"(合計)を持つ "予約"ファクトテーブルを作成しました。私はまた、任意の事実にリンクされていない「日」と呼ばれる第3回「ウィザードの時間」の次元を作成し enter image description here

: は、私は次のようにリンク2「ウィザードの時間」の次元を作成しました。

以下のMDXを使用して結果を取得しようとしている間、私はちょうど日付の範囲内の行の数を取得することができます...しかし、これでも毎月の1日の値は偽!

with member nbsejsDate as AGGREGATE( 
      {NULL:LINKMEMBER([Date].[Calendrier].CURRENTMEMBER,[START_DATE].[Start_Calendrier])} 
     * {LINKMEMBER([DATE].[Calendrier].CURRENTMEMBER, [END_DATE].[End_Calendrier]):NULL} 
     , [Measures].[countSejoursDate]) 
select nbsejsDate 
on 0 
, [Date].[Calendrier].[Jour].&[2015-03-01]:[Date].[Calendrier].[Jour].&[2015-03-31] on 1 
from [Cube] 

答えて

1

多少の関係が開始日と終了日の形式であるため、少し奇妙です。多対多の関係を使用するのではなく、MDXの計算に頼って正しい計算をしようとすると、それは扱いにくく、非常にエラーが発生しやすくなります。 - 事実で時間ディメンションのリンクでリンクタイプ

  • は(から)の範囲を使用します。

    はこれを解決するための異なる可能性があります。

  • Javascriptビューを使用して、日付の配列(開始/終了)の新しい列を作成します。多対多の関係が即座に作成されます。

問題が正しく理解されていれば、これにより計算が簡単になります。

助けてくれると助かります

+0

は無料ですか?それは16GBのラップトップ上のAdvWrks DWHに対して機能しますか?このラップトップを使用して標準のmdxで遊ぶことができますか?それとも、フロントエンドを購入する必要がありますか? – whytheq

+0

コミュニティ版は限られていますが、当社の製品は無料ではありません。このサイジングのために、エンタープライズバージョン – ic3

+0

を買わなければならないでしょう - 私は自宅にいるときにAdvWrksに対してmdxで遊ぶための安い方法がほしいです...方法はありますか? – whytheq

関連する問題