Aracılığıyla paylaş


GENERATE

Şunlar için geçerlidir:Hesaplanan sütunHesaplanan tabloÖlçüGörsel hesaplama

tablo1 içindeki her satır arasında Kartezyen çarpımını içeren bir tablo ve tablo2tablo1geçerli satır bağlamında değerlendiren tabloyu döndürür.

Sözdizimi

GENERATE(<table1>, <table2>)

Parametre

Terim Tanım
table1 Tablo döndüren herhangi bir DAX ifadesi.
table2 Tablo döndüren herhangi bir DAX ifadesi.

Dönüş değeri

tablo1 içindeki her satır arasında Kartezyen çarpımını içeren bir tablo ve tablo2tablo1 geçerli satır bağlamında değerlendirilmesinden kaynaklanan tablo

Açıklamalar

  • tablo1'deki geçerli satır için tablo2 değerlendirmesi boş bir tablo döndürürse, sonuç tablosu tablo1geçerli satırı içermez. Bu, tablo1 geçerli satırın sonuçlara eklendiği ve tablo2'ye karşılık gelen sütunların bu satır için null değerlere sahip olacağı () farklıdır.

  • tablo1 ve tablo2 tüm sütun adları farklı olmalıdır veya bir hata döndürülür.

  • Bu işlev, hesaplanan sütunlarda veya satır düzeyi güvenlik (RLS) kurallarında kullanıldığında DirectQuery modunda kullanılmak üzere desteklenmez.

Örnek

Aşağıdaki örnekte kullanıcı, Aşağıdaki tablo gibi Bayiler kanalı için Bölgeye ve Ürün Kategorisine göre satışların özet tablosunu ister:

SalesTerritory[SalesTerritoryGroup] ProductCategory[ProductCategoryName] [Bayi Satışları]
Avrupa Aksesuar -lar $ 142,227,27
Avrupa Bisiklet $ 9,970,200,44
Avrupa Giysi $ 365,847,63
Avrupa Bileşen $ 2,214,440,19
Kuzey Amerika Aksesuar -lar $ 379,305,15
Kuzey Amerika Bisiklet $ 52,403,796,85
Kuzey Amerika Giysi $ 1,281,193,26
Kuzey Amerika Bileşen $ 8,882,848,05
Pasifik Aksesuar -lar 12.769,57 USD
Pasifik Bisiklet $ 710,677,75
Pasifik Giysi 22.902,38 USD
Pasifik Bileşen $ 108,549,71

Aşağıdaki formül yukarıdaki tabloyu oluşturur:

GENERATE(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory 
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)
  1. İlk SUMMARIZE deyimi SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup]), aşağıda gösterildiği gibi her satırın bir bölge grubu olduğu bir bölge grupları tablosu oluşturur:

    SalesTerritory[SalesTerritoryGroup]
    Kuzey Amerika
    Avrupa
    Pasifik
    NA
  2. İkinci SUMMARIZE deyimi SUMMARIZE(ProductCategory, [ProductCategoryName], "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])), aşağıda gösterildiği gibi her grup için Bayi satışları içeren bir Ürün Kategorisi grupları tablosu oluşturur:

    ProductCategory[ProductCategoryName] [Bayi Satışları]
    Bisiklet $ 63,084,675,04
    Bileşen $ 11,205,837,96
    Giysi $ 1,669,943,27
    Aksesuar -lar $ 534,301,99
  3. Ancak, yukarıdaki tabloyu alıp bölge grupları tablosundaki her satırın bağlamı altında değerlendirdiğinizde, her bölge için farklı sonuçlar elde edebilirsiniz.