0

Excel Powerpivot に停止情報が保存されています。Powerpivot を使用して 1 か月あたりのアップタイムの可用性を表示および計算しようとしていますが、2 か月以上にわたる停止に少し悩まされています。

私の現在の設定:

Outage テーブルには、Application、Outage Start Time、Outage End Time、Duration の 4 つの列があります。期間は、終了時刻と開始時刻の差である計算列です。

Outage Start Time は、日付テーブルに関連付けられています。月ごとにスライサーがあるので、ユーザーは可用性データを表示する月を選択できます。powerpivot テーブルには、さまざまなアプリケーションのその月の可用性が表示されます。

停止の開始時刻と終了時刻が同じ月内にある場合、可用性の計算は正しいです。ただし、たとえば、停止が 7 月末に開始され、8 月の初めに終了した場合、これは 7 月の停止と見なされるだけです (開始時刻が日付テーブルに関連付けられているため)。理想的には、この停止の期間が 7 月と 8 月の両方に分割されることを望みます。これは可能ですか?

ありがとう!

4

1 に答える 1

1

タリー、

それは絶対に可能です!Outage テーブルに 2 つの計算列を作成して解決しました。

今月の停止期間を決定するもの:

=if([End]>EOMONTH([Start],0),EOMONTH([Start],0)-[Start],[End]-[Start])

もう 1 つは、翌月の停止を決定するためのものです。

=if([End]>EOMONTH([Start],0),[end]-EOMONTH([Start],0),blank())

次に、当月の停止だけでなく、前月からの翌月の停止も合計するメジャーを作成する場合は、もう少し複雑になります。まず、2 つの計算列をそれぞれ合計するメジャーを作成することから始めました。これは、論理的な構築に役立ち、パフォーマンスを向上させるための良い方法です。

[Cur Month Dur] = sum(Outage[Cur Month Outage])

[Following Month Dur] = sum(Outage[Following Month Outage])

次に、[Cur Month Dur] に [Following Month Dur] のフィルター処理されたバージョンを追加します。これにより、メジャーのフィルター コンテキストが開き、前月の日付テーブルが表示されます (数値である必要があります)。

=[Cur Month Dur] + 
      CALCULATE([Following Month Dur],
                    FILTER(
                         ALL(dimDate),
                         dimDate[Month Number]=max(dimDate[Month Number])-1
                          )
                )

メソッドの詳細な説明については、こちらを参照してください。

私の作品をSkyDriveにアップロードしました。

HTH

ジェイコブ

于 2013-03-26T11:09:40.487 に答える