Ana içeriğe geç

Global Filtreler

Global filtre, board üzerindeki tüm widget'lara aynı parametre değerini geçiren bir mekanizmadır. Compass sorgularındaki global variable'lar bir Horizon board'a bağlandığında, board üst panelinden tek bir kontrol noktasıyla tüm chart'lar aynı değerle çalıştırılır. En tipik kullanım: tarih aralığı seçimi, vardiya seçimi, tesis/hat filtresi.

Ön Koşul

Compass tarafında ilgili sorgular :global_var_name formatında global variable kullanmalıdır. Compass tarafında bu tanım yoksa global filtre paneli boş gelir.

Compass — Genel BakışBoard Oluşturma


1. Global Variable Tanımı (Compass)

Compass sorgusunda parametre tanımı şu şekildedir:

SELECT
    saat,
    SUM(uretim_adet) AS adet
FROM uretim_log
WHERE
    saat BETWEEN :baslangic AND :bitis
    AND tesis_id = :tesis
GROUP BY saat
ORDER BY saat

Burada :baslangic, :bitis ve :tesis global variable'lardır. Compass tarafında her variable için tip (text/number/date), default, liste değerleri tanımlanır.

→ Compass'ta global variable kullanımı için: Compass


2. Board Toolbar — Global Filter Butonu

Horizon board üst barında Global Filter butonu (üzerinde "GF" rozet) bulunur. Tıkladığınızda board canvas'ının üst tarafında Global Filter Panel açılır.

Global Filter butonu — board toolbar


3. Global Filter Panel İçeriği

Panel, board'da kullanılan tüm widget'ların Compass sorgularındaki birleşim kümesini gösterir. Yani:

  • Widget A'nın sorgusunda :baslangic, :bitis varsa
  • Widget B'nın sorgusunda :baslangic, :tesis varsa
  • Panel :baslangic + :bitis + :tesis olarak 3 alan gösterir
Alan Tipi Görsel
Date / DateTime Date picker
Number Sayısal input
Text Text input
List Dropdown (Compass'ta tanımlı seçenekler)

4. Filtre Uygulama

Bir veya birden fazla alanı doldurup Apply butonuna tıklayın.

Davranış
Tüm widget'lar yeni değerlerle yeniden sorgulanır
O global variable'ı kullanmayan widget'lar etkilenmez
Default değer set edilmişse alan boş bırakıldığında default kullanılır
Reset butonu tüm değerleri default'a döndürür

5. Default Değerler

Compass'ta her global variable için bir default tanımlanmıştır. Board ilk açıldığında bu default değer kullanılır. Default tanımı yoksa widget veri çekmez ve "Missing parameter: " hatası gösterir.

Tarih Defaultları

Tarih aralığı parametreleri için Compass'ta now() - interval '24 hours' gibi dinamik defaultlar tanımlayın. Board her açılışta son 24 saatlik veriyi göstermiş olur.


6. Filtre Persistansı

Davranış Sonuç
Filtreyi değiştirip Apply Sadece o oturumda geçerli
Sayfa yenile (F5) Default değerlere döner
Board kaydedildiğinde son filtre değerleri persist edilmez

Default Üzerinde Çalışın

Sık kullanılan değer aralıklarını Compass'ta default olarak tanımlamak en doğrusudur; her açılışta manuel girmek zorunda kalmazsınız.


7. Çakışan Tip Tanımları

Aynı global variable adının iki farklı widget'ta farklı tipte tanımlandığı durumda (örn. :tarih bir widget'ta date, başka widget'ta text) panel ilk gördüğü tip için tek bir alan açar. Bu durum genellikle Compass'ta tutarsız sorgu yazımından kaynaklanır.

Tutarlı İsimlendirme

Bir global variable'ı tüm sorgularda aynı ad ve aynı tip ile kullanın. Tesis1'de :baslangic, Tesis2'de :start_date yerine her ikisinde de :baslangic.


8. Sık Karşılaşılan Hatalar

Belirti Olası Neden Çözüm
Panel boş Hiçbir widget global variable kullanmıyor Compass'ta sorgulara :variable ekleyin
"Missing parameter" hatası Default tanımlı değil ve değer girilmedi Compass'ta default belirleyin veya panelde değer girin
Apply çalışmıyor Aynı isimde iki farklı tip Compass tanımlarını standardize edin

9. Sonraki Adım

Kaptan AI