次の方法で共有


GENERATEALL

適用対象: 計算列計算テーブルメジャービジュアル計算

table1 の各行と table1 から現在の行のコンテキストで table2 評価した結果のテーブル デカルト積を持つテーブル 返します。

構文

GENERATEALL(<table1>, <table2>)

パラメーター

用語 定義
table1 テーブルを返す任意の DAX 式。
table2 テーブルを返す任意の DAX 式。

戻り値

table1 の各行と、table1 から現在 の行のコンテキストで table2 評価されたテーブルの間にデカルト積 テーブル

備考

  • table1 の現在の行に対して table2 を評価 空のテーブルが返された場合、table1 の現在の行 table2 に対応する結果と列に含まれる には、その行の null 値が含まれます。 これは、table1 の現在の行 結果に含まれない () とは異なります。

  • table1 と table2 列名はすべて異なるか、エラーが返される必要があります。

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

次の例では、次の表のように、Resellers チャネルの地域別および製品カテゴリ別の売上の概要テーブルが必要です。

SalesTerritory[SalesTerritoryGroup] ProductCategory[ProductCategoryName] [Reseller Sales]
ヨーロッパ 小物 $ 142,227.27
ヨーロッパ バイク $ 9,970,200.44
ヨーロッパ 衣類 $ 365,847.63
ヨーロッパ コンポーネント $ 2,214,440.19
NA 小物
NA バイク
NA 衣類
NA コンポーネント
北アメリカ 小物 $ 379,305.15
北アメリカ バイク $ 52,403,796.85
北アメリカ 衣類 $ 1,281,193.26
北アメリカ コンポーネント $ 8,882,848.05
パシフィック 小物 $ 12,769.57
パシフィック バイク $ 710,677.75
パシフィック 衣類 $ 22,902.38
パシフィック コンポーネント $ 108,549.71

次の式は、上記の表を生成します。

GENERATEALL(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)
  1. 最初の SUMMARIZE では、次に示すような担当地域グループのテーブルが生成されます。各行は担当地域グループです。

    SalesTerritory[SalesTerritoryGroup]
    北アメリカ
    ヨーロッパ
    パシフィック
    NA
  2. 2 番目の SUMMARIZE では、次に示すように、各グループの再販業者の売上を含む製品カテゴリ グループのテーブルが生成されます。

    ProductCategory[ProductCategoryName] [Reseller Sales]
    バイク $ 63,084,675.04
    コンポーネント $ 11,205,837.96
    衣類 $ 1,669,943.27
    小物 $ 534,301.99
  3. ただし、上記のテーブルを取得し、担当地域グループ テーブルの各行のコンテキストでテーブルを評価すると、担当地域ごとに異なる結果が得られます。