Fungsi-Fungsi DAX yang Umum Digunakan
Dalam Data Analysis Expressions (DAX) terdapat lebih dari 250 fungsi yang dapat digunakan untuk melakukan berbagai jenis perhitungan dalam model data. Meskipun jumlahnya sangat banyak, pada praktiknya kita biasanya hanya menggunakan fungsi-fungsi yang paling umum dan relevan untuk analisis, seperti saat membuat dashboard penjualan. Fungsi DAX dirancang untuk bekerja dengan model data berbasis relasi, sehingga mampu melakukan perhitungan dinamis berdasarkan konteks filter, hubungan antar tabel, serta dimensi waktu. Salah satu fungsi pertama yang sering dipelajari adalah SUM, yang termasuk dalam kategori fungsi agregasi. Fungsi agregasi digunakan untuk menghitung nilai skalar (satu hasil angka) dari sekumpulan data dalam kolom atau tabel. Contohnya adalah menghitung total (SUM), rata-rata (AVERAGE), nilai minimum (MIN), maksimum (MAX), atau jumlah data (COUNT). Fungsi ini sangat penting karena menjadi dasar hampir semua metrik dalam laporan, seperti total penjualan, rata-rata transaksi, atau jumlah pelanggan.
Selain fungsi agregasi, terdapat kategori fungsi filter, yang sangat penting dalam DAX karena berhubungan dengan konsep konteks data. Fungsi ini membantu memilih data tertentu, mencari nilai dalam tabel yang berelasi, dan menerapkan atau memodifikasi filter dalam suatu perhitungan. Dengan fungsi filter, kita bisa membuat kalkulasi yang berubah sesuai pilihan pengguna di laporan. Contoh fungsi dalam kategori ini adalah CALCULATE, FILTER, ALL, dan SELECTEDVALUE. Fungsi-fungsi ini memungkinkan perhitungan seperti “total penjualan hanya untuk tahun tertentu” atau “penjualan tanpa dipengaruhi filter kategori”. Kategori berikutnya adalah fungsi keuangan (financial functions). Fungsi ini digunakan untuk perhitungan yang berkaitan dengan analisis finansial, seperti nilai sekarang bersih (Net Present Value/NPV) atau tingkat pengembalian (Rate of Return). Contohnya termasuk PMT (pembayaran pinjaman), FV (future value/nilai masa depan), dan IPMT (bunga pembayaran pinjaman). Fungsi ini berguna dalam analisis investasi dan perencanaan keuangan.
Kemudian ada fungsi informasi (information functions), yang berfungsi memeriksa jenis atau kondisi suatu nilai. Fungsi ini sering dipakai untuk validasi data dalam perhitungan. Misalnya, fungsi ISERROR akan menghasilkan nilai TRUE jika suatu ekspresi menghasilkan error. Fungsi ini membantu memastikan formula tetap aman dan tidak menghasilkan kesalahan yang merusak laporan. Selanjutnya adalah fungsi logika (logical functions). Fungsi ini digunakan untuk membuat keputusan dalam rumus berdasarkan kondisi tertentu. Contoh paling umum adalah IF, IFERROR, SWITCH, AND, dan OR. Dengan fungsi ini, kita bisa membuat aturan seperti “jika penjualan lebih dari target maka status = Tercapai, jika tidak maka Belum Tercapai”. Fungsi logika sering digabungkan dengan fungsi lain untuk membentuk analisis yang lebih kompleks.
Kategori fungsi matematika dan trigonometri di DAX mirip dengan yang ada di Excel, meskipun terdapat perbedaan pada tipe data numerik yang digunakan. Fungsi ini mencakup perhitungan angka seperti pembulatan (MROUND), pembagian yang aman dari error (DIVIDE), atau peringkat data (RANK). Fungsi ini membantu dalam analisis numerik yang lebih detail. Untuk data yang memiliki struktur hierarki, terdapat fungsi parent-child. Fungsi ini membantu mengelola data yang tersusun dalam hubungan bertingkat, seperti struktur organisasi perusahaan (direktur → manajer → staf). Contohnya adalah PATH dan PATHITEM, yang digunakan untuk menelusuri hubungan antar level dalam hierarki.
Kategori penting lainnya adalah fungsi relasi (relationship functions). Fungsi ini mengelola hubungan antar tabel dalam model data. DAX dapat menggunakan relasi yang sudah dibuat atau bahkan mengaktifkan relasi tertentu hanya untuk satu perhitungan. Contohnya adalah RELATED, RELATEDTABLE, dan USERELATIONSHIP. Fungsi ini memungkinkan pengambilan data dari tabel lain berdasarkan hubungan yang ada. Ada juga fungsi statistik, yang digunakan untuk analisis distribusi data dan probabilitas. Fungsi seperti MEDIAN dan RANKX membantu memahami penyebaran data, nilai tengah, dan peringkat suatu nilai dalam kumpulan data.
Berikutnya adalah fungsi manipulasi tabel (table manipulation functions). Fungsi ini menghasilkan tabel baru atau memodifikasi tabel yang ada. Contohnya GROUPBY, SELECTCOLUMNS, dan SUMMARIZE. Fungsi ini sering digunakan untuk membuat ringkasan data sebelum dihitung lebih lanjut. Fungsi teks (text functions) digunakan untuk mengolah data berbentuk teks. Fungsinya meliputi mengambil sebagian teks, mencari teks tertentu, atau menggabungkan teks. Contohnya CONCATENATE, LEFT, MID, dan RIGHT. Fungsi ini berguna untuk membersihkan atau membentuk ulang data teks. Terakhir, ada fungsi date and time intelligence. Ini adalah kategori yang sangat penting dalam analisis bisnis. Fungsi ini memungkinkan perhitungan berbasis waktu dengan memahami kalender, seperti membandingkan penjualan tahun ini dengan tahun lalu atau menghitung total penjualan dari awal tahun sampai hari ini. Contoh fungsi dalam kategori ini adalah SAMEPERIODLASTYEAR, DATESYTD, dan DATEADD. Fungsi ini membuat analisis tren waktu menjadi lebih mudah dan otomatis.
Secara keseluruhan, fungsi DAX dibagi ke dalam berbagai kategori sesuai tujuan penggunaannya, mulai dari agregasi sederhana hingga analisis waktu yang kompleks. Memahami kategori-kategori ini membantu kita memilih fungsi yang tepat, membangun model data yang efisien, dan menghasilkan analisis yang dinamis serta akurat dalam dashboard dan laporan.
Reference: Bernard Obeng Boateng. (2023). Data Modeling with Microsoft Excel. 1st. Packt. Birmingham. ISBN: 971803240282.