ALLSELECTED

他のすべてのコンテキスト フィルターまたは明示的なフィルターを保持しながら、現在のクエリの列と行からコンテキスト フィルターを削除します。

ALLSELECTED 関数は、行フィルターと列フィルター以外の明示的なフィルターおよびコンテキストを保持しながら、クエリ内のすべての行と列を表すコンテキストを取得します。 この関数を使用すると、クエリ内の表示部分の合計を取得できます。

構文

ALLSELECTED([<tableName> | <columnName>[, <columnName>[, <columnName>[,…]]]] )

パラメーター

用語 定義
tableName 既存のテーブルの名前。標準 DAX 構文を使用します。 このパラメーターに式を指定することはできません。 このパラメーターは省略できます。
columnName 標準 DAX 構文が使用された、既存の列の名前 (通常は完全修飾)。 これを式にすることはできません。 このパラメーターは省略できます。

戻り値

列フィルターと行フィルターを使用しないクエリのコンテキスト。

解説

  • 引数が 1 つある場合、その引数は "tableName" または "columnName" のいずれかです。 引数が複数ある場合は、同じテーブルの列である必要があります。

  • この関数は、クエリ内で明示的に設定されるすべてのフィルターを保持し、行フィルターと列フィルター以外のすべてのコンテキスト フィルターを保持する点が ALL () と異なります。

  • この関数は、計算列または行レベルのセキュリティ (RLS) ルールで使用される場合、DirectQuery モードでの使用はサポートされません。

次の例では、DAX 式を使用して、テーブル レポートでさまざまなレベルの表示部分の合計を生成する方法を示します。 レポートでは、2 つの以前のフィルターが再販業者の売上データに適用されています。1 つは販売区域グループ = "ヨーロッパ"、もう 1 つはプロモーションの種類 = "ボリューム割引" のフィルターです。 フィルターが適用されると、レポート全体、すべての年、またはすべての製品カテゴリについて、表示部分の合計を計算できます。 また、図示するために、すべての再販業者売上の総計も取得され、レポート内のすべてのフィルターが削除されます。 次の DAX 式を評価すると、表示部分の合計を含むテーブルを作成するために必要なすべての情報を含むテーブルが生成されます。

define  
measure 'Reseller Sales'[Reseller Sales Amount]=sum('Reseller Sales'[Sales Amount])  
measure 'Reseller Sales'[Reseller Grand Total]=calculate(sum('Reseller Sales'[Sales Amount]), ALL('Reseller Sales'))  
measure 'Reseller Sales'[Reseller Visual Total]=calculate(sum('Reseller Sales'[Sales Amount]), ALLSELECTED())  
measure 'Reseller Sales'[Reseller Visual Total for All of Calendar Year]=calculate(sum('Reseller Sales'[Sales Amount]), ALLSELECTED('Date'[Calendar Year]))  
measure 'Reseller Sales'[Reseller Visual Total for All of Product Category Name]=calculate(sum('Reseller Sales'[Sales Amount]), ALLSELECTED('Product Category'[Product Category Name]))  
evaluate  
CalculateTable(  
    //CT table expression  
    summarize(
//summarize table expression  
crossjoin(distinct('Product Category'[Product Category Name]), distinct('Date'[Calendar Year]))  
//First Group by expression  
, 'Product Category'[Product Category Name]  
//Second Group by expression  
, 'Date'[Calendar Year]  
//Summary expressions  
, "Reseller Sales Amount", [Reseller Sales Amount]  
, "Reseller Grand Total", [Reseller Grand Total]  
, "Reseller Visual Total", [Reseller Visual Total]  
, "Reseller Visual Total for All of Calendar Year", [Reseller Visual Total for All of Calendar Year]  
, "Reseller Visual Total for All of Product Category Name", [Reseller Visual Total for All of Product Category Name]  
)  
//CT filters  
, 'Sales Territory'[Sales Territory Group]="Europe", 'Promotion'[Promotion Type]="Volume Discount"  
)  
order by [Product Category Name], [Calendar Year]  

SQL Server Management Studio で AdventureWorks DW 表形式モデルに対して上記の式を実行すると、次の結果が得られます。

[Product Category Name] [Calendar Year] [Reseller Sales Amount] [Reseller Grand Total] [Reseller Visual Total] [Reseller Visual Total for All of Calendar Year] [Reseller Visual Total for All of Product Category Name]
アクセサリ 2000 80450596.9823 877006.7987 38786.018
アクセサリ 2001 80450596.9823 877006.7987 38786.018
アクセサリ 2002 625.7933 80450596.9823 877006.7987 38786.018 91495.3104
アクセサリ 2003 26037.3132 80450596.9823 877006.7987 38786.018 572927.0136
アクセサリ 2004 12122.9115 80450596.9823 877006.7987 38786.018 212584.4747
アクセサリ 2005 80450596.9823 877006.7987 38786.018
アクセサリ 2006 80450596.9823 877006.7987 38786.018
バイク 2000 80450596.9823 877006.7987 689287.7939
バイク 2001 80450596.9823 877006.7987 689287.7939
バイク 2002 73778.938 80450596.9823 877006.7987 689287.7939 91495.3104
バイク 2003 439771.4136 80450596.9823 877006.7987 689287.7939 572927.0136
バイク 2004 175737.4423 80450596.9823 877006.7987 689287.7939 212584.4747
バイク 2005 80450596.9823 877006.7987 689287.7939
バイク 2006 80450596.9823 877006.7987 689287.7939
衣服 2000 80450596.9823 877006.7987 95090.7757
衣服 2001 80450596.9823 877006.7987 95090.7757
衣服 2002 12132.4334 80450596.9823 877006.7987 95090.7757 91495.3104
衣服 2003 58234.2214 80450596.9823 877006.7987 95090.7757 572927.0136
衣服 2004 24724.1209 80450596.9823 877006.7987 95090.7757 212584.4747
衣服 2005 80450596.9823 877006.7987 95090.7757
衣服 2006 80450596.9823 877006.7987 95090.7757
コンポーネント 2000 80450596.9823 877006.7987 53842.2111
コンポーネント 2001 80450596.9823 877006.7987 53842.2111
コンポーネント 2002 4958.1457 80450596.9823 877006.7987 53842.2111 91495.3104
コンポーネント 2003 48884.0654 80450596.9823 877006.7987 53842.2111 572927.0136
コンポーネント 2004 80450596.9823 877006.7987 53842.2111 212584.4747
コンポーネント 2005 80450596.9823 877006.7987 53842.2111
コンポーネント 2006 80450596.9823 877006.7987 53842.2111

レポート内の列は次のとおりです。

Reseller Sales Amount
年と製品カテゴリに対する再販業者売上の実際の値。 この値は、レポートの中央のセル (年とカテゴリの交差部分) に表示されます。

Reseller Visual Total for All of Calendar Year
すべての年にわたる製品カテゴリの合計値。 この値は、レポート内のすべての年にわたって、所定の製品カテゴリの列または行の最後に表示されます。

Reseller Visual Total for All of Product Category Name
すべての製品カテゴリにおける 1 年間の合計値。 この値は、レポート内のすべての製品カテゴリにわたって、所定の年の列または行の最後に表示されます。

Reseller Visual Total
すべての年と製品カテゴリの合計値。 この値は、通常、テーブルの右下隅に表示されます。

Reseller Grand Total
これは、フィルターが適用される前の、すべての再販業者売上の総計です。[Reseller Visual Total] との違いがわかるはずです。 このレポートには 2 つのフィルターが含まれています。1 つは製品カテゴリ グループ、もう 1 つはプロモーション タイプのものであることに留意します。

注意

式に明示的なフィルターがある場合は、それらのフィルターも式に適用されます。