0

SSAS キューブ計算でシステム テーブルにアクセスする方法はありますか?

たとえば、次のクエリを SSAS キューブで実行して、最終処理日を返すことができます。

SELECT LAST_DATA_UPDATE FROM $System.MDSCHEMA_CUBES WHERE CUBE_NAME = 'Cube'

計算でこの情報にどのようにアクセスしますか?

背景:以前は (サード パーティの sproc) ASSP を使用して、キューブが最後に処理された日付を取得していました。最近、この sproc がキューブの 1 つで例外をスローし、SSAS がダウンしました。MDX の上記の行を使用しても、この動作はありませんでした。キューブをサードパーティのコードに依存させたくないので、特定のキューブ名の計算で LAST_DATA_UPDATE にアクセスする方法を探しています。

4

1 に答える 1

1

私は通常、このような属性を含む ".​​Cube Information" などの分離されたディメンションをキューブに含めます。他の有用な属性は、データの最新性を明らかにすることができます。たとえば、基礎となる最後の ETL プロセスがいつ完了したか、またはキューブのリリース/ビルドがいつ行われたかなどです。

この「キューブ情報」ディメンションを、必要なデータを含む単一の行を返す SQL ビューからフィードします。SELECT ステートメントを使用できます。また、1 などの固定値を持つキー列を返す必要もあります。

「切り離された」とは、「キューブ情報」ディメンションが [キューブ ディメンションの関係] タブにエントリがないことを意味します。

キューブ計算スクリプトで、そのディメンションの DEFAULT_MEMBER プロパティを SSAS ビューの固定キー値に割り当てます。

その後、どのクライアント ツールもそれらの Dimension 属性にアクセスできます。

于 2012-11-02T02:29:42.170 に答える