Toplama yineleyici işlevlerini kullanma

Tamamlandı

Her tek sütunlu özetleme işlevinin eşdeğer bir yineleyici işlevi vardır. Aşağıdaki bölümlerde yineleyici işlevleri yararlı olduğunda iki toplama senaryosu ele alınıyor: karmaşık özetleme ve daha yüksek ayrıntılı özetleme.

Karmaşık özetleme

Bu bölümde yineleyici işlev kullanan ilk ölçünüzü oluşturacaksınız. Öncelikle Adventure Works DW 2020 M05.pbix dosyasını indirip açın. Daha sonra aşağıdaki ölçü tanımını ekleyin:

Revenue =
SUMX(
    Sales,
    Sales[Order Quantity] * Sales[Unit Price] * (1 - Sales[Unit Price Discount Pct])
)

Revenue ölçüsünü iki ondalık basamaklı para birimi olarak biçimlendirin ve raporun Sayfa 1'de bulunan tablo görseline ekleyin.

İki sütuna sahip tablo görselini gösteren görüntü: Month ve Revenue. Bir yıllık veri görüntüleniyor.

Kullanılan yineleyici işlev sayesinde Revenue ölçü formülü, tek bir sütundaki değerlerden daha fazlasını topluyor. Her satır için üç sütunluk satır bağlam değerlerini kullanarak gelir tutarını elde ediyor.

Şimdi bir ölçü daha ekleyelim:

Discount =
SUMX(
    Sales,
    Sales[Order Quantity]
    * (
        RELATED('Product'[List Price]) - Sales[Unit Price]
    )
)

Discount ölçüsünü iki ondalık basamaklı para birimi olarak biçimlendirin ve tablo görseline ekleyin.

Üç sütuna sahip tablo görselini gösteren görüntü: Month, Revenue ve Discount. Bir yıllık veri görüntüleniyor.

Formülün işlevini kullandığına RELATED dikkat edin. Satır bağlamının tablonun ötesine geçmediğini unutmayın. Formülünüzün diğer tablolardaki sütunlara başvurması gerekiyorsa ve tablolar arasında model ilişkileri varsa, tek taraflı ilişki için işlevini veya RELATEDTABLE çok taraflı ilişki için işlevini kullanınRELATED.

Yüksek ayrıntılı özetleme

Aşağıdaki örnekte ortalama gelirin bildirilmesi gereksinimi göz önüne alınmıştır. Şu ölçüyü ekleyin:

Revenue Avg =
AVERAGEX(
    Sales,
    Sales[Order Quantity] * Sales[Unit Price] * (1 - Sales[Unit Price Discount Pct])
)

Revenue Avg ölçüsünü iki ondalık basamaklı para birimi olarak biçimlendirin ve tablo görseline ekleyin.

Dört sütuna sahip tablo görselini gösteren görüntü: Month, Revenue, Discount ve Revenue Avg. Bir yıllık veri görüntüleniyor.

Ortalama ifadesinin değerlerin toplamının değer sayısına bölünmesini ifade ettiğini unutmayın. Ancak bu teori şu soruyu da beraberinde getirir: Değer sayısı neleri kapsar? Bu örnekte değer sayısı, BLANK sonucu vermeyen ifadelerin sayısıdır. Ayrıca yineleyici işlevi Sales tablosu satırlarını numaralandırdığından ortalama, satır başına gelir anlamına gelir. Sales tablosundaki her satır bir satış siparişi satırı kaydettiğinden, bu mantığı bir adım daha ileri götürerek, sipariş satırı başına gelir olarak daha kesin bir şekilde açıklanabilir.

Bu nedenle rapor kullanıcılarının ortalama için temel alınan ölçütü daha kolay anlamalarına yardımcı olmak için Revenue Avg ölçüsünün adını Revenue Avg Order Line olarak değiştirmeniz gerekir.

Aşağıdaki örnekte bir yineleyici işlev kullanılarak ayrıntı düzeyini satış siparişi (bir satış siparişinde bir veya daha fazla sipariş satırı bulunur) düzeyine çıkaran yeni bir ölçü oluşturulmuştur. Şu ölçüyü ekleyin:

Revenue Avg Order =
AVERAGEX(
    VALUES('Sales Order'[Sales Order]),
    [Revenue]
)

Revenue Avg Order ölçüsünü iki ondalık basamaklı para birimi olarak biçimlendirin ve tablo görseline ekleyin.

Beş sütuna sahip tablo görselini gösteren görüntü: Month, Revenue, Discount, Revenue Avg Order Line ve Revenue Avg Order. Bir yıllık veri görüntüleniyor.

Beklendiği üzere bir siparişin ortalama geliri her zaman tek bir sipariş satırının ortalama gelirinden daha yüksektir.

Formülde DAX işlevinin kullanıldığına VALUES dikkat edin. Bu işlev, formüllerinizin filtre bağlamındaki değerleri belirlemesini sağlar. Bu durumda işlev, AVERAGEXfiltre bağlamındaki her satış siparişi üzerinde yinelenir. Başka bir deyişle ay içindeki her bir satış siparişi için yinelenir. Filtre bağlamı VALUES ve işlevi, filtre bağlamı modülünde tanıtılır.