none
OLAPキューブ参照時のエクセル ピボットテーブルサービスについて RRS feed

  • 質問

  • 現在、Microsoft SQL Server 2005 Analysis Service上のキューブを、Microsoft Excel 2003の
    ピボットテーブルサービスを利用して参照しております。

    ピボットにて、ディメンションを行、列に配置し、中にメジャーを設定しておりますが、データが存在しない部分の行、または列が消えてしまい困っております。

    OLAPキューブを参照しないピボットの場合には、「データのないアイテムを表示する」で対処できるのですが、何かよい方法はないでしょうか?

    よろしくお願いいたします

    2006年11月15日 8:17

回答

  • Measure値が(NULL)になるディメンションが表示されない、ということであれば
    あまりスマートなやり方ではありませんが、

     1. [キューブデザイン]→[計算]→[新しい計算されるメンバ]
     2. (Measure Nameが[xxxx]だとして) 式に、「CoalesceEmpty([Measures].[xxxx], 0)」を入力
     3. キューブ構成を保存
     4. キューブの処理

    Excel上からは[xxxx]ではなく、計算されたxxxxを参照するように変更してみてください。
    (SSAS2005 SP2-CTPとExcel2000による環境ではこの方法で対処できています)


    SQL ProfilerをSSASに設定して、ExcelからCubeを参照する際のMDXをそのままMDXクエリとして
    実行するとわかるのですが、Measure値が(NULL)となるフィールドもそのまま取得されています。

    よって、Excel上で(NULL)となるような値を列・行として追加しない処理が内部的に行われている
    ものと推測されます。

    2006年11月17日 4:03

すべての返信

  • Measure値が(NULL)になるディメンションが表示されない、ということであれば
    あまりスマートなやり方ではありませんが、

     1. [キューブデザイン]→[計算]→[新しい計算されるメンバ]
     2. (Measure Nameが[xxxx]だとして) 式に、「CoalesceEmpty([Measures].[xxxx], 0)」を入力
     3. キューブ構成を保存
     4. キューブの処理

    Excel上からは[xxxx]ではなく、計算されたxxxxを参照するように変更してみてください。
    (SSAS2005 SP2-CTPとExcel2000による環境ではこの方法で対処できています)


    SQL ProfilerをSSASに設定して、ExcelからCubeを参照する際のMDXをそのままMDXクエリとして
    実行するとわかるのですが、Measure値が(NULL)となるフィールドもそのまま取得されています。

    よって、Excel上で(NULL)となるような値を列・行として追加しない処理が内部的に行われている
    ものと推測されます。

    2006年11月17日 4:03
  •  

    解決しました!!

    実は、正直あきらめていました。

    返信遅れて本当に申し訳ありません。

    本当にありがとうございました。

    めちゃめちゃ うれしいです。

     




    BuddyLee
    2006年11月21日 11:57