Set değiştiricileri

Bir küme, ek veya değiştirilmiş bir seçimle değiştirilebilir. Bu tür bir değişim, set ifadesinde yazılabilir.

Değiştirici, her birini alan üzerinde yapılması gereken bir seçimin izlediği ve tümü açılı köşeli ayraçlar (< >) arasına alınmış bir veya birkaç alan adından oluşur. Örneğin: <Year={2007,2008},Region={US}>. Alan adları ve alan değerleri normalde olduğu gibi alıntılanabilir; örneğin, <[Sales Region]={’West coast’, ’South America’}>.

Bir set değiştiricisi, önceki set tanımlayıcısının seçimini değiştirir. Hiçbir set tanımlayıcısına referansta bulunulmuyorsa, geçerli seçim durumu örtüktür.

Seçim birkaç yöntemle tanımlanabilir:

  • Başka bir alanı temel alarak
  • Unsur setlerini temel alarak (değiştiricide bir alan değeri listesi)
  • Zorunlu dışlama

Bu yöntemler aşağıdaki alt bölümlerde açıklanmıştır.

Başka bir alanı temel alarak

Basit bir durum, başka bir alanın seçilen değerlerini temel alan bir seçimdir; örneğin <OrderDate = DeliveryDate>. Bu değiştirici, seçilen değerleri DeliveryDate öğesinden alır ve bunları OrderDate öğesine bir seçim olarak uygular. Birkaç yüzü aşacak kadar çok sayıda tekil değer mevcutsa, bu işlem CPU'yu yoğun olarak kullanır ve bu işlemden kaçınılmalıdır.

Öğe kümeleri temelinde

Bunun en yaygın örneği, küme ayraçları içindeki alan değerlerini içeren bir listeye bağlı olan bir küme ifadesidir. Değerler virgülle ayrılır (örn. <Year = {2007, 2008}>). Buradaki küme ayraçları, öğelerin alan değerleri veya alan değerlerinin aramaları olabileceği bir öğe kümesini tanımlar.

Listelenen değerler boşluk veya özel karakter içermediği sürece, alıntılara ihtiyaç duyulmaz. Listelenen değerlerin alan değerleriyle eşleştirilmesi yeterlidir. Bu karşılaştırma, büyük/küçük harf duyarlı değildir.

Listelenen değerler boşluk veya özel karakterler içeriyorsa veya joker karakterler kullanmak istiyorsanız değerleri tırnak işareti içine almanız gerekir. Listelenen değerler açık alan değerleriyse, tek tırnak işaretleri kullanılmalıdır. Listelenen değerler ve benzersiz alan değerleri arasında büyük/küçük harf duyarlı olmayan eşleşmeler yapılır.

Aramalar (joker karakterler içeren veya ilişkisel işleçlerle ya da eşittir işaretiyle başlayan dizeler) için çift tırnak işaretleri kullanılmalıdır. Örneğin, <Ingredient = {"*Garlic*"}>, ’Garlic’ dizesini içeren tüm içerikleri seçer. Çift tırnak işaretleri, köşeli ayraçlarla değiştirilebilir. Örnek: <Ingredient = {[*Garlic*]}>. Çift tırnak işaretleri, vurgu işaretleriyle de değiştirilebilir. Örnek: <Ingredient = {`*Garlic*`}>. Aramalar büyük/küçük harf duyarlıdır.

Note:

Qlik Sense hizmetinin önceki sürümlerinde, tek ve çift tırnak işaretleri arasında ayrım yoktu ve tırnak içine alınan tüm dizeler aynı şekilde aranıyordu. Geriye dönük uyumluluğu korumak için, Qlik Sense hizmetinin eski sürümleriyle oluşturulan uygulamalar, önceki sürümlerde olduğu gibi çalışmaya devam edecek. Qlik Sense November 2017 veya sonraki sürümlerinden biriyle oluşturulan uygulamalar, iki tırnak işareti arasındaki farkları dikkate alacak.

Zorunlu dışlama

Son olarak, AND modundaki alanlar için zorunlu dışlama olasılığı da mevcuttur. Belirli alan değerlerine zorunlu hariç tutma uygulamak istiyorsanız, alan adının önünde “~” işaretini kullanmanız gerekir.

Note: AND modu, yalnızca Qlik Altyapı API'si kullanılarak desteklenir.

Examples and results:  

Örnekler Sonuçlar
sum( {1<Region= {USA} >} Sales ) Geçerli seçimi göz ardı ederek, USA bölgesi için satışları döndürür.
sum( {$<Region = >} Sales ) Geçerli seçim için satışları döndürür, ancak 'Region' içindeki seçim kaldırılır.
sum( {<Region = >} Sales )

Hemen üstteki örnek ile aynı sonucu döndürür. Değiştirilecek set atlandığında, $ varsayılır.

Note: Önceki iki örnekteki söz dizimi, 'Region' içinde "seçim yok" olarak yorumlanır; yani diğer seçimlerin olası olduğu düşünüldüğünde tüm bölgelerdir. Bu, bölge yok olarak yorumlanan <Region = {}> söz dizimi (veya örtük bir şekilde boş bir unsur setiyle sonuçlanan, eşittir işaretinin sağ tarafındaki herhangi bir diğer metin) ile eşdeğer değildir.
sum( {$<Year = {2000}, Region = {US, SE, DE, UK, FR}>} Sales ) Geçerli seçim için satışları döndürür, ancak hem 'Year' hem de 'Region' içindeki yeni seçimleri içerir.
sum( {$<~Ingredient = {“*garlic*”}>} Sales )

Ingredient alanı AND modundadır.

'garlic' dizesini içeren tüm ingredient'ler üzerinde zorunlu dışlama ile, geçerli seçim için satışları döndürür.

sum( {$<Year = {“2*”}>} Sales ) "2" basamağıyla başlayan tüm yıllar, yani büyük olasılıkla 'Year' alanında seçilen, 2000 yılı ve sonraki yıllar ile, geçerli seçim için satışları döndürür.
sum( {$<Year = {“2*”,”198*”}>} Sales ) Yukarıdaki gibidir; ancak bu kez seçime 1980'ler de dahil edilir.
sum( {$<Year = {“>1978<2004”}>} Sales ) Geçerli seçimler için satışları, satışın toplanacağı yıl aralığının kapsamını belirlemek için kullanılan sayısal bir aramayla döndürür.