Bagikan melalui


SEMUA

Berlaku untuk: Kolom terhitung Tabel terhitung Ukur perhitungan Visual

Mengembalikan semua baris dalam tabel, atau semua nilai dalam kolom, mengabaikan filter apa pun yang mungkin telah diterapkan. Fungsi ini berguna untuk menghapus filter dan membuat perhitungan pada semua baris dalam tabel.

Sintaks

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

Parameter

Term Definisi
tabel Tabel yang ingin Anda hapus filternya.
column Kolom yang ingin Anda hapus filternya.

Argumen ke fungsi ALL harus berupa referensi ke tabel dasar atau referensi ke kolom dasar. Anda tidak dapat menggunakan ekspresi tabel atau ekspresi kolom dengan fungsi ALL.

Nilai hasil

Tabel atau kolom dengan filter dihapus.

Keterangan

  • Fungsi ini tidak digunakan dengan sendirinya, tetapi berfungsi sebagai fungsi perantara yang dapat digunakan untuk mengubah kumpulan hasil di mana beberapa perhitungan lain dilakukan.

  • Perilaku normal untuk ekspresi DAX yang berisi fungsi ALL() adalah bahwa filter apa pun yang diterapkan akan diabaikan. Namun, ada beberapa skenario di mana ini tidak terjadi karena ada secara otomatis, teknologi DAX yang mengoptimalkan pemfilteran untuk mengurangi jumlah pemrosesan yang diperlukan untuk kueri DAX tertentu. Contoh di mana ada secara otomatis dan ALL() memberikan hasil yang tidak terduga adalah saat memfilter pada dua kolom atau lebih dari tabel yang sama (seperti saat menggunakan pemotong), dan ada ukuran pada tabel yang sama yang menggunakan ALL(). Dalam hal ini, auto-exist akan menggabungkan beberapa filter menjadi satu dan hanya akan memfilter kombinasi nilai yang ada. Karena penggabungan ini, ukuran akan dihitung pada kombinasi nilai yang ada dan hasilnya akan didasarkan pada nilai yang difilter alih-alih semua nilai seperti yang diharapkan. Untuk mempelajari selengkapnya tentang eksis secara otomatis dan efeknya pada perhitungan, lihat artikel Memahami DAX Auto-Exist Microsoft MVP Alberto Ferrari di sql.bi.com.

  • Tabel berikut ini menjelaskan bagaimana Anda dapat menggunakan fungsi ALL dan ALLEXCEPT dalam skenario yang berbeda.

    Fungsi dan penggunaan Deskripsi
    ALL() Menghapus semua filter di mana saja. ALL() hanya dapat digunakan untuk menghapus filter tetapi tidak mengembalikan tabel.
    ALL(Table) Menghapus semua filter dari tabel yang ditentukan. Akibatnya, ALL(Table) mengembalikan semua nilai dalam tabel, menghapus filter apa pun dari konteks yang mungkin telah diterapkan. Fungsi ini berguna ketika Anda bekerja dengan banyak tingkat pengelompokan, dan ingin membuat perhitungan yang membuat rasio nilai agregat dengan nilai total. Contoh pertama menunjukkan skenario ini.
    SEMUA (Kolom[, Kolom[, ...]]]) Menghapus semua filter dari kolom yang ditentukan dalam tabel; semua filter lain pada kolom lain dalam tabel masih berlaku. Semua argumen kolom harus berasal dari tabel yang sama. Varian ALL(Column) berguna saat Anda ingin menghapus filter konteks untuk satu atau beberapa kolom tertentu dan menyimpan semua filter konteks lainnya. Contoh kedua dan ketiga menunjukkan skenario ini.
    ALLEXCEPT(Table, Column1 [,Column2]...) Menghapus semua filter konteks dalam tabel kecuali filter yang diterapkan ke kolom yang ditentukan. Ini adalah pintasan yang nyaman untuk situasi di mana Anda ingin menghapus filter pada banyak, tetapi tidak semua, kolom dalam tabel.
  • Fungsi ini tidak didukung untuk digunakan dalam mode DirectQuery saat digunakan dalam kolom terhitung atau aturan keamanan tingkat baris (RLS).

Contoh 1

Menghitung rasio Penjualan Kategori terhadap Total Penjualan

Asumsikan bahwa Anda ingin menemukan jumlah penjualan untuk sel saat ini, di PivotTable Anda, dibagi dengan total penjualan untuk semua penjual. Untuk memastikan bahwa penyebut sama terlepas dari bagaimana pengguna PivotTable mungkin memfilter atau mengelompokkan data, Anda menentukan rumus yang menggunakan SEMUA untuk membuat total keseluruhan yang benar.

Tabel berikut ini memperlihatkan hasil saat pengukuran baru, Semua Rasio Penjualan Penjual, dibuat menggunakan rumus yang diperlihatkan di bagian kode. Untuk melihat cara kerjanya, tambahkan bidang, CalendarYear, ke area Label Baris pivotTable, dan tambahkan bidang, ProductCategoryName, ke area Label Kolom. Kemudian, seret pengukuran, Semua Rasio Penjualan Penjual, ke area Nilai Tabel Pivot. Untuk menampilkan hasil sebagai persentase, gunakan fitur pemformatan Excel untuk menerapkan pemformatan angka persentase ke sel yang berisi pengukuran.

Label Baris Aksesori Sepeda Pakaian Komponen Total Keseluruhan
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%
Total Keseluruhan 0,70% 82.47% 2,18% 14.65% 100,00%

Rumus

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

Rumus dibuat sebagai berikut:

  1. Pembiru, SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]), adalah jumlah nilai dalam ResellerSales_USD[SalesAmount_USD] untuk sel saat ini di PivotTable, dengan filter konteks diterapkan pada CalendarYear dan ProductCategoryName.

  2. Untuk penyebut, Anda mulai dengan menentukan tabel, ResellerSales_USD, dan menggunakan fungsi ALL untuk menghapus semua filter konteks pada tabel.

  3. Anda kemudian menggunakan fungsi SUMX untuk menjumlahkan nilai di kolom ResellerSales_USD[SalesAmount_USD]. Dengan kata lain, Anda mendapatkan jumlah ResellerSales_USD[SalesAmount_USD] untuk semua penjualan penjual.

Contoh 2

Hitung Rasio Penjualan Produk terhadap Total Penjualan Hingga Tahun Berjalan

Asumsikan bahwa Anda ingin membuat tabel yang menunjukkan persentase penjualan dibandingkan selama bertahun-tahun untuk setiap kategori produk (ProductCategoryName). Untuk mendapatkan persentase untuk setiap tahun selama setiap nilai ProductCategoryName, Anda perlu membagi jumlah penjualan untuk tahun dan kategori produk tertentu dengan jumlah penjualan untuk kategori produk yang sama selama bertahun-tahun. Dengan kata lain, Anda ingin menyimpan filter pada ProductCategoryName tetapi menghapus filter pada tahun saat menghitung penyebut persentase.

Tabel berikut ini memperlihatkan hasil saat pengukuran baru, Tahun Penjualan Penjual, dibuat menggunakan rumus yang diperlihatkan di bagian kode. Untuk melihat cara kerjanya, tambahkan bidang, CalendarYear, ke area Label Baris dari PivotTable, dan tambahkan bidang, ProductCategoryName, ke area Label Kolom. Untuk menampilkan hasil sebagai persentase, gunakan fitur pemformatan Excel untuk menerapkan format angka persentase ke sel yang berisi ukuran, Tahun Penjualan Penjual.

Label baris Aksesori Sepeda Pakaian Komponen Total Keseluruhan
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%
Total Keseluruhan 100,00% 100,00% 100,00% 100,00% 100,00%

Rumus

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

Rumus dibuat sebagai berikut:

  1. Pembiru, SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]), adalah jumlah nilai dalam ResellerSales_USD[SalesAmount_USD] untuk sel saat ini dalam tabel pivot, dengan filter konteks yang diterapkan pada kolom CalendarYear dan ProductCategoryName.

  2. Untuk penyebut, Anda menghapus filter yang ada di CalendarYear dengan menggunakan fungsi ALL(Column). Ini menghitung jumlah di atas baris yang tersisa pada tabel ResellerSales_USD, setelah menerapkan filter konteks yang ada dari label kolom. Efek bersihnya adalah bahwa untuk penyebut, jumlah dihitung melalui ProductCategoryName yang dipilih (filter konteks tersirat) dan untuk semua nilai dalam Tahun.

Contoh 3

Hitung Kontribusi Kategori Produk terhadap Total Penjualan Per Tahun

Asumsikan bahwa Anda ingin membuat tabel yang menunjukkan persentase penjualan untuk setiap kategori produk, berdasarkan tahun demi tahun. Untuk mendapatkan persentase untuk setiap kategori produk pada tahun tertentu, Anda perlu menghitung jumlah penjualan untuk kategori produk tertentu (ProductCategoryName) pada tahun n, dan kemudian membagi nilai yang dihasilkan dengan jumlah penjualan untuk tahun n di semua kategori produk. Dengan kata lain, Anda ingin menyimpan filter pada tahun tetapi menghapus filter pada ProductCategoryName saat menghitung denominator persentase.

Tabel berikut ini memperlihatkan hasil saat pengukuran baru, Reseller Sales CategoryName, dibuat menggunakan rumus yang diperlihatkan di bagian kode. Untuk melihat cara kerjanya, tambahkan bidang, CalendarYear ke area Label Baris dari PivotTable, dan tambahkan bidang, ProductCategoryName, ke area Label Kolom. Kemudian tambahkan pengukuran baru ke area Nilai PivotTable. Untuk menampilkan hasil sebagai persentase, gunakan fitur pemformatan Excel untuk menerapkan format angka persentase ke sel yang berisi ukuran baru, Reseller Sales CategoryName.

Label Baris Aksesori Sepeda Pakaian Komponen Total Keseluruhan
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%
Total Keseluruhan 0,70% 82.47% 2,18% 14.65% 100,00%

Rumus

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

Rumus dibuat sebagai berikut:

  1. Pembiru, SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]), adalah jumlah nilai dalam ResellerSales_USD[SalesAmount_USD] untuk sel saat ini di PivotTable, dengan filter konteks diterapkan pada bidang, CalendarYear dan ProductCategoryName.

  2. Untuk penyebut, Anda menggunakan fungsi, ALL(Column), untuk menghapus filter pada ProductCategoryName dan menghitung jumlah baris yang tersisa pada tabel ResellerSales_USD, setelah menerapkan filter konteks yang ada dari label baris. Efek bersihnya adalah, untuk penyebut, jumlah dihitung selama Tahun yang dipilih (filter konteks tersirat) dan untuk semua nilai ProductCategoryName.

Fungsi filter
Fungsi ALL
Fungsi ALLEXCEPT
Fungsi FILTER