CALCULATE İşlevi
Belirtilen filtreler tarafından değiştirilen bir bağlamda ifadeyi değerlendirir.
Sözdizimi
CALCULATE(<expression>,<filter1>,<filter2>…)
Parametreler
Terim |
Tanım |
---|---|
expression |
Değerlendirilecek ifade. |
filter1,filter2,… |
(isteğe bağlı) Bir filtre tanımlayan ve virgülle ayrılmış Boole ifadesi veya tablo ifadesi listesi. |
İlk parametre olarak kullanılan ifade aslında ölçü olarak aynıdır.
Bağımsız değişken olarak kullanılan Boole ifadeleri için aşağıdaki kısıtlamalar geçerlidir:
İfade bir ölçüye başvuramaz.
İfade iç içe geçmiş CALCULATE işlevi kullanamaz.
İfade, toplama işlevleri dahil bir tabloyu tarayan veya tablo döndüren herhangi bir işlevi kullanamaz.
Ancak, Boole ifadesi tek bir değeri arayan veya skalar bir değer hesaplayan her işlevi kullanabilir.
Dönüş Değeri
İfadenin sonucu olan değer.
Açıklamalar
Veriler filtrelenmişse, CALCULATE işlevi verilerin filtrelendiği bağlamı değiştirir ve ifadeyi belirtilen yeni bağlamda değerlendirir. Filtre bağımsız değişkeninde kullanılan her sütun için, o sütundaki varolan tüm filtreler kaldırılır ve onun yerine filtre bağımsız değişkeninde kullanılan filtre uygulanır.
Örnek
Şu anki bayi satışlarının tüm bayi satışlarına oranını hesaplamak için, PivotTable'a geçerli hücredeki (pay) satışların toplamını hesaplayan ve sonra bu toplamı tüm bayilerin toplam satısına bölen (payda) bir ölçü eklersiniz. PivotTable'ın verileri filtreleme veya gruplandırma biçimi ne olursa olsun paydanın aynı kalmasını sağlamak amacıyla, formülün paydayı temsil eden bölümünün filtre varsa bunları temizlemek ve doğru toplamı oluşturmak için ALL işlevini kullanması gerekir.
Aşağıdaki tablo, kod bölümündeki formül kullanılarak Tüm Bayi Satışları Oranı adlı yeni ölçü oluşturulduğunda sonuçları göstermektedir.
Bunun nasıl çalıştığını görmek için, PivotTable'ın Satır Etiketleri bölgesine CalendarYear alanını ekleyin ve Sütun Etiketleri bölgesine ProductCategoryName alanını ekleyin. Ardından, yeni ölçüyü PivotTable'ın Değerler bölgesine ekleyin. Sayıları yüzde olarak görüntülemek için, PivotTable'ın yeni Tüm Bayi Satışları Oranı ölçüsünü içeren bölgesine yüzdelik sayı biçimlendirmesi uygulayın.
Tüm Yetkili Satıcı Satışları |
Sütun Etiketleri |
|
|
|
|
---|---|---|---|---|---|
Satır Etiketleri |
Aksesuarlar |
Bisikletler |
Giyecek |
Bileşenler |
Genel Toplam |
2005 |
0.02% |
9.10% |
0.04% |
0.75% |
9.91% |
2006 |
0.11% |
24.71% |
0.60% |
4.48% |
29.90% |
2007 |
0.36% |
31.71% |
1.07% |
6.79% |
39.93% |
2008 |
0.20% |
16.95% |
0.48% |
2.63% |
20.26% |
Genel Toplam |
0.70% |
82.47% |
2.18% |
14.65% |
100.00% |
=( SUM('ResellerSales_USD'[SalesAmount_USD]))
/CALCULATE( SUM('ResellerSales_USD'[SalesAmount_USD])
,ALL('ResellerSales_USD'))
Paydadaki CALCULATE ifadesi, toplam ifadesinin hesaplamadaki tüm satırları içermesine olanak tanır. Bu, CalendarYear ve ProductCategoryName için ifadenin pay bölümünde bulunan örtülü filtreleri geçersiz kılar.
İlişkili İşlevler
CALCULATE işlevi ilk bağımsız değişkeni olarak tek değer döndüren bir ifade gerektirirken, CALCULATETABLE işlevi bir değer tablosu alır.