次の方法で共有


MDX クエリを使用して PerformancePoint ダッシュボードを拡張する

 

適用先: SharePoint Server 2010 Enterprise

トピックの最終更新日: 2016-11-30

PerformancePoint ダッシュボード デザイナーでユーザー設定の Multidimensional Expression (MDX) クエリを使用することで、ダッシュボードの機能を拡張できます。次のようなことが可能です。

  • [接続式] ダイアログ ボックスを使用して、高度なダッシュボード フィルターとダッシュボード アイテムの間の接続を構成します。このダイアログ ボックスでは、特定のフィルターの動作を改善するクエリを入力します。

  • [クエリ] タブで MDX クエリを使用して分析グラフや分析グリッドにカスタマイズしたビューを作成します。

  • [ディメンション データ ソース マッピング] ダイアログ ボックスで MDX タプルを使用して、スコアカード内の主要業績評価指標 (KPI) の計算されたメンバーを作成します。

MDX クエリは、MDX および PerformancePoint ダッシュボード アイテムで使用される SQL Server Analysis Services データに習熟した高度なダッシュボード作成者に特に役に立ちます。

ここでは、使用できる MDX ステートメントの例をいくつか紹介します。ただし、ここで示す例は完全なものではありません。ダッシュボード デザイナー では他にも多くの MDX クエリを使用できます。MDX クエリの詳細については、「多次元式 (MDX) リファレンス」(https://go.microsoft.com/fwlink/?linkid=185458&clcid=0x411) を参照してください。

注意

この記事のサンプルは、Microsoft SQL Server で使用できる AdventureWorks サンプル データベースを使用して作成されています。

この記事の内容

  • [接続式] ダイアログ ボックスで MDX を使用する (フィルター)

  • 分析グラフまたは分析グリッドの [クエリ] タブで MDX を使用する

  • [ディメンション データ ソース マッピング] ダイアログ ボックスで MDX を使用する (スコアカード KPI)

[接続式] ダイアログ ボックスで MDX を使用する

[接続式] ダイアログ ボックスを使用して、ダッシュボード アイテムでのダッシュボード フィルターの動作を拡張できます。たとえば、製品の販売を示す地理フィルターと分析グラフを含むダッシュボードを作成してあるものとします。既定では、ユーザーがフィルターで地域または国を選択すると、その地域または国での製品の販売数量がグラフに表示されます。さらに、各地域/国の販売上位 10 製品だけを表示するものとします。このような場合は、[接続式] ダイアログ ボックスを使用して、目的の情報を表示する MDX クエリを入力します。フィルターと分析グラフは変化しませんが、レポートでのフィルターの動作方法が変わります。

[接続式] ダイアログ ボックスで MDX クエリを入力するときは、<<uniquename>> のようなモニカーを式に含めることができます。使用するモニカーには追加の MDX コードを含めることができますが、必須ではありません。たとえば、<<uniquename>> だけを使用して、フィルター対象のディメンション メンバーについての一般的な情報を表示できます。または、<<uniquename>>.children を使用すると、フィルター対象のディメンションについての次のレベルの詳細情報を表示できます。

次の表に、[接続式] ダイアログ ボックスで使用できるコードの例を示します。

説明 構文

選択されているメンバーの子

<<UniqueName>>.Children or <<SourceValue>>.Children

選択されているメンバーの親

<<UniqueName>>.Parent

メンバーのレベル 2 の子孫

Descendants(<<UniqueName>>,2)

2008 年第 3 四半期の "Internet Sales Amount" 測定値についての、メンバーのレベル 2 の上位 10 子孫

TopCount({Descendants(<<UniqueName>>,2)}, 10, ([Date].[Calendar].[Calendar Quarter].&[2008]&[3],[Measures].[Internet Sales Amount]))

複数の国または地域を比較して各地域の上位 2 メンバー (都市) を選択する Hierarchize 関数

Hierarchize(Union(<<UniqueName>>, Generate(<<UniqueName>>, TopCount(Descendants([Geography].[Geography].CurrentMember, [Geography].[Geography].[City]), 2, ([Measures].[Sales Amt], [Time].[FY Year].&[2006]) )) ))

空でない値の関数

NONEMPTY(EXISTS([Dimension].[Hierarchy - Dimension].[Level number].members,<<SourceValue>>,'Measure Group'))

ダッシュボード フィルターをレポートまたはスコアカードに接続するときは、[接続式] ダイアログ ボックスを開いて使用します。詳細については、「ダッシュボード デザイナーを使用してフィルターをレポートまたはスコアカードに接続する」および「ダッシュボード デザイナーで [接続式] ダイアログ ボックスを使用してフィルター接続を構成する」を参照してください。

分析グラフまたは分析グリッドの [クエリ] タブで MDX を使用する

分析グラフおよび分析グリッドを作成または編集するときは、[クエリ] タブでユーザー設定の MDX クエリを使用してレポートを構成できます。通常は、これにより、[デザイン] タブで使用できるドラッグアンドドロップ機能では複製できない特定の分析ビューを作成します。

Visual Basic メモVisual Basic Note
ユーザー設定の MDX を使用して作成したレポートでは、ダッシュボードでの機能の一部が失われます。たとえば、ユーザー設定の MDX コードを含む分析グラフおよびグリッドでは、データを調べて上位レベルまたは下位レベルの詳細情報を表示できません。ユーザー設定の MDX クエリを使用するときは、このことを考慮してください。

次の表に、[クエリ] タブで分析グラフおよびグリッドに使用できるコードの例を示します。

説明 構文

分析グラフに固定のラインを追加し、目標値を示します。ドラッグアンドドロップ機能を使用してビューを作成した後、[クエリ] タブをクリックして WITH MEMBER 句を追加できます。

WITH MEMBER [Measures].[Target] As 0.04, FORMAT_STRING="0.0%" SELECT { DESCENDANTS( [Date].[Fiscal].[FY 2003], [Date].[Fiscal].[Month] ) } ON COLUMNS, { [Measures].[Reseller Gross Profit Margin], [Measures].[Target] } ON ROWS FROM [AdventureWorks]

分析グラフのメンバー セットを指定するために使用できるユーザー設定の MDX クエリを作成します。このクエリ例は、2006 年の販売数量が上位 20 の製品を含むメンバー セットを返します。また、このクエリはパラメーター <<Product>><<Geography>> も作成します。

SELECT {[Time].[Calendar].[Year].&[2006]} ON COLUMNS, {TOPCOUNT({DESCENDANTS(<<Product>>, [Product].[Product].[Product]) }, 20, ( [Time].[Calendar].[Year].&[2006], [Measures].[Sales Amt]) ) } ON ROWS FROM [Sales] WHERE ( <<Geography>>, [Measures].[Sales Amt] )

分析グラフまたは分析グリッドを作成または編集するときは、[クエリ] タブを使用します。詳細については、「分析グラフと分析グリッドを作成する」を参照してください。

[ディメンション データ ソース マッピング] ダイアログ ボックスで MDX を使用する

スコアカードで高度な KPI を構成する必要があるときは、[ディメンション データ ソース マッピング] ダイアログ ボックスを使用して MDX タプルを入力し、計算値を作成できます。たとえば、営業チーム用のスコアカードを含むダッシュボードを作成してあるものとします。このスコアカードでは、割り当て数量と実際の販売数量を比較します。ただし、営業の割当数量は年ごとに変わります。このような場合は、計算された目標値を使用する KPI を作成します。[ディメンション データ ソース マッピング] ダイアログ ボックスを使用して MDX タプルを入力できます。

次の表に、使用できるコードの例を示します。

説明 構文

前年の同期間より 10% 多い目標 KPI を計算します。

([Measures].[Sales Amount], [Date].[Fiscal].[Fiscal Year].&[2007].PrevMember)*1.1

KPI の傾向インジケーターを作成します。

(([Date].[Calendar].CurrentMember, [Measures].[Customer Count])-([Date].[Calendar].CurrentMember.PrevMember, [Measures].[Customer Count]))/([Date].[Calendar].CurrentMember.PrevMember, [Measures].[Customer Count])

前年の同期間の販売数量の 20% 増しを計算します。

([Measures].[Sales Amount], ParallelPeriod([Date].[Fiscal].[Fiscal Year], 2, [Date].[Fiscal].[Fiscal Quarter].&[2007]&[2]))*1.2

KPI を構成するときは、[ディメンション データ ソース マッピング] ダイアログ ボックスを使用します。詳細については、「ダッシュボード デザイナーを使用して KPI を作成および構成する」を参照してください。