Blog
Power BI’da DAX Kullanıcı Tanımlı Fonksiyonlar (UDF)
- 25 Eylül 2025
- Yayınlayan: svahabi
- Kategori: Blog Yazıları
Kullanıcı Tanımlı Fonksiyonlar (UDF), DAX ifadelerinizi paketleyip tekrar kullanılabilir hale getirmenizi sağlar. Böylece aynı mantığı farklı ölçülerde, sütunlarda veya görsel hesaplamalarda tekrar yazmanıza gerek kalmaz.
UDF Nedir?
-
FUNCTIONanahtar sözcüğü ile tanımlanır. -
Parametreler (skaler, tablo veya referans) alabilir.
-
Tip kontrolü ile daha güvenli ve anlaşılır hale gelir.
-
Tanımlandıktan sonra ölçü, hesaplanmış sütun, görsel hesaplama veya başka bir UDF içinde kullanılabilir.
Nasıl Etkinleştirilir?
Power BI Desktop’ta:
-
File > Options and settings > Options menüsüne gidin.
-
Preview features bölümünden DAX user-defined functions kutucuğunu işaretleyin.
-
Uygulayıp Desktop’ı yeniden başlatın.
Nerede Tanımlanır?
-
DAX Query View (DQV): Fonksiyonları yazıp test edebilirsiniz.
-
TMDL View: Model betiklerinde fonksiyon ekleme/düzenleme.
-
Model Explorer: Fonksiyonları görüntüleme.
Genel Biçim
DEFINE
/// Açıklama
FUNCTION <FonksiyonAdı> = ( [ParametreAdı]: [ParametreTipi], ... ) => <FonksiyonGövdəsi>
Örnek
DEFINE
/// AddTax: tutara KDV ekler
FUNCTION AddTax =
( amount : NUMERIC ) =>
amount * 1.1
EVALUATE
{ AddTax ( 10 ) } // Sonuç: 11
Kullanım Alanları
-
Ölçü:
Total Sales with Tax = AddTax ( [Total Sales] )
-
Hesaplanmış Sütun:
Sales Amount with Tax = CONVERT ( AddTax ( 'Sales'[Sales Amount] ), CURRENCY )
-
Görsel Hesaplama:
Sales Amount with Tax = AddTax ( [Sales Amount] )
-
Başka UDF içinde:
FUNCTION AddTaxAndDiscount =
( amount : NUMERIC, discount : NUMERIC ) =>
AddTax ( amount - discount )
Parametreler
Fonksiyonlar sıfır veya daha fazla parametre alabilir. Parametreler için tip ipucu ekleyebilirsiniz:
-
Scalar, Table, AnyVal, AnyRef türleri.
-
Skaler alt tipler: Int64, Decimal, Double, String vb.
✅ Sonuç: DAX UDF’ler sayesinde tekrarlayan hesaplamaları merkezi bir yerde tutabilir, modelinizi daha okunabilir ve sürdürülebilir hale getirebilirsiniz.