Constrain | Qlik Sense on Windows Yardımı
Ana içeriğe geç Tamamlayıcı içeriğe geç

Constrain

Constrain deyimi, komut dosyası değişkenlerini tanımlamak için Let veya Set deyimleriyle birlikte kullanılabilir. Constrain deyimi, bu değişkenler için olası değerler üzerinde kısıtlamalar tanımlamanıza olanak tanır. Bir değişken tanımı kısıtlamaları ihlal ederse yeniden yükleme başarısız olur. Kısıtlamalarla, değişken değerlerinin belirli türlerle eşleşmesini, belirli sayısal aralıklara girmesini ve tanımladığınız kabul edilebilir değerlerle eşleşmesini zorunlu tutabilirsiniz.

Constrain variablename = json

Burada:

  • variablename bir komut dosyası değişkenidir.

  • json kısıtlamaları belirten geçerli bir JSON nesnesidir. Bireysel kısıtlamalar bu nesnenin içine anahtar-değer çiftleri olarak eklenir.

Kısıtlama türleri
Kısıtlama türü (anahtar) Anlamı Kısıtlama gereksinimleri (değer) Örnekler
"type" Değişken değerlerini belirli bir veri türüyle sınırlayın.

"text" bir metin türü belirtir.

"number" sayısal bir tür belirtir.

CONSTRAIN vExampleText = {"type": "text"}
CONSTRAIN vExampleNumeric = {"type": "number"}
"maxnum" Bir değişken için maksimum değer ayarlayın. Yalnızca sayılar (tam sayı veya kayan nokta). Bilimsel gösterime izin verilir.
CONSTRAIN vExample = {"maxnum": 5000}
"minnum" Bir değişken için minimum değer ayarlayın. Yalnızca sayılar (tam sayı veya kayan nokta). Bilimsel gösterime izin verilir.
CONSTRAIN vExample = {"minnum": 250}
"valuesnum" Değişken için kabul edilebilir sayısal değerlerin bir listesini tanımlayın. Köşeli parantez içine alınmış sayıların virgülle ayrılmış listesi. Örneğin: [1,2,3]
CONSTRAIN vExample = {"valuesnum": [1,2,3]}
"valuestext" Değişken için kabul edilebilir metin değerlerinin bir listesini tanımlayın. Köşeli parantez içine alınmış dizelerin virgülle ayrılmış listesi. Örneğin: ["a","b","c"]
CONSTRAIN vExample = {"valuestext": ["Department A", "Department B", "Department C"]}

Bir Constrain ifadesi ne zaman kullanılır

İstenmeyen değişken değerlerinin analitik uygulamalarına yüklenmesini önlemek için Constrain deyimini kullanın.

Dikkat edilmesi gereken noktalar

  • Değişken için Constrain tanımı geçerli bir JSON nesnesi olmalıdır.

  • Tek bir değişken için birden fazla kısıtlama belirtebilirsiniz. Bir değişken için tüm kısıtlamaların tek bir kısıtlama nesnesi içinde yer alması gerekir. Örneğin bkz. Örnekler - Çoklu kısıtlamalar

  • Uygulamaya belirli bir ada sahip bir komut dosyası değişkeni yüklediyseniz, gelecekte bu değişken için kısıtlamalar ve değerler tanımlama girişimleri, orijinal ve yeniden tanımlanan değişkenler arasındaki çakışmalar nedeniyle başarısız olabilir.

    Bu çakışmaları çözmek için boş tanımlar ekleyerek değişken kısıtlamalarını ve değerlerini sıfırlayın. Örnekler:

    CONSTRAIN x;
    LET x;
    
    CONSTRAIN x;
    SET x;

    Daha sonra değişkeni ve kısıtlamalarını kod dosyasının sonraki bölümlerinde yeniden tanımlayabilirsiniz. Uzun biçimli bir örnek için bkz. Örnek - Değişken tanımı çakışmalarını çözme.

  • Değişken tanımının ve kısıtlama tanımının sırası önemli değildir. Ancak değişkene bağlı yeniden yükleme hatası durumunda, kırılma noktasının oluştuğu çizgi farklı olacaktır.

  • Constrain komut dosyası deyimi yalnızca kod değişkenleri için değişken tanımlarını kısıtlar. Ayrıca genel API'yi kullanarak kod ve son kullanıcı değişkenlerine (sayfa görünümünde veya API kullanılarak oturum değişkenleri olarak oluşturulan ya da güncellenen) kısıtlamalar uygulayabilirsiniz. Daha fazla bilgi için bkz. Değişken kısıtlamalarını tanımlamak için geliştirici alternatifleri.

  • Kısıtlamalar, değişken için herhangi bir değerle eşleşemeyen senaryoları önlemek amacıyla doğrulanır. Geçersiz kısıtlamalara örnekler:

    • {"minnum": 5000, "maxnum": 4}
    • {"type": "text", "maxnum": 4}

Değişken kısıtlamalarını tanımlamak için geliştirici alternatifleri

Değişken kısıtlamalarını tanımlamak için kod dosyasında Constrain deyimini kullanmak yerine genel API'yi de kullanabilirsiniz. API aracılığıyla kısıtlamalar tanımlanırken, değişken değerlerini güncellemeye yönelik tüm girişimler (ister doğrudan komut dosyasında ister sayfa görünümünde olsun) kısıtlamalara tabi olacaktır.

Değişken kısıtlamalarını genel API aracılığıyla tanımlamak için, QlikEngine JSON API'sindeki GenericVariableConstraints özelliğini kullanın: GenericVariableProperties (yalnızca İngilizce).

Örnek - type

Örnek - maxnum

Örnek - minnum

Örnek - valuesnum

Örnek - valuestext

Örnekler - SET ve LET

Bu örnekler, değişken tanımı sırasında SET veya LET kullanıldığında kısıtlamaların nasıl uygulandığı arasındaki farkları göstermektedir. Tüm örneklerde type gereksinimi uygulayan kısıtlamalar kullanılmaktadır, ancak bu ilkeler genel olarak tüm kısıtlama türleri için geçerlidir.

Örnekler - Çoklu kısıtlamalar

Örnek - Değişken tanımı çakışmalarını çözme

Bu sayfa size yardımcı oldu mu?

Bu sayfa veya içeriği ile ilgili bir sorun; bir yazım hatası, eksik bir adım veya teknik bir hata bulursanız lütfen bize bildirin!