CALCULATE ile OR Kullanımı

2021 Mart güncellemesi ile birlikte CALCULATE'e verebileceğimiz filtre tiplerinde OR kullanımına ilişkin bir yazım (syntax) değişikliğine gidildi. Daha önce CALCULATE ile OR kullanımıyla ilgili yazdığım yazıda şöyle örnekler vermiştim:

Aynı filtre içerisinde tek bir sütun üzerinden OR condition yazabiliriz.

Kırmızı-Mavi Ürün Satışları = 
CALCULATE( SUM( 'Satışlar'[Tutar] ) ,
    'Ürünler'[Renk] = "Kırmızı" || 'Ürünler'[Renk] = "Mavi" 
)
calculate ile OR kullanımı

Fakat farklı sütunlardan gelen condition'ları aynı filtre altında veremiyorduk!

Yani aşağıdaki gibi bir formül yazamıyorduk:

Kırmızı veya Contoso Satışları = 
CALCULATE( SUM( 'Satışlar'[Tutar] ) ,
    'Ürünler'[Renk] = "Kırmızı" || 'Ürünler'[Marka] = "Contoso"
)
CAL OR 2

"The expression contains  multiple columns , but only a  single column  can be used…" . Meali, aynı filtrede birden fazla farklı sütun kullanamazsın!

Eğer böyle bir ihtiyaç varsa bunu ancak FILTER kalıbıyla yazabiliyorduk.

Kırmızı Contoso Satışları FILTER_ = 
CALCULATE( SUM( 'Satışlar'[Tutar] )  ,
    FILTER( ALL( 'Ürünler'[Renk] , 'Ürünler'[Marka]) ,
        'Ürünler'[Renk] = "Kırmızı" || 'Ürünler'[Marka] = "Contoso"
    )
)
CAL OR 4

Güncellemeyle birlikte artık daha önce reddettiği yazıma müsade ediyor!

CAL OR 5

Burada bir uyarıda bulunmak isterim :  Sütunlar aynı tablodan geliyorsa  buna artık müsade ediyor, fakat farklı tablolardan gelen sütunlar üzerinden OR'la bağlanmış  tek bir filtre  halen syntax olarak yazamıyoruz!

CAL OR 6

Bu durum elbette çözümsüz değil, expanded tables konseptiyle, CALCULATETABLE ile ya da FILTER ile , ya da kafamız nasıl çalışıyorsa SUMMARIZE ile de yapabiliriz.

CALCULATE ve OR kullanımına ilişkin bu yazıya da göz atmanızı öneririm, IN operatörü ile de benzer hesaplamaları yapmak mümkün.

Önümüzdeki +- 6 ay – 1 yıl içerisinde DAX'ın semantiğiyle ilgili yapısal bir değişiklik yok, ama yazıma (syntax) ilişkin değişiklikler olması muhtemel. AutoExist gibi, DAX konusunda tecrübeli kişilere bile "nasıl yani" dedirtecek durumlar için de geliştirmeler olacak büyük ihtimalle.

Yazıdaki modeli -bloga üyeyseniz- indirebilirsiniz.

CALCULATE ve OR Kullanımı

Bloga sosyal medya hesabınızla hızlı üyelik-giriş için ilgili ikonu tıklayabilirsiniz.