QuickStart: Mempelajari Dasar-Dasar DAX Dalam 30 Menit

QuickStart ditujukan untuk pengguna yang baru menggunakan Power Pivot di Excel atau proyek model tabular yang dibuat di Alat Data SQL Server. QuickStart ini berisi pengenalan ringkas dan mudah tentang cara menggunakan Data Analysis Expressions (DAX) untuk mengatasi sejumlah masalah model dan analisis data dasar. Topik ini mencakup informasi konseptual, serangkaian tugas yang dapat Anda selesaikan, dan beberapa kuis untuk menguji kemampuan Anda terkait dengan materi yang telah dipelajari. Setelah menyelesaikan topik ini, Anda akan memiliki pemahaman yang baik tentang konsep paling mendasar dalam DAX.

Apakah yang dimaksud dengan DAX?

DAX adalah sekumpulan fungsi, operator, dan konstanta yang dapat digunakan dalam rumus atau ekspresi untuk menghitung dan mengembalikan satu atau beberapa nilai. Dengan kata lain, DAX membantu Anda membuat informasi baru dari data yang ada dalam model.

Mengapa DAX sangat penting?

DAX memudahkan Anda membuat buku kerja dan mengimpor sejumlah data ke dalamnya. Anda bahkan dapat membuat PivotTables atau PivotChart yang menampilkan data penting tanpa menggunakan rumus DAX apa pun. Namun, bagaimana jika Anda harus menganalisis data penjualan penting untuk beberapa kategori produk pada kisaran tanggal yang berbeda? Atau Anda harus menggabungkan data inventaris penting dari beberapa tabel dalam sumber data yang berbeda? Rumus DAX memberikan Anda kemampuan ini dan berbagai kemampuan penting lainnya. Mempelajari cara membuat rumus DAX yang efektif akan membantu Anda mengoptimalkan penggunaan data. Setelah memperoleh data yang diperlukan, Anda dapat mulai menyelesaikan masalah bisnis sebenarnya yang mempengaruhi laba bersih perusahaan. Ini adalah Inteligensi Bisnis dan DAX akan membantu Anda mencapainya.

Prasyarat

Anda mungkin telah terbiasa membuat rumus di Microsoft Excel. Kemampuan tersebut akan bermanfaat dalam memahami DAX, namun meskipun Anda tidak memiliki pengalaman dengan rumus Excel, konsep yang diberikan di sini akan membantu Anda membuat rumus DAX dan menyelesaikan masalah BI secepatnya.

Secara khusus, kita akan memfokuskan pada upaya memahami rumus DAX yang digunakan dalam perhitungan. Anda pasti telah mengenal konsep dasar dari kolom hitung dan bidang hitung (disebut juga pengukuran), yang keduanya telah dijelaskan dalam Bantuan Power Pivot. Anda juga pasti telah mengenal Power Pivot di Excel yang berfungsi menciptakan lingkungan dan alat.

Buku Kerja Contoh

Cara terbaik untuk mempelajari DAX adalah membuat beberapa rumus dasar, menggunakannya dengan sejumlah data aktual, lalu melihat sendiri hasilnya. Contoh dan tugas di sini menggunakan buku kerja Contoso Sample DAX Formulas.xlsx. Anda dapat mengunduh buku kerja tersebut dari http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409. Setelah buku kerja diunduh ke komputer Anda, buka buku kerja, lalu buka jendela Power Pivot.

Mari Kita Mulai!

Kita akan menyusun DAX dalam tiga konsep dasar yang sangat penting: Sintaks, Fungsi, dan Konteks. Beberapa konsep penting lainnya tentu tersedia dalam DAX, namun pemahaman atas ketiga konsep ini akan menjadi landasan terbaik dalam membangun keahlian DAX Anda.

Sintaks

Sebelum Anda membuat rumus sendiri, mari kita pelajari sintaks rumus DAX. Sintaks berisi berbagai elemen yang membentuk rumus, atau lebih sederhananya, cara penulisan rumus. Misalnya, mari kita lihat rumus DAX sederhana yang digunakan untuk mengembalikan data (nilai) baru untuk setiap baris dalam kolom hitung Margin dalam tabel FactSales: (warna teks rumus hanya sebagai ilustrasi)

Rumus kolom hitung

Sintaks rumus ini mencakup elemen berikut:

  1. Operator tanda sama dengan (=) menunjukkan bagian awal rumus, dan bila rumus ini dihitung, maka hasil atau nilai akan ditampilkan. Semua rumus yang menghitung nilai akan diawali dengan tanda sama dengan.
  2. Kolom referensi [SalesAmount] berisi nilai yang akan dikurangi. Kolom referensi dalam rumus selalu menggunakan tanda kurung siku []. Tidak seperti rumus Excel yang mereferensikan sel, rumus DAX selalu mereferensikan kolom.
  3. Operator matematika pengurangan (-).
  4. Kolom referensi [TotalCost] berisi nilai yang akan dikurangi dari nilai dalam kolom [SalesAmount].

Untuk mencoba memahami cara membaca rumus DAX, sering kali lebih mudah dilakukan dengan memisahkan setiap elemen ke dalam bahasa yang Anda pikirkan dan ucapkan sehari-hari. Misalnya, Anda dapat membaca rumus ini sebagai berikut:

Dalam tabel FactSales, untuk setiap baris dalam kolom hitung Margin, hitung (=) nilai dengan mengurangi (-) nilai dalam kolom [TotalCost] dari nilai dalam kolom [SalesAmount].

Mari kita lihat tipe rumus lain, yakni rumus yang digunakan dalam bidang hitung:

Rumus kolom hitung

Rumus ini mencakup elemen sintaks berikut:

  1. Bidang hitung Total Jumlah Penjualan. Rumus untuk bidang hitung dapat berisi nama bidang hitung yang diikuti tanda titik dua dan rumus penghitungan.
  2. Operator tanda sama dengan (=) menunjukkan bagian awal rumus penghitungan. Bila rumus dihitung, hasil akan ditampilkan.
  3. Fungsi SUM menjumlahkan semua angka dalam kolom [SalesAmount]. Anda akan mempelajari selengkapnya tentang fungsi nanti.
  4. Tanda kurung () mengelilingi satu atau beberapa argumen. Semua fungsi memerlukan minimal satu argumen. Argumen memberikan nilai untuk fungsi.
  5. Tabel referensi FactSales.
  6. Kolom referensi [SalesAmount] dalam tabel FactSales. Dengan argumen ini, fungsi SUM akan mengenali kolom untuk mengagregat SUM.

Anda dapat membaca rumus ini sebagai berikut:

Untuk bidang hitung Total Jumlah Penjualan, hitung (=) SUM dari nilai dalam kolom [SalesAmount] dalam tabel FactSales.

Bila dimasukkan ke zona pengisian Nilai dalam Daftar Bidang PivotTable, bidang hitung ini akan menghitung dan mengembalikan nilai yang didefinisikan berdasarkan setiap sel dalam PivotTable, misalnya Ponsel di AS.

Perlu diketahui bahwa terdapat beberapa hal yang berbeda tentang rumus ini bila dibandingkan dengan rumus yang kita gunakan untuk kolom hitung Margin. Secara khusus, kami telah memperkenalkan fungsi SUM. Fungsi adalah rumus awal yang mempermudah penghitungan serta manipulasi kompleks dengan angka, tanggal, waktu, teks, dan banyak lagi. Anda akan mempelajari selengkapnya tentang fungsi nanti.

Tidak seperti kolom hitung Margin sebelumnya, kolom [SalesAmount] diawali dengan tabel FactSales yang memiliki kolom tersebut. Ini disebut nama kolom yang berkualifikasi penuh karena berisi nama kolom yang diawali dengan nama tabel. Kolom yang direferensikan dalam tabel yang sama tidak mengharuskan nama tabel disertakan dalam rumus. Hal ini dapat membuat rumus panjang yang mereferensikan banyak kolom menjadi lebih singkat dan mudah dibaca. Namun demikian, selalu menyertakan nama tabel dalam rumus bidang hitung adalah tindakan yang tepat meskipun berada dalam tabel yang sama.

 Catatan    Jika nama tabel berisi spasi, kata kunci yang disimpan, atau karakter yang dilarang, Anda harus mencantumkan nama tabel tersebut dalam tanda kutip tunggal. Anda juga harus mencantumkan nama tabel dalam tanda kutip jika nama tabel tersebut berisi karakter apa pun di luar kisaran karakter alfanumerik ANSI, tanpa mempertimbangkan apakah lokal Anda mendukung kumpulan karakter tersebut atau tidak.

Rumus harus memiliki sintaks yang benar. Dalam sebagian besar kasus, jika sintaks salah, maka hasil yang diberikan adalah kesalahan sintaks. Dalam kasus lainnya, sintaks mungkin sudah benar, namun nilai yang dihasilkan bukan nilai yang seharusnya. Power Pivot (dan Alat Data SQL Server) dilengkapi IntelliSense, yaitu fitur yang digunakan untuk membuat rumus sintaks dengan benar melalui pemilihan elemen yang tepat.

Mari kita buat rumus yang sederhana. Tugas ini akan membantu Anda memahami sintaks rumus lebih jauh dan manfaat yang diberikan fitur IntelliSense dalam panel rumus.

Tugas: Membuat rumus sederhana untuk kolom hitung

  1. Jika jendela Power Pivot belum terbuka, di Excel, pada pita Power Pivot, klik Power PivotJendela PowerPivot.
  2. Di jendela Power Pivot, klik tabel (tab) FactSales.
  3. Gulir ke kolom paling kanan, lalu klik Tambah Kolom dalam header kolom.
  4. Klik panel rumus di bagian atas jendela desainer model.

Panel Rumus PowerPivot

Kursor kini muncul dalam panel rumus. Panel rumus adalah tempat mengetik rumus untuk kolom hitung atau bidang hitung.

Mari kita lihat tiga tombol di sebelah kiri panel rumus.

Panel rumus

Bila kursor aktif dalam panel rumus, maka ketiga tombol tersebut aktif. Tombol paling kiri, X, adalah tombol batal. Lanjutkan dengan mengklik tombol tersebut. Kursor tidak lagi muncul dalam panel rumus dan tombol batal serta tombol tanda centang tidak ditampilkan. Lanjutkan dengan mengklik kembali panel rumus. Tombol batal dan tombol tanda centang kini ditampilkan kembali. Ini berarti Anda dapat mulai memasukkan rumus.

Tombol tanda centang adalah tombol periksa rumus. Tombol ini tidak banyak berfungsi hingga rumus dimasukkan. Kita akan membahas hal ini sesaat lagi.

Klik tombol Fx. Kotak dialog baru akan ditampilkan, yakni kotak dialog Sisipkan Fungsi. Kotak dialog Sisipkan Fungsi adalah cara termudah untuk mulai memasukkan rumus DAX. Kita akan menambahkan fungsi ke rumus sewaktu membuat bidang hitung sesaat lagi, namun sekarang, Anda tidak perlu menambahkan fungsi ke rumus kolom hitung. Lanjutkan dengan menutup kotak dialog Sisipkan Fungsi.

  1. Dalam panel rumus, ketik tanda sama dengan =, lalu ketik tanda buka kurung siku [. Jendela kecil berisi semua kolom dalam tabel FactSales akan ditampilkan. Dengan demikian, fitur IntelliSense telah berfungsi.

Karena kolom hitung selalu dibuat dalam tabel aktif yang terbuka, Anda tidak perlu mengawali nama kolom dengan nama tabel. Lanjutkan dengan menggulir ke bawah, lalu mengklik dua kali [SalesQuantity]. Anda juga dapat menggulir ke nama kolom yang diinginkan, lalu menekan Tab.

Kursor kini aktif di sebelah kanan [SalesQuantity].

  1. Ketik spasi, ketik operator pengurangan - (tanda minus), lalu ketik spasi berikutnya.
  2. Sekarang ketik tanda buka kurung siku berikutnya [. Pada tahap ini, pilih kolom [ReturnQuantity], lalu tekan Enter.

Jika muncul kesalahan, periksa sintaks dengan cermat. Jika perlu, bandingkan dengan rumus dalam kolom hitung Margin yang dijelaskan sebelumnya.

Setelah Anda menekan Enter untuk menyelesaikan rumus, kata Menghitung muncul di bilah status bagian bawah jendela Power Pivot. Perhitungan berjalan dengan cepat meski pun Anda baru saja menghitung hasil baru untuk lebih dari tiga juta baris.

  1. Klik kanan header kolom, lalu ubah nama kolom, NetSales.

Selesai! Anda berhasil membuat rumus DAX sederhana, namun memiliki pengaruh yang kuat. Untuk setiap baris dalam tabel FactSales, rumus NetSales akan menghitung nilai dengan mengurangi nilai dalam kolom [ReturnQuantity] dari nilai dalam kolom [SalesQuantity]. Perhatikan cara penulisan “Untuk setiap baris”. Ini adalah bentuk penyampaian sekilas untuk konsep yang sangat penting lainnya dalam DAX, yaitu konteks baris. Anda akan mempelajari selengkapnya tentang konteks baris nanti.

 Tips   

Satu hal yang sangat penting untuk dipahami sewaktu mengetik operator ke dalam rumus DAX adalah tipe data dalam argumen yang digunakan. Misalnya, jika Anda mengetik rumus = 1 & 2, nilai yang dihasilkan akan berupa nilai teks “12”. Hal ini terjadi karena operator dan (&) berfungsi pada rangkaian teks. DAX menginterpretasikan rumus ini dengan membacanya sebagai berikut: Hitung hasil dengan mengambil nilai 1 sebagai teks, lalu tambah nilai 2 sebagai teks. Sekarang jika Anda mengetik = 1 + 2, DAX akan membaca rumus ini sebagai berikut: Hitung hasil dengan mengambil nilai numerik 1, lalu menambahkan nilai numerik 2. Hasil yang diberikan adalah nilai numerik “3”. DAX menghitung nilai hasil berdasarkan operator dalam rumus, bukan tipe data kolom yang digunakan dalam argumen. Tipe data dalam DAX sangat penting, namun hal tersebut berada di luar cakupan Quick Start ini. Untuk mempelajari selengkapnya tentang tipe data dan operator dalam rumus DAX, lihat Referensi DAX (http://go.microsoft.com/fwlink/?LinkId=239769&clcid=0x409) dalam Buku Online.

Mari kita coba contoh lainnya. Pada tahap ini, Anda akan membuat bidang hitung dengan mengetik rumus dan menggunakan IntelliSense. Jangan khawatir jika Anda tidak memahami rumus sepenuhnya. Hal terpenting adalah mempelajari cara membuat rumus menggunakan beberapa elemen secara bersamaan dalam sintaks yang benar.

Tugas: Membuat rumus bidang hitung

  1. Dalam tabel FactSales, klik sel kosong mana saja dalam Area Perhitungan. Ini adalah area sel kosong yang tepat berada di bawah tabel dalam jendela Power Pivot.

Area Penghitungan PowerPivot

  1. Dalam panel rumus, ketik Previous Quarter Sales:.
  2. Ketik tanda sama dengan = untuk mengawali rumus penghitungan.
  3. Ketik beberapa huruf awal, CAL, lalu klik dua kali fungsi yang akan digunakan. Dalam rumus ini, Anda menggunakan fungsi CALCULATE.
  4. Ketik tanda buka kurung ( untuk mengawali argumen yang akan diteruskan ke fungsi CALCULATE.

Perhatikan bahwa setelah Anda mengetik tanda buka kurung, IntelliSense menampilkan sejumlah argumen yang diperlukan untuk fungsi CALCULATE. Anda akan mempelajari tentang argumen nanti.

  1. Ketik beberapa huruf awal dari tabel FactSales, lalu klik dua kali FactSales[Sales] dalam daftar dropdown.
  2. Ketik tanda koma (,) untuk menetapkan filter pertama, ketik PRE, lalu klik dua kali fungsi PREVIOUSQUARTER.

Setelah fungsi PREVIOUSQUARTER ditetapkan, tanda buka kurung berikutnya akan ditampilkan untuk menunjukkan argumen lain diperlukan; pada tahap ini, untuk fungsi PREVIOUSQUARTER.

  1. Ketik beberapa huruf awal, Dim, lalu klik dua kali DimDate[DateKey].
  2. Tutup kedua argumen yang diteruskan ke fungsi PREVIOUSQUARTER dan CALCULATE dengan mengetik dua tanda tutup kurung )).

Rumus akan terlihat seperti berikut ini:

Previous Quarter Sales:=CALCULATE(FactSales[Sales], PREVIOUSQUARTER(DimDate[DateKey]))

  1. Klik tombol periksa rumus pada panel rumus untuk memvalidasi rumus. Jika muncul kesalahan, verifikasikan setiap elemen sintaks.

Berhasil! Anda baru saja membuat bidang hitung menggunakan DAX dan ini bukan contoh tugas yang mudah. Rumus ini akan menghitung total penjualan kuartal sebelumnya, tergantung pada filter yang diterapkan dalam PivotTable atau PivotChart.

Anda baru saja mengenal beberapa aspek penting dalam rumus DAX. Pertama, rumus ini mencakup dua fungsi. Perhatikan bahwa fungsi PREVIOUSQUARTER tersarang sebagai argumen yang diteruskan ke fungsi CALCULATE. Rumus DAX dapat berisi hingga 64 fungsi bersarang. Rumus biasanya tidak mungkin dapat berisi begitu banyak fungsi bersarang. Bahkan rumus seperti ini akan sangat sulit dibuat dan digunakan untuk debug, dan mungkin berjalan tidak terlalu cepat.

Dalam rumus ini, Anda juga menggunakan filter. Filter mempersempit area yang akan dihitung. Dalam kasus ini, Anda memilih satu filter sebagai argumen, yang sebenarnya adalah fungsi berikutnya. Anda akan mempelajari selengkapnya tentang filter nanti.

Terakhir, Anda menggunakan fungsi CALCULATE. Ini merupakan salah satu fungsi yang paling berpengaruh dalam DAX. Bila Anda menulis model data dan membuat rumus yang lebih kompleks, fungsi ini mungkin akan sering digunakan. Pembahasan fungsi CALCULATE tidak termasuk dalam cakupan QuickStart ini, namun seiring bertambahnya pengetahuan Anda tentang DAX, perhatikan hal berikut.

 Catatan    Biasanya untuk memanfaatkan fungsi Inteligensi Waktu dalam rumus DAX, Anda harus menetapkan kolom tanggal unik menggunakan kotak dialog Tandai sebagai Tabel Tanggal. Dalam buku kerja Contoso DAX Formula Samples.xlsx, kolom DateKey dalam tabel DimDate dipilih sebagai kolom tanggal unik.

Kredit Ekstra

Anda mungkin bertanya: ‘Apa rumus DAX paling sederhana yang dapat saya buat?’. Jawabannya adalah ‘rumus yang tidak perlu Anda buat’. Rumus tersebut benar-benar dapat dibuat menggunakan fungsi agregat standar dalam bidang hitung. Hampir seluruh model data perlu memfilter dan menghitung berdasarkan data agregat. Misalnya, fungsi SUM dalam bidang hitung Total Jumlah Penjualan yang dijelaskan sebelumnya digunakan untuk menjumlahkan semua angka dalam kolom tertentu. DAX berisi beberapa fungsi lain yang mengagregat nilai. Anda dapat secara otomatis membuat rumus menggunakan agregasi standar dengan fitur AutoSum.

Tugas Kredit Ekstra: Membuat rumus bidang hitung menggunakan fitur AutoSum

  1. Dalam tabel FactSales, gulir ke kolom ReturnQuantity, lalu klik header kolom untuk memilih seluruh kolom.
  2. Pada tab Awal, di ribbon, dalam grup Penghitungan, klik tombol AutoSum.

AutoSum di PowerPivot

  1. Klik tanda panah bawah di sebelah AutoSum, lalu klik Rata-rata (perhatikan fungsi agregasi standar lainnya yang juga dapat digunakan).
    Bidang hitung baru akan segera dibuat dengan nama Average of ReturnQuantity: dan diikuti rumus =AVERAGE([ReturnQuantity]).

Mudah bukan? Tentu saja tidak semua rumus yang dibuat adalah rumus sederhana. Namun, dengan fitur AutoSum, Anda dapat membuat rumus ringkas dan mudah menggunakan penghitungan agregasi standar.

Hal ini akan memberikan pemahaman yang baik tentang sintaks yang digunakan dalam rumus DAX. Anda juga telah mengenal beberapa fitur unggul seperti IntelliSense dan AutoSum untuk membantu membuat rumus yang ringkas, mudah, dan akurat. Tentu saja banyak hal lain yang dapat dipelajari tentang sintaks. Untuk mempelajari selengkapnya, lihat Referensi DAX atau Buku Online SQL.

QuickQuiz untuk Sintaks

  1. Apa fungsi tombol yang terdapat pada panel rumus ini?
    Tombol fungsi
  2. Apa yang selalu mengelilingi nama kolom dalam rumus DAX?
  3. Bagaimana Anda menulis rumus untuk:
    Dalam tabel DimProduct, untuk setiap baris dalam kolom hitung UnitMargin, hitung nilai dengan mengurangi nilai dalam kolom UnitCost dari nilai dalam kolom UnitPrice?

Jawaban diberikan di bagian akhir topik ini.

Fungsi

Fungsi adalah rumus standar yang menjalankan penghitungan menggunakan argumen bernilai khusus yang dipanggil dalam urutan atau struktur tertentu. Argumen dapat berupa fungsi lain, rumus lain, referensi kolom, angka, teks, nilai logika seperti TRUE atau FALSE, atau konstanta.

DAX mencakup kategori fungsi berikut: Tanggal dan Waktu, Informasi, Logika, Matematika, Statistik, Teks, dan Inteligensi Waktu. Jika Anda terbiasa menggunakan fungsi dalam rumus Excel, banyak fungsi dalam DAX yang akan Anda kenali; namun, fungsi DAX memiliki keunikan berikut:

  • Fungsi DAX selalu mengacu pada kolom lengkap atau tabel. Jika hanya ingin menggunakan nilai tertentu dari tabel atau kolom, Anda dapat menambahkan filter pada rumus.
  • Jika harus menyesuaikan penghitungan untuk setiap baris, DAX menyediakan fungsi yang membantu Anda menggunakan nilai baris yang ada atau nilai terkait sebagai bentuk argumen untuk melakukan penghitungan yang beragam sesuai konteks. Anda akan mempelajari selengkapnya tentang konteks nanti.
  • DAX memiliki banyak fungsi yang mengembalikan tabel, bukan nilai. Tabel tersebut tidak ditampilkan, namun digunakan untuk memberikan input ke fungsi lainnya. Misalnya, Anda dapat mengambil tabel, lalu menghitung nilai yang berbeda di dalamnya, atau menghitung total dinamis di seluruh tabel maupun kolom yang difilter.
  • DAX memiliki beragam fungsi inteligensi waktu. Fungsi ini memungkinkan Anda mendefinisikan atau memilih kisaran tanggal, lalu menjalankan penghitungan dinamis berdasarkan kisaran tanggal tersebut. Misalnya, Anda dapat membandingkan total di antara periode paralel.

Terkadang sulit untuk mengetahui fungsi mana yang mungkin perlu digunakan dalam rumus. Power Pivot, dan desainer model tabular dalam Alat Data SQL Server memiliki fitur Sisipkan Fungsi, yakni kotak dialog yang membantu Anda memilih fungsi menurut kategori dan memberikan keterangan singkat untuk setiap fungsi.

Menyisipkan Fungsi

Mari kita buat rumus baru dengan fungsi yang akan Anda pilih menggunakan fitur Sisipkan Fungsi:

Tugas: Menambahkan fungsi ke rumus menggunakan Sisipkan Fungsi

  1. Dalam tabel FactSales, gulir ke kolom paling kanan, lalu dalam header kolom, klik Tambah Kolom.
  2. Dalam panel rumus, ketik tanda sama dengan, =.
  3. Klik tombol Sisipkan Fungsi. Sisipkan Fungsi Kotak dialog Sisipkan Fungsi akan terbuka.
  4. Dalam kotak dialog Sisipkan Fungsi, klik kotak daftar Pilih kategori. Secara default, Semua dipilih dan semua fungsi dalam kategori Semua dicantumkan di bawah ini. Karena banyaknya fungsi yang ditampilkan, Anda mungkin harus memfilter fungsi untuk mempermudah pencarian tipe fungsi.
  5. Dengan rumus ini, Anda ingin mengembalikan data tertentu yang telah ada dalam tabel lain. Untuk melakukannya, Anda harus menggunakan fungsi dalam kategori Filter. Lanjutkan dengan mengklik kategori Filter, lalu dalam Pilih fungsi, gulir ke bawah dan klik dua kali fungsi RELATED. Klik Ok untuk menutup kotak dialog Sisipkan Fungsi.
  6. Gunakan IntelliSense untuk membantu Anda mencari dan memilih kolom DimChannel[ChannelName].
  7. Tutup rumus, lalu tekan Enter.
  8. Setelah Anda menekan Enter untuk menyelesaikan rumus, kata Menghitung akan ditampilkan dalam panel status di bagian bawah jendela Power Pivot. Anda baru saja membuat kolom baru dalam tabel FactSales menggunakan informasi saluran dari tabel DimChannel.
  9. Ubah nama kolom Saluran.

Rumus akan terlihat seperti berikut ini: =RELATED(DimChannel[ChannelName])

Kini Anda mengetahui fungsi lain yang sangat penting dalam DAX, yakni fungsi RELATED. Fungsi RELATED mengembalikan nilai dari tabel lain. Anda dapat menggunakan RELATED bila terdapat relasi antara tabel saat ini terbuka dan tabel berisi nilai yang ingin dihasilkan. Fungsi RELATED tentunya memiliki kemungkinan yang sangat luas. Dalam kasus ini, Anda dapat menyertakan saluran penjualan untuk setiap penjualan dalam tabel FactSales. Anda kini dapat menyembunyikan tabel DimChannel dari daftar bidang PivotTable untuk memudahkan navigasi dan hanya menampilkan informasi paling penting yang diperlukan. Hampir sama seperti fungsi CALCULATE yang dijelaskan sebelumnya, fungsi RELATED juga sangat penting dan Anda mungkin akan sering menggunakannya.

Seperti diketahui, fungsi dalam DAX dapat membantu Anda membuat rumus yang sangat berpengaruh. Kita sebenarnya hanya membahas tentang dasar-dasar fungsi. Dengan memiliki keahlian DAX yang semakin meningkat, Anda akan membuat rumus menggunakan beragam fungsi lainnya. Salah satu sumber terbaik untuk mempelajari rincian tentang semua fungsi DAX adalah Referensi Data Analysis Expressions (DAX).

QuickQuiz untuk Fungsi

  1. Apa yang selalu direferensikan oleh fungsi?
  2. Apakah rumus dapat berisi lebih dari satu fungsi?
  3. Apa kategori fungsi yang akan Anda gunakan untuk menggabungkan dua string teks ke dalam satu string?

Jawaban diberikan di bagian akhir topik ini.

Konteks

Konteks adalah salah satu konsep DAX yang paling penting untuk dipahami. Berikut adalah dua tipe konteks dalam DAX; konteks baris dan konteks filter. Kita akan membahas konteks baris terlebih dulu.

Konteks Baris

Konteks baris paling mudah dianggap sebagai baris saat ini. Misalnya, ingat kolom hitung Margin yang Anda lihat sewaktu mempelajari sintaks? Rumus =[SalesAmount] - [TotalCost] menghitung nilai dalam kolom Margin untuk setiap baris dalam tabel. Nilai untuk setiap baris dihitung dari nilai dalam dua kolom lain, [SalesAmount] dan [TotalCost], dalam baris yang sama. DAX dapat menghitung nilai untuk setiap baris dalam kolom Margin karena memiliki konteks: Untuk setiap baris, DAX akan mengambil nilai dalam kolom [TotalCost], lalu menguranginya dari nilai dalam kolom [SalesAmount].

Dalam sel pilihan yang ditampilkan di bawah ini, nilai $49,54 dalam baris saat ini dihitung dengan mengurangi nilai $51,54 dalam kolom [TotalCost] dari nilai $101,08 dalam kolom [SalesAmount].

Konteks baris di PowerPivot

Konteks baris tidak hanya berlaku untuk kolom hitung. Konteks baris juga berlaku bila rumus memiliki fungsi yang menerapkan filter untuk mengidentifikasi satu baris dalam tabel. Fungsi juga akan menggunakan konteks baris pada setiap baris dalam tabel yang digunakan untuk menerapkan filter. Tipe konteks baris ini paling sering digunakan pada bidang hitung.

Konteks Filter

Konteks filter sedikit lebih sulit dipahami dibandingkan dengan konteks baris. Konteks filter dapat sangat mudah dianggap sebagai: Satu atau beberapa filter yang diterapkan dalam penghitungan untuk menentukan hasil atau nilai.

Konteks filter tidak berlaku sebagai pengganti konteks baris, melainkan berlaku sebagai pelengkap konteks baris. Misalnya, untuk lebih mempersempit nilai yang disertakan dalam penghitungan, Anda dapat menerapkan konteks filter yang tidak hanya menentukan konteks baris, namun juga hanya menentukan nilai tertentu (filter) dalam konteks baris tersebut.

Konteks filter terlihat jelas dalam PivotTables. Misalnya, bila Anda menambahkan TotalCost ke area Nilai, lalu menambahkan Tahun dan Wilayah ke Baris atau Kolom, berarti Anda menentukan konteks filter yang akan memilih subhimpunan data berdasarkan tahun dan wilayah yang ditetapkan.

Mengapa konteks filter memiliki peran yang sangat penting dalam DAX? Karena meskipun konteks filter dapat sangat mudah digunakan dengan menambahkan label serta pengiris kolom dan baris dalam PivotTable, konteks filter juga dapat diterapkan dalam rumus DAX dengan menentukan filter menggunakan fungsi seperti ALL, RELATED, FILTER, CALCULATE, menurut relasi, serta menurut bidang dan kolom hitung lainnya. Misalnya, mari kita lihat rumus berikut dalam bidang hitung StoreSales:

Rumus

Rumus ini jelas sekali lebih kompleks dari beberapa rumus lain yang telah Anda ketahui. Namun, untuk lebih memahami rumus ini, kita dapat memisahkannya sama seperti yang kita lakukan pada rumus lainnya.

Rumus ini mencakup elemen sintaks berikut:

  1. Bidang hitung StoreSales, yang diikuti tanda titik dua :.
  2. Operator tanda sama dengan (=) menunjukkan bagian awal rumus.
  3. Fungsi CALCULATE mengevaluasi ekspresi, sebagai argumen, dalam konteks yang dimodifikasi oleh filter yang ditetapkan.
  4. Tanda kurung () mengelilingi satu atau beberapa argumen.
  5. Bidang hitung [Sales] dalam tabel yang sama sebagai ekspresi. Bidang hitung Penjualan memiliki rumus: =SUM(FactSales[SalesAmount]).
  6. Tanda koma (,) memisahkan setiap filter.
  7. Kolom referensi dan nilai tertentu, DimChannel[ChannelName] =”Store”, sebagai filter.

Rumus ini akan memastikan hanya nilai penjualan yang ditentukan oleh bidang hitung Penjualan, sebagai filter, yang akan dihitung untuk baris dalam kolom DimChannel[ChannelName] dengan nilai “Store”, sebagai filter.

Dengan demikian, agar dapat menentukan konteks filter dalam rumus, Anda memerlukan kemampuan yang tinggi dan canggih. Misalnya, kemampuan untuk mereferensikan hanya nilai tertentu dalam tabel terkait. Jangan khawatir jika Anda tidak dapat sepenuhnya memahami konteks ini dengan cepat. Dengan membuat rumus sendiri, Anda akan memahami konteks dan peran pentingnya dalam DAX dengan lebih baik.

QuickQuiz untuk Konteks

  1. Apa sajakah dua tipe konteks?
  2. Apakah yang dimaksud dengan konteks filter?
  3. Apakah yang dimaksud dengan konteks baris?

Jawaban diberikan di bagian akhir topik ini.

Ringkasan

Setelah memiliki pemahaman dasar tentang konsep paling penting dalam DAX, Anda dapat mulai membuat rumus DAX untuk kolom terhitung dan bidang terhitung sendiri. DAX mungkin agak rumit untuk dipelajari, namun banyak sumber informasi yang tersedia untuk Anda. Setelah membaca topik ini beberapa kali dan melakukan eksperimen dengan rumus sendiri, Anda dapat mempelajari selengkapnya tentang konsep dan rumus DAX lainnya untuk membantu mengatasi masalah bisnis Anda. Ada banyak sumber informasi DAX tersedia dalam Bantuan Power Pivot, Buku Online SQL Server, buku putih, serta blog dari Microsoft dan pakar BI terkemuka. DAX Resource Center Wiki (http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx) adalah temmpat yang paling tepat untuk memulai. Referensi Data Analysis Expressions (DAX) juga merupakan sumber informasi yang akurat. Pastikan Anda menyimpannya dalam Favorit Anda.

DAX dalam buku putih Model Tabular BI yang dapat diunduh (http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409) memberikan penjelasan lebih rinci tentang konsep yang diuraikan di sini serta berbagai konsep dan rumus lanjutan lainnya. Buku putih ini juga menggunakan buku kerja Contoso DAX Sample Formulas.xlsx sama seperti yang Anda miliki.

Jawaban QuickQuiz

Sintaks:

  1. Membuka fitur Sisipkan Fungsi.
  2. Tanda kurung siku [].
  3. =[UnitPrice] - [UnitCost]

Fungsi:

  1. Tabel dan kolom.
  2. Ya. Rumus dapat berisi hingga 64 fungsi bersarang.
  3. Fungsi Teks.

Konteks:

  1. Konteks baris dan konteks filter.
  2. Satu atau beberapa filter dalam penghitungan untuk menentukan satu nilai.
  3. Baris saat ini.
 
 
Berlaku pada:
Excel 2013, Power Pivot in Excel 2013