ALL

Uygulanmış olan filtreleri yoksayarak bir tablodaki tüm satırları veya bir sütundaki tüm değerleri döndürür. Bu işlev, filtreleri temizlemek ve bir tablodaki satırların tümünü kapsayan hesaplamalar gerçekleştirmek için kullanışlıdır.

Söz dizimi

ALL( [<table> | <column>[, <column>[, <column>[,…]]]] )  

Parametreler

Süre Tanım
tablo Filtrelerini temizlemek istediğiniz tablo.
sütun Filtrelerini temizlemek istediğiniz sütun.

ALL işlevinin bağımsız değişkeni bir temel tablo veya temel sütun başvurusu olmalıdır. ALL işlevinde tablo ifadeleri veya sütun ifadeleri kullanamazsınız.

Döndürülen değer

Filtreleri kaldırılmış tablo veya sütun.

Açıklamalar

  • Bu işlev tek başına kullanılmaz, farklı hesaplamaların gerçekleştirilebileceği sonuç kümesini değiştirmek için bir ara işlev görevi görür.

  • ALL() işlevi içeren DAX ifadelerinin normal davranışı, uygulanan tüm filtrelerin yoksayılmasıdır. Bununla birlikte, bazı DAX sorgularında işleme miktarını azaltmak amacıyla filtrelemeyi iyileştiren DAX teknolojisi auto-exist nedeniyle bu durumun geçerli olmadığı bazı senaryolar vardır. Auto-exist ile ALL() işlevinin beklenmeyen sonuçlar sağlamasına örnek olarak aynı tablonun iki veya daha çok sütununa göre filtreleme yapılması (dilimleyiciler kullanılırken olduğu gibi) ve aynı tabloda ALL() kullanan bir ölçü bulunması durumu verilebilir. Böyle bir durumda auto-exist birden çok filtreyi tek filtrede birleştirir ve yalnızca mevcut değerler bileşiminde filtreleme yapar. Bu birleştirme nedeniyle ölçü mevcut değerler bileşimine göre hesaplanır ve sonuç, beklendiği gibi tüm değerlere değil filtrelenmiş değerlere dayanır. Auto-exist teknolojisi ve bunun hesaplamalar üzerindeki etkisi hakkında daha fazla bilgi edinmek için Microsoft MVP'si Alberto Ferrari'nin sql.bi.com adresindeki DAX Auto-Exist Teknolojisini Anlama makalesine bakın.

  • Aşağıdaki tabloda ALL ve ALLEXCEPT işlevlerini farklı senaryolarda nasıl kullanabileceğiniz açıklanır.

    İşlev ve kullanım Açıklama
    ALL() Her yerdeki tüm filtreleri kaldırır. ALL() yalnızca filtreleri temizlemek için kullanılabilir, tablo döndürmez.
    ALL(Tablo) Belirtilen tablodaki tüm filtreleri kaldırır. ALL(Tablo) tablodaki tüm değerleri döndürür ve uygulanmış olabilecek filtreleri bağlamdan kaldırır. Bu işlev, birden fazla gruplandırma düzeyiyle çalıştığınızda ve toplanan değerin toplam değere oranını oluşturan bir hesaplama oluşturmak istediğinizde kullanışlıdır. İlk örnekte bu senaryo gösterilmiştir.
    ALL (Sütun[, Sütun[, …]]) Tablodaki belirtilen sütunlara uygulanmış olan tüm filtreleri kaldırır. Diğer sütunlardaki tüm filtreler uygulanmaya devam eder. Tüm sütun bağımsız değişkenleri aynı tablodan alınmalıdır. ALL(Sütun) değişkeni bir veya daha fazla sütunun bağlam filtresini kaldırıp diğer bağlam filtrelerini korumak istediğiniz durumlarda kullanışlıdır. İkinci ve üçüncü örneklerde bu senaryo gösterilmiştir.
    ALLEXCEPT(Tablo, Sütun1 [,Sütun2]...) Tablodaki belirli sütunlara uygulananların dışındaki tüm bağlam filtrelerini kaldırır. Bir tabloda yer alan sütunların çoğuna uygulanmış olan filtreleri kaldırmak istediğiniz durumlarda kısayol olarak kullanabilirsiniz.
  • Hesaplanmış sütunlarda veya satır düzeyi güvenlik (RLS) kurallarında kullanıldığında, bu işlevin DirectQuery modunda kullanılması desteklenmez.

Örnek 1

Kategori Satışlarının Toplam Satışlara oranını hesaplama

PivotTable'da toplam satış miktarını tüm bayilere bölerek geçerli hücre için satış tutarını bulmak istediğinizi düşünün. PivotTable kullanıcısının verileri filtreleme veya gruplandırma ölçütlerinden bağımsız olarak paydanın her zaman aynı olmasını sağlamak için doğru genel toplamı oluşturma amacıyla ALL işlevini kullanan bir formül tanımlarsınız.

Aşağıdaki tablo, kod bölümündeki formül kullanılarak oluşturulan yeni Tüm Bayi Satışlarının Oranı ölçüsünün sonuçlarını göstermektedir. Bunun nasıl çalıştığını görmek için CalendarYear alanını PivotTable'ın Satır Etiketleri alanına, ProductCategoryName alanını da Sütun Etiketleri alanına ekleyin. Tüm Bayi Satışlarının Oranı ölçüsünü Pivot Table'ın Değerler alanına sürükleyin. Sayıları yüzde olarak görüntülemek için Excel'deki biçimlendirme özelliklerini kullanarak ölçüyü içeren hücrelere yüzde sayı biçimlendirmesi uygulayın.

Satır Etiketleri Aksesuarlar Bisikletler Kıyafet 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

Formül

= SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/SUMX(ALL(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])  

Formül şu şekilde oluşturulur:

  1. Pay (SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])), PivotTable içindeki geçerli hücre için ResellerSales_USD[SalesAmount_USD] içindeki değerlerin toplamıdır. Burada CalendarYear ve ProductCategoryName için bağlam filtreleri uygulanmıştır.

  2. Payda için öncelikle ResellerSales_USD tablosunu belirtip ALL işlevini kullanarak tablodaki tüm bağlam filtrelerini kaldırmanız gerekir.

  3. Ardından SUMX işlevini kullanarak ResellerSales_USD[SalesAmount_USD] sütunundaki değerleri toplayabilirsiniz. Başka bir deyişle tüm bayi satışları için ResellerSales_USD[SalesAmount_USD] toplamını elde etmiş olursunuz.

Örnek 2

Ürün Satışlarının Önceki Yılın Toplam Satışlarına Oranını Hesaplama

Her bir ürün kategorisi (ProductCategoryName) için yıllar içindeki satış yüzdelerini karşılaştırmalı olarak gösteren bir tablo oluşturmak istediğinizi düşünün. Her yıl için ProductCategoryName değerlerinin yüzde değerini elde etme amacıyla o yıl ve ürün kategorisi için satış toplamını aynı ürün kategorisi için tüm yıllardaki satışların toplamına bölmeniz gerekir. Başka bir deyişle yüzdenin paydasını hesaplarken ProductCategoryName filtresini korumak ancak yılın filtresini kaldırmak istersiniz.

Aşağıdaki tablo, kod bölümündeki formül kullanılarak oluşturulan yeni Yıl İçindeki Bayi Satışları ölçüsünün sonuçlarını göstermektedir. Bunun nasıl çalıştığını görmek için CalendarYear alanını PivotTable'ın Satır Etiketleri alanına, ProductCategoryName alanını da Sütun Etiketleri alanına ekleyin. Sayıları yüzde olarak görüntülemek için Excel'deki biçimlendirme özelliklerini kullanarak Yıl İçindeki Bayi Satışları ölçüsünü içeren hücrelere yüzde sayı biçimlendirmesi uygulayın.

Satır etiketleri Aksesuarlar Bisikletler Kıyafet Bileşenler Genel Toplam
2005 %3,48 %11,03 %1,91 %5,12 %9,91
2006 %16,21 %29,96 %27,29 %30,59 %29,90
2007 %51,62 %38,45 %48,86 %46,36 %39,93
2008 %28,69 %20,56 %21,95 %17,92 %20,26
Genel Toplam %100,00 %100,00 %100,00 %100,00 %100,00

Formül

= SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/CALCULATE( SUM( ResellerSales_USD[SalesAmount_USD]), ALL(DateTime[CalendarYear]))  

Formül şu şekilde oluşturulur:

  1. Pay (SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])), pivot tablo içindeki geçerli hücre için ResellerSales_USD[SalesAmount_USD] içindeki değerlerin toplamıdır. Burada CalendarYear ve ProductCategoryName sütunları için bağlam filtreleri uygulanmıştır.

  2. Payda için ALL(Sütun) işlevini kullanarak CalendarYear filtresini kaldırmanız gerekir. Bunu yaptığınızda sütun etiketlerindeki mevcut bağlam filtreleri uygulandıktan sonra ResellerSales_USD tablosunun kalan satırlarının toplamı hesaplanır. Bunun payda üzerindeki etkisi, seçilen ProductCategoryName (örtük bağlam filtresi) ve tüm Yıl değerleri için toplamın hesaplanmasıdır.

Örnek 3

Ürün Kategorilerinin Yıl İçindeki Toplam Satışa Katkısını Hesaplama

Her bir ürün kategorisindeki satışların yıllar içindeki yüzdesini gösteren bir tablo oluşturmak istediğinizi düşünün. Her bir ürün kategorisinin belirli bir yıldaki yüzdesini hesaplamak için ilgili ürün kategorisi (ProductCategoryName) için n yıllık toplamı hesaplamanız ve daha sonra elde edilen değeri tüm ürün kategorilerini kapsayan n yıllık satışların toplamına bölmeniz gerekir. Başka bir deyişle yüzdenin paydasını hesaplarken yıl filtresini korumak ancak ProductCategoryName filtresini kaldırmak istersiniz.

Aşağıdaki tablo, kod bölümündeki formül kullanılarak oluşturulan yeni Bayi Satışları Kategori Adı ölçüsünün sonuçlarını göstermektedir. Bunun nasıl çalıştığını görmek için CalendarYear alanını PivotTable'ın Satır Etiketleri alanına, ProductCategoryName alanını da Sütun Etiketleri alanına ekleyin. Ardından yeni ölçüyü PivotTable'ın Değerler alanına ekleyin. Sayıları yüzde olarak görüntülemek için Excel'deki biçimlendirme özelliklerini kullanarak Bayi Satışları Kategori Adı ölçüsünü içeren hücrelere yüzde sayı biçimlendirmesi uygulayın.

Satır Etiketleri Aksesuarlar Bisikletler Kıyafet Bileşenler Genel Toplam
2005 %0,25 %91,76 %0,42 %7,57 %100,00
2006 %0,38 %82,64 %1,99 %14,99 %100,00
2007 %0,90 %79,42 %2,67 %17,01 %100,00
2008 %0,99 %83,69 %2,37 %12,96 %100,00
Genel Toplam %0,70 %82,47 %2,18 %14,65 %100,00

Formül

= SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/CALCULATE( SUM( ResellerSales_USD[SalesAmount_USD]), ALL(ProductCategory[ProductCategoryName]))  

Formül şu şekilde oluşturulur:

  1. Pay (SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])), PivotTable içindeki geçerli hücre için ResellerSales_USD[SalesAmount_USD] içindeki değerlerin toplamıdır. Burada CalendarYear ve ProductCategoryName alanlarına bağlam filtreleri uygulanmıştır.

  2. Payda için ALL(Sütun) işlevini kullanarak ProductCategoryName filtresini kaldırmanız ve satır etiketlerindeki mevcut bağlam filtrelerini uyguladıktan sonra ResellerSales_USD tablosunun kalan satırlarının toplamı hesaplamanız gerekir. Bunun payda üzerindeki etkisi, seçilen Yıl (örtük bağlam filtresi) ve tüm ProductCategoryName değerleri için toplamın hesaplanmasıdır.

Ayrıca bkz.

Filtre işlevleri
ALL işlevi
ALLEXCEPT işlevi
FILTER işlevi