Data Analysis Expressions (DAX) di Power Pivot

Data Analysis Expressions (DAX) di Power Pivot

Penting: Artikel ini adalah terjemahan mesin, lihat penafian. Temukan versi bahasa Inggris artikel di sini sebagai rujukan Anda.

Data Analysis Expressions (DAX) kedengarannya sedikit menakutkan pada awalnya, tetapi tidak memperbolehkan nama mengelabui Anda. Dasar-dasar DAX sangat mudah dipahami. Hal pertama yang pertama - DAX tidak bahasa pemrograman. DAX adalah bahasa rumus. Anda bisa menggunakan DAX untuk menetapkan penghitungan kustom untuk Kolom terhitung dan untuk pengukuran (juga dikenal sebagai bidang terhitung). DAX menyertakan beberapa fungsi yang digunakan dalam rumus Excel, dan fungsi tambahan yang dirancang untuk bekerja dengan data relasional dan melakukan dinamis agregasi.

Memahami Rumus DAX

Rumus DAX sangat mirip dengan rumus Excel. Untuk membuat sebuah rumus, Anda ketikkan tanda sama dengan, diikuti oleh nama fungsi atau ekspresi, dan semua nilai dan argumen yang diperlukan. Seperti Excel, DAX menyediakan beragam fungsi yang bisa Anda gunakan untuk bekerja dengan string, melakukan perhitungan menggunakan tanggal dan waktu, atau membuat nilai bersyarat.

Namun, rumus DAX berbeda dalam hal penting berikut ini:

  • Jika Anda ingin mengkustomisasi perhitungan berdasarkan baris per baris, DAX menyertakan fungsi yang memungkinkan Anda menggunakan nilai baris saat ini atau nilai terkait untuk melakukan perhitungan yang beragam berdasarkan konteks.

  • DAX menyertakan tipe fungsi yang mengembalikan tabel sebagai hasilnya, bukan nilai tunggal. Fungsi ini bisa digunakan untuk menyediakan input untuk fungsi lain.

  • Fungsi inteligensi waktudi DAX memungkinkan perhitungan menggunakan rentang tanggal, dan membandingkan hasil di semua periode paralel.

Tempat untuk Menggunakan Rumus DAX

Anda bisa membuat rumus di Power Pivot dalam terhitung columns atau dalam terhitung fields.

Kolom Terhitung

Kolom terhitung adalah kolom yang Anda tambahkan ke tabel Power Pivot yang sudah ada. Sebagai ganti menempelkan atau mengimpor nilai dalam kolom, buatlah rumus DAX yang menentukan nilai kolom. Jika Anda menyertakan tabel Power Pivot di PivotTable (atau PivotChart), kolom terhitung bisa digunakan seperti yang Anda lakukan di setiap kolom data lainnya.

Rumus di kolom terhitung hampir sama dengan rumus yang Anda buat di Excel. Tetapi, tidak seperti Excel, Anda tidak dapat membuat rumus yang berbeda untuk baris yang berbeda dalam tabel; rumus DAX diterapkan ke seluruh kolom secara otomatis.

Ketika kolom berisi rumus, nilainya dihitung untuk setiap baris. Hasil kolom dihitung segera setelah Anda membuat rumus. Nilai kolom hanya dihitung ulang jika data yang mendasarinya di-refresh atau jika perhitungan ulang manual digunakan.

Anda bisa membuat kolom terhitung yang didasarkan pada pengukuran dan kolom terhitung lain. Namun, Hindari menggunakan nama yang sama untuk kolom terhitung dan pengukuran, seperti ini dapat mengakibatkan hasil yang membingungkan. Saat mengacu ke kolom, sebaiknya menggunakan referensi kolom berkualifikasi penuh, untuk menghindari secara tidak sengaja menerapkan pengukuran.

Untuk informasi selengkapnya, lihat Kolom Terhitung di Power Pivot.

Pengukuran

Ukuran adalah sebuah rumus yang dibuat khusus untuk digunakan di PivotTable (atau PivotChart) yang menggunakan Power Pivot data. Langkah-langkah yang bisa berdasarkan pada fungsi agregasi standar, seperti HITUNGAN atau SUM, atau Anda bisa menentukan rumus Anda sendiri dengan menggunakan DAX. Pengukuran digunakan dalam area nilai dari PivotTable. Jika Anda ingin menempatkan hasil terhitung di area berbeda dari PivotTable, menggunakan kolom terhitung.

Saat Anda menetapkan rumus untuk pengukuran eksplisit, tidak ada yang terjadi hingga Anda menambahkan pengukuran ke PivotTable. Saat Anda menambahkan ukur, rumus dievaluasi untuk setiap sel di area nilai PivotTable. Karena hasil dibuat untuk setiap kombinasi judul baris dan kolom, hasil untuk pengukuran bisa berbeda di tiap sel.

Definisi pengukuran yang Anda buat disimpan dengan tabel dengan data sumber. Muncul di daftar bidang PivotTable dan tersedia untuk semua pengguna dari buku kerja.

Untuk informasi selengkapnya, lihat langkah-langkah di Power Pivot.

Membuat Rumus dengan menggunakan Bilah Rumus

Power Pivot, seperti Excel, menyediakan bilah rumus untuk memudahkan pembuatan dan pengeditan rumus, dan fungsionalitas LengkapiOtomatis, untuk meminimalkan kesalahan pengetikan dan sintaks.

Untuk memasukkan nama tabel Mulai ketikkan nama tabel. Rumus LengkapiOtomatis menyediakan daftar turun bawah yang memuat nama valid yang dimulai dengan huruf tersebut.  

Untuk memasukkan nama kolom Ketikkan tanda kurung lalu pilih kolom dari daftar kolom dalam tabel saat ini. Untuk kolom dari tabel lain, mulai ketikkan huruf pertama nama tabel, lalu pilih kolom dari daftar turun bawah LengkapiOtomatis.  

Untuk detail selengkapnya dan detail cara menyusun rumus, lihat Membuat Rumus untuk Perhitungan di Power Pivot.

Tips untuk menggunakan LengkapiOtomatis

Anda dapat menggunakan Rumus LengkapiOtomatis di tengah rumus yang sudah ada dengan fungsi ditumpuk. Teks setelah titik penyisipan digunakan untuk menampilkan nilai dalam daftar turun bawah, dan semua teks setelah titik penyisipan tidak berubah.

Penentuan nama yang Anda buat untuk konstanta tidak ditampilkan dalam daftar turun bawah LengkapiOtomatis, tapi Anda masih bisa mengetikkannya.

Power Pivot tidak menambahkan tanda kurung tutup fungsi atau mencocokkan tanda kurung secara otomatis. Anda harus memastikan setiap fungsi benar secara sintaks atau Anda tidak bisa menyimpan atau menggunakan rumus. 

Menggunakan Beberapa Fungsi dalam Rumus

Anda bisa menumpuk fungsi, yang artinya Anda menggunakan hasil dari satu fungsi sebagai argumen dari fungsi lain. Anda bisa menumpuk hingga 64 tingkat fungsi dalam kolom terhitung. Namun, penumpukan bisa menyulitkan membuat atau memecahkan masalah rumus.

Banyak fungsi DAX didesain untuk digunakan semata-mata sebagai fungsi ditumpuk. Fungsi ini mengembalikan tabel, yang tidak bisa disimpan secara langsung sebagai hasil;  harus disediakan sebagai input untuk fungsi tabel. Misalnya, fungsi SUMX, AVERAGEX, dan MINX semuanya diperlukan sebagai argumen pertama.

Catatan: Beberapa batasan pada fungsi yang ditumpuk ada dalam langkah-langkah, untuk memastikan kinerjanya tidak terpengaruh oleh banyaknya perhitungan oleh dependensi di antara kolom.

Membandingkan Fungsi DAX dan Fungsi Excel

Fungsi pustaka DAX didasarkan pada fungsi pustaka Excel, tapi kedua pustaka ini memiliki banyak perbedaan. Bagian ini meringkas perbedaan dan persamaan antara fungsi Excel dan fungsi DAX.

  • Banyak fungsi DAX memiliki nama yang sama dan perilaku umum yang sama seperti fungsi Excel tapi telah diubah untuk menangani tipe input yang berbeda, dan dalam beberapa kasus, mungkin menghasilkan tipe data yang berbeda. Umumnya, Anda tidak bisa menggunakan DAX dalam rumus Excel atau menggunakan rumus Excel di Power Pivot tanpa beberapa modifikasi.

  • Fungsi DAX tidak pernah menggunakan referensi sel atau referensi rentang, melainkan fungsi DAX menggunakan kolom atau tabel sebagai referensi.

  • Fungsi tanggal dan waktu DAX mengembalikan tipe data datetime. Sebaliknya, fungsi tanggal dan waktu Excel mengembalikan bilangan bulat yang mewakili tanggal sebagai nomor seri.

  • Banyak tabel fungsi baru DAX mengembalikan nilai tabel atau membuat perhitungan berdasarkan nilai tabel sebagai input. Sebaliknya, Excel tidak memiliki fungsi yang mengembalikan tabel, tapi beberapa fungsi bisa bekerja dengan array. Kemampuan mereferensikan tabel dan kolom lengkap dengan mudah adalah fitur baru di Power Pivot.

  • DAX menyediakan fungsi pencarian baru yang mirip dengan fungsi pencarian array dan vektor di Excel. Namun, fungsi DAX memerlukan hubungan yang ditetapkan antara tabel.

  • Data dalam kolom diharapkan selalu merupakan tipe data yang sama. Jika data bukan tipe data yang sama, DAX mengubah seluruh kolom ke tipe data yang paling sesuai untuk mengakomodasi seluruh nilai.

Tipe Data DAX

Anda bisa mengimpor data ke model data Power Pivot dari banyak sumber data yang berbeda yang mungkin mendukung tipe data yang berbeda. Ketika Anda mengimpor atau memuat data, lalu menggunakan data dalam perhitungan atau dalam PivotTable tipe data dikonversikan ke salah satu tipe data Power Pivot. Untuk daftar tipe data, lihat Tipe data dalam Model Data.

Tipe data tabel adalah tipe data baru DAX yang digunakan sebagai input atau output untuk banyak fungsi baru. Misalnya, fungsi FILTER menggunakan tabel sebagai input dan output tabel lain yang memuat hanya baris yang memenuhi kondisi filter. Dengan menggabungkan fungsi tabel dengan fungsi agregasi, Anda bisa melakukan perhitungan yang kompleks terhadap sekumpulan data yang ditetapkan secara dinamis. Untuk informasi selengkapnya, lihat Agregasi di Power Pivot.

Rumus dan Model Relasional

Jendela Power Pivot adalah sebuah area tempat Anda bisa bekerja dengan beberapa tabel data dan menyambungkan tabel dalam model relasional. Dalam model data ini, tabel terhubung dengan satu sama lain dengan hubungan, yang memungkinkan Anda membuat korelasi dengan kolom di tabel lainnya dan membuat penghitungan lebih menarik. Misalnya, Anda bisa membuat rumus yang menjumlahkan nilai untuk tabel terkait dan kemudian simpan nilai dalam sel tunggal. Atau, untuk mengontrol baris dari tabel terkait, Anda bisa menerapkan filter ke tabel dan kolom. Untuk informasi selengkapnya, lihat hubungan antar tabel dalam Data Model.

Karena Anda bisa menautkan tabel menggunakan hubungan, PivotTable juga bisa menyertakan data dari beberapa kolom yang berasal dari tabel yang berbeda.

Namun, karena rumus bisa bekerja dengan seluruh tabel dan kolom, Anda harus mendesain perhitungan berbeda dengan yang Anda lakukan di Excel.

  • Secara umum, rumus DAX dalam kolom selalu diterapkan ke seluruh kumpulan nilai dalam kolom (tidak pernah hanya untuk beberapa baris atau sel).

  • Tabel dalam Power Pivot harus selalu memiliki jumlah kolom yang sama dalam setiap baris, dan semua baris dalam kolom harus berisi tipe data yang sama.

  • Ketika tabel terhubung oleh hubungan, Anda diharapkan untuk memastikan bahwa kedua kolom yang digunakan sebagai kunci memiliki nilai yang cocok, untuk sebagain besar bagian. Karena Power Pivot tidak menerapkan integritas referensial, maka memungkinkan untuk memiliki nilai yang tidak cocok dalam kolom kunci dan masih bisa membuat hubungan. Namun, keberadaan nilai yang kosong atau tidak cocok mungkin mempengaruhi hasil rumus dan tampilan PivotTable. Untuk informasi selengkapnya, lihat Pencarian dalam Power Pivot Rumus.

  • Bila Anda menautkan tabel menggunakan hubungan, Anda memperbesar lingkup, atau context rumus Anda dievaluasi. Misalnya, rumus di PivotTable dapat terpengaruh oleh filter atau judul kolom dan baris di PivotTable. Anda bisa menulis rumus yang memanipulasi konteks, tapi konteks juga bisa menyebabkan hasil Anda untuk mengubah dengan cara yang Anda mungkin tidak akan. Untuk informasi selengkapnya, lihat konteks dalam rumus DAX.

Memperbarui Hasil Rumus

Data r efresh dan perhitungan ulang adalah dua operasi terpisah tapi terkait yang Anda harus memahami saat mendesain model data yang berisi rumus yang kompleks, sejumlah besar data, atau data yang Diperoleh dari sumber data eksternal.

Refresh data adalah proses memperbarui data dalam buku kerja Anda dengan data baru dari sumber data eksternal. Anda bisa me-refresh data secara manual pada interval yang Anda tentukan. Atau, jika Anda telah menerbitkan buku kerja ke situs SharePoint, Anda bisa menjadwalkan refresh otomatis dari sumber eksternal.

Perhitungan ulang adalah proses pembaruan hasil rumus untuk mencerminkan setiap perubahan rumus itu sendiri dan mencerminkan perubahan itu dalam data yang mendasarinya. Perhitungan ulang bisa mempengaruhi kinerja dalam cara-cara berikut ini:

  • Untuk kolom terhitung, hasil rumus harus selalu dihitung ulang untuk seluruh kolom, kapan pun Anda mengubah rumus.

  • Untuk ukuran, hasil rumus tidak dihitung hingga ukuran ditempatkan dalam konteks PivotTable atau PivotChart. Rumus akan juga dihitung ulang saat Anda mengubah baris atau kolom judul yang mempengaruhi filter pada data apa pun atau ketika Anda refresh PivotTable secara manual.

Memecahkan Masalah Rumus

Kesalahan ketika menulis rumus

Jika Anda mendapatkan kesalahan ketika menetapkan rumus yang mungkin berisi kesalahan sintaksis, kesalahan semantik, atau kesalahan perhitungan.

Kesalahan sintaksis paling mudah dipecahkan. Kesalahan ini biasanya melibatkan tanda kurung dan koma. Untuk bantuan dengan sintaks fungsi invidual, lihat Referensi Fungsi DAX.

Tipe kesalahan lain yang muncul ketika sintaks sudah benar, tapi nilai atau referensi kolom tidak cocok dengan konteks rumus. Kesalahan semantik dan perhitungan seperti ini mungkin disebabkan oleh salah satu masalah berikut ini:

  • Rumus merujuk pada kolom, tabel atau fungsi yang tidak ada.

  • Rumus tampaknya sudah benar, tapi ketika mesin data mengambil data, mesin data menemukan tipe tidak cocok, dan menimbulkan kesalahan.

  • Rumus mengirim nomor atau tipe parameter yang tidak tepat ke fungsi.

  • Rumus merujuk ke kolom yang berbeda yang memiliki kesalahan, dan karena itu nilainya tidak valid.

  • Rumus yang merujuk ke kolom yang belum diproses, berarti kolom memiliki metadata tapi tanpa data aktual untuk digunakan dalam perhitungan.

Dalam empat kasus pertama, DAX membenderai seluruh kolom yang berisi rumus yang tidak valid. Dalam kasus terakhir, DAX memberi kolom warna abu-abu untuk mengindikasikan bahwa kolom dalam status belum terproses.

Hasil yang tidak tepat dan tidak biasa ketika meranking dan mengurutkan nilai kolom

Ketika ranking atau urutan kolom yang berisi nilai NaN (Bukan Angka), Anda mungkin mendapatkan hasil yang salah atau tidak diharapkan. Misalnya, ketika perhitungan membagi 0 dengan 0, hasil NaN dikembalikan.

Ini karena mesin rumus menjalankan urutan dan ranking dengan membandingkan nilai numerik; namun, NaN tidak bisa dibandingkan dengan nomor lain di kolom.

Untuk memastikan hasil yang tepat, Anda bisa menggunakan pernyataan bersyarat menggunakan fungsi IF untuk menguji nilai NaN dan menghasilkan nilai numerik 0.

Kompatibilitas dengan Model Tabular Analysis Services dan Mode DirectQuery

Secara umum, rumus DAX yang Anda susun di Power Pivot sangat kompatibel dengan model tabular Analysis Services. Namun, jika Anda melakukan migrasi model Power Pivot Anda ke contoh Analysis Services, lalu menggunakan model dalam mode DirectQuery, ada beberapa batasan.

  • Beberapa rumus DAX mungkin menghasilkan hasil yang berbeda jika Anda menggunakan model dalam mode DirectQuery.

  • Beberapa rumus mungkin menyebabkan kesalahan validasi ketika Anda menggunakan model ke mode DirectQuery, karena rumus berisi fungsi DAX yang didukung terhadap sumber data relasional.

Untuk informasi selengkapnya, lihat dokumentasi model tabular Analysis Services di SQL Server 2012 BooksOnline.

Catatan: Penafian Terjemahan Mesin: Artikel ini telah diterjemahan oleh sistem komputer tanpa campur tangan manusia. Microsoft menawarkan terjemahan mesin ini untuk membantu pengguna yang bukan penutur bahasa Inggris agar dapat menikmati konten tentang produk, layanan, dan teknologi Microsoft. Karena artikel ini diterjemahkan oleh mesin, mungkin akan terdapat kesalahan kosa kata, sintaksis, atau tata bahasa.

Kembangkan keterampilan Anda
Jelajahi pelatihan
Dapatkan fitur baru terlebih dahulu
Gabung ke Office Insiders

Apakah informasi ini bermanfaat?

Terima kasih atas umpan balik Anda!

Terima kasih atas umpan balik Anda! Sepertinya menghubungkan Anda ke salah satu agen dukungan Office kami akan sangat membantu.

×