Bir ifadede değişken kullanma örnekleri
Qlik Sense uygulamasındaki bir değişken, veri değeri içeren adlandırılmış bir yapıdır. Bir ifadede değişken kullanıldığında, değeri veya değişkenin tanımı ile değiştirilir.
İfadelerde değişkenleri kullanma yolları
Bir değişken doğrudan bir başvuruda veya dolar işareti genişletmede iki farklı şekilde kullanılabilir. Doğrudan bir başvuru kullanırsanız değişken değeri hesaplamada kullanılır. Bir dolar işareti genişletme kullanırsanız dolar işareti genişletmenin tamamı ifade ayrıştırılmadan önce değişken değeriyle değiştirilir. Bu nedenle, iki farklı yöntem farklı sonuçlar verebilir.
Örnek: Dolar işareti genişletme ile bir değişken kullanma
x değişkeni, Sum(Sales) metin dizesini içerir.
Bir grafikte, $(x)/12 ifadesini tanımlarsınız. Etkisi, Sum(Sales)/12 grafik ifadesinin etkisiyle tam olarak aynıdır.
Ancak x değişkeninin değerini örneğin Sum(Budget) olarak değiştirirseniz grafikteki veriler, ifade Sum(Budget)/12 şeklinde yorumlanarak hemen yeniden hesaplanır.
Örnek: Pivot tabloda dolar işareti genişletme ile değişken
Aşağıdakileri içeren bir Pivot tablonuz veya Pivot nesneniz olduğunu varsayalım:
-
Boyutlar Product Type ve Product Name şeklindedir.
-
Hesaplamalar Sum(Sales) ve Count (distinct InvoiceNumber) şeklindedir.
-
Sütunlar altındaki öğeler Değerler (varsayılan) ve Quarter alanıdır.
Etkileşimli analizi teşvik etmek için değişkenleri kullanabilirsiniz. Ayrıca boş tanımlı bir vUserInteraction değişkeni oluşturduğunuzu varsayalım. Ardından, sayfanızda Değişken değeri ayarla eylemiyle yapılandırılmış iki Düğme grafiği oluşturursunuz:
-
Daha fazla ayrıntı göster: Bu düğmeye tıklandığında vUserInteraction, ='Yes' değerine ayarlanır.
-
Daha az ayrıntı göster: Bu düğmeye tıklandığında vUserInteraction, ='No' değerine ayarlanır.
Pivot tablonuzda, grafiğe Count(Quantity) ve Sum(Cost) gibi bir dizi ek hesaplama ekleyebilirsiniz. Ardından, her bir hesaplama sütununu Şu durumda sütunu göster: için aşağıdaki değere sahip olacak şekilde yapılandırın:
'$(Reference)'='Yes'
Bu, grafiğin kullanıcının ek bilgi isteyip istememesine uyum sağlamasına olanak tanır. Kullanıcı Daha fazla ayrıntı göster düğmesine tıklarsa tabloya ek hesaplamalar eklenir. Aksi takdirde veya Daha az ayrıntı göster seçeneğine tıklarsa ek hesaplamalar kaldırılır.
Daha fazla örnek: Dolar işareti genişletmelerde değişkenleri kullanma
Dolar işareti genişletmeler, Qlik Sense içinde çok yönlü ve güçlü bir araçtır ve birçok olası kullanımı vardır. Daha fazla örnek için bkz. Dolar işareti genişletmeleri.
Örnek: Bir ifadede değişkene doğrudan referans verme
Bir değişkeni doğrudan referans olarak kullanmak daha az yaygındır, ancak yine de kullanışlıdır. Örneğin:
Veri modelinizde işlemlerin serbest metin özetlerini içeren bir TransactionSummary alanınız olduğunu varsayalım. Bu alan, işlemler hakkında ek bilgiler içerebilir. Örneğin, müşterinin bir ürünü mağaza kredisi ile satın aldığını belgelemek veya satış sırasında ortaya çıkan sorunları belgelemek için bir işlem özeti olabilir.
Uygulamanızda TransactionSummary kullanmak ancak verileri veri modelini veya komut dosyasını etkilemeden ve grafikte başka bir yerde depolamadan bağlama yerleştirmek isteyebilirsiniz.
Aşağıdakileri yapabilirsiniz:
Değişkenler iletişim kutusunda, vIntroStatement adında, aşağıdaki tanıma sahip bir değişken oluşturun:
='The following summary was provided by the vendor: '
Bir Metin ve görüntü grafiğine aşağıdaki hesaplamayı ekleyin:
vIntroStatement & TransactionSummary
Giriş ifadesini bir değişken olarak saklamak, bir değerin kullanımını merkezi olarak kontrol etmenizi sağlar. Örneğin, vIntroStatement değişkeni birden fazla grafikte ve bir dizi farklı hesaplamada kullanılabilir (örneğin, bazen işlem sırasında kaç birim satıldığını açıklayan metin içeren ayrı bir grafik olabilir). Bir değişken kullanarak, uygulamadaki ifadeleri güncelleme işlemini basitleştirebilirsiniz. İfadede bir değişiklik yapmak için değişkeni güncellemeniz yeterlidir ve değişiklikler tüm uygulamaya yansıtılır.
Adların yorumlanması
Qlik Sense içindeki bir alanda veya fonksiyonda bir değişkene aynı adı vermek önerilmez. Ancak yaparsanız, bunları bir ifadede nasıl kullanacağınızı bilmeniz gerekir.
Örnek:
XXX dizesi bir alan, değişken, fonksiyon veya hesaplamayı temsil eder. XXX, ifadeyi nasıl oluşturduğunuza göre bunlardan biri olarak yorumlanacaktır.
İfade | XXX'in yorumlanma biçimi |
---|---|
XXX() | hesaplama, değişken veya alan |
$(XXX) | değişken |
Count(XXX) | alan veya değişken |
XXX() | fonksiyon |
Bir varlığı adlandırırken, birden fazla alana, değişkene veya hesaplamaya aynı adı atamaktan kaçının. Aynı adlara sahip varlıklar arasındaki çatışmaları çözmek için katı bir öncelik sırası bulunur. Bu sıra, bu varlıkların kullanıldığı tüm nesnelere veya bağlamlara yansıtılır. Bu öncelik sırası aşağıdaki gibidir:
Bir toplama içinde, alanlar değişkenlerden daha önceliklidir. Hesaplama etiketleri toplamalarla alakalı olmadıkları için bunlara öncelik verilmez.
Bir toplamanın dışında bir hesaplama etiketinin bir değişkene göre önceliği; değişkenin ise bir alan adına göre önceliği vardır.
Ayrıca, bir toplamanın dışında, bir hesaplamanın etiketi hesaplanan bir etiket olmadıkça bu etikete başvurularak yeniden kullanılabilir. Böyle bir durumda, kendi kendine başvurma riskini azaltmak için hesaplamanın önemi düşürülür ve ad her zaman önce bir hesaplama etiketi olarak, sonra bir alan adı olarak, sonra da bir değişken adı olarak yorumlanır.
En iyi uygulama, bir uygulamada oluşturduğunuz değişkenler için standartlaştırılmış bir adlandırma kuralı kullanmaktır. Örneğin, tüm değişken adlarınızın v ile başladığından emin olabilirsiniz. Örnek: vUserText. Bu, değişkenlerin hızlı bir şekilde değişken olarak tanınmasını ve hesaplamalardan, alanlardan ve fonksiyonlardan ayırt edilmesini sağlamaya yardımcı olur.
Değişken hesaplaması
Qlik Sense uygulamasında hesaplanan değerler ile değişkenleri kullanmanın çeşitli yolları vardır ve bunu nasıl tanımladığınıza ve ifade içinde nasıl çağırdığınıza göre sonuç değişir.
Bu örnek, veri yükleme düzenleyicisinde aşağıdaki verilerin yüklenmesini gerektirir:
Değişkenler diyalog penceresinden iki değişken tanımlayalım:
- Ad vSales Tanım'Sum(Sales)'
- Ad vSales2 Tanım'=Sum(Sales)'
İkinci değişkende ifadenin önüne bir eşittir işareti ekliyoruz. Böylece değişkenin, genişletme yapılmadan ve ifade değerlendirilmeden önce hesaplanması sağlanır.
vSales değişkenini olduğu gibi kullanırsanız (örneğin, bir hesaplama içinde) sonuç Sum(Sales) dizesi olur; yani hiçbir hesaplama yapılmaz.
Dolar işareti genişletmesi ekler ve $(vSales) öğesini ifade içinde çağırırsanız, değişken genişletilir ve Sales toplamı görüntülenir.
Son olarak, $(vSales2) öğesini çağırırsanız değişken genişletilmeden önce hesaplanır. Bu da görüntülenen sonucun Sales toplamı olması anlamına gelir. Hesaplama ifadesi olarak =$(vSales) ile =$(vSales2) kullanma arasındaki fark, sonuçların gösterildiği bu grafikte görülmektedir:
Dim | $(vSales) | $(vSales2) |
---|---|---|
A | 350 | 1560 |
B | 470 | 1560 |
C | 740 | 1560 |
Göreceğiniz üzere $(vSales) sonuç olarak bir boyut değerinin kısmi toplamını verirken, $(vSales2) sonuç olarak genel toplamı verir.