Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:Hesaplanan sütun
Hesaplanan tablo
Ölçü
Görsel hesaplama
Bir ifadeyi değer listesinde değerlendirir ve birden çok olası sonuç ifadelerinden birini döndürür. Bu işlev, birden çok iç içe IF deyiminin olmasını önlemek için kullanılabilir.
Sözdizimi
SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])
Parametreler
Süre | Tanım |
---|---|
expression |
İfadenin birden çok kez değerlendirileceği tek bir skaler değer döndüren DAX ifadeler (her satır/bağlam için). |
value |
expression sonuçlarıyla eşleştirilecek sabit bir değer. |
result |
expression sonuçları ilgili value eşleşiyorsa değerlendirilecek skaler ifadeler. |
else |
expression sonucu value bağımsız değişkenlerinden herhangi biriyle eşleşmiyorsa değerlendirilecek herhangi bir skaler ifade. |
Dönüş değeri
bir value
ile eşleşme varsa, ilgili result
bir skaler değer döndürülür. bir value
ile eşleşme yoksa, else
bir değer döndürülür.
values
hiçbiri eşleşmiyorsa ve else
belirtilmezse BLANK döndürülür.
Açıklamalar
- Değerlendirilecek
expression
sabit bir değer veya ifade olabilir. Bu işlevin yaygın kullanımlarından biri, ilk parametreyiTRUE
olarak ayarlamaktır. Aşağıdaki örneklere bakın. - Tüm
result
ifadeleri veelse
ifadesi aynı veri türünde olmalıdır. - Koşulların sırası önemlidir. Bir
value
eşleşir eşleşmez, karşılık gelenresult
döndürülür ve sonraki diğervalues
değerlendirilmez. Daha az kısıtlayıcıvalues
önce değerlendirilecek en kısıtlayıcıvalues
belirtildiğinden emin olun. Aşağıdaki örneklere bakın.
Örnekler
SWITCH yaygın bir kullanımı, expression
sabit values
ile karşılaştırmaktır. Aşağıdaki örnek, ay adlarından oluşan hesaplanmış bir sütun oluşturur:
= SWITCH (
[Month Number Of Year],
1, "January",
2, "February",
3, "March",
4, "April",
5, "May",
6, "June",
7, "July",
8, "August",
9, "September",
10, "October",
11, "November",
12, "December",
"Unknown month number"
)
SWITCH bir diğer yaygın kullanımı, birden çok iç içe IF deyimini değiştirmektir. Bu, aşağıdaki örnekte gösterildiği gibi ifadeyi TRUE
olarak ayarlayarak gerçekleştirilir ve stokta bitme riskini belirlemek için ürünlerde Yeniden Sipariş Noktası ve Güvenlik Stok Düzeyi'ni karşılaştırır:
= SWITCH (
TRUE,
[Reorder Point] > [Safety Stock Level], "Good: Safety stock level exceeded",
[Reorder Point] = [Safety Stock Level], "Minimal: Safety stock level met",
[Reorder Point] < [Safety Stock Level], "At risk: Safety stock level not met",
ISBLANK ( [Reorder Point] ), "Incomplete: Reorder point not set",
ISBLANK ( [Safety Stock Level] ), "Incomplete: Safety stock level not set",
"Unknown"
)
values
sırası önemlidir. Aşağıdaki örnekte, birinci değer ikinci değerden daha az kısıtlayıcı olduğundan ikinci result
hiçbir zaman döndürülmüyor. Bu örnekteki sonuç her zaman A
veya C
olur, ancak hiçbir zaman B
.
= SWITCH (
TRUE,
Product[Standard Cost] < 100, "A",
Product[Standard Cost] < 10, "B",
"C"
)
result
bağımsız değişkenlerindeki veri türleri farklı olduğundan aşağıdaki deyim bir hata döndürür. Tüm result
ve else
bağımsız değişkenlerindeki veri türlerinin aynı olması gerektiğini unutmayın.
= SWITCH (
[Class],
"L", "Large",
"H", 0.1
)