Dahili Makro Yorumlayıcısı

QlikView nesnelerine otomasyon aracılığıyla QlikView içinden yerleşik kodlama altyapısı ile erişilebilir.

Makroları Çağırma

VBScript veya JScript ile yazılan makrolar, QlikView belgesi içinde birkaç farklı şekilde çağrılabilir:

Belge Olayları:

  • Makro, QlikView belgesi açıldıktan sonra çalıştırılabilir.
  • Makro, kod tekrar yürütüldükten sonra çalıştırılabilir.
  • Makro, Verileri Azalt komutunun ardından çalıştırılabilir.
  • Makro, belgedeki herhangi bir alanda yapılan seçim sonrasında çalıştırılabilir.
  • Makro, belgedeki herhangi bir değişkenin değeri değiştiğinde çalıştırılabilir.

Belge olaylarından çağrılan makrolar, Belge Özellikleri: Tetikleyiciler sayfasından oluşturulur.

Sayfa Olayları:

  • Makro, sayfa etkinleştirildikten sonra çalıştırılabilir.
  • Makro, sayfa devre dışı bırakıldığında çalıştırılabilir.

Sayfa olaylarından çağrılan makrolar, Sayfa Özellikleri: Tetikleyiciler sayfasından oluşturulur.

Sayfa Nesnesi Olayları:

  • Makro, sayfa nesnesi etkinleştirildikten sonra çalıştırılabilir.
  • Makro, sayfa nesnesi devre dışı bırakıldığında çalıştırılabilir.

Sayfa nesnesi olaylarından çağrılan makrolar, Sayfa Özellikleri: Tetikleyiciler sayfasından oluşturulur.

Düğme Olayları:

  • Düğme, makro düğmesi olarak tanımlanabilir.

Makro düğmesinden çağrılan bir makro, düğmenin Eylemler sayfasından oluşturulur.

Alan Olayları:

  • Makrolar, belirtilen bir alanda seçim yapıldığında çalıştırılabilir.
  • Makro, belirtilen alanla mantıksal olarak ilişkilendirilmiş herhangi bir alanda seçim yapıldığında çalıştırılabilir.
  • Makro, belirli alandaki seçimler kilitlendiğinde çalıştırılabilir.
  • Makro, belirli alandaki seçimlerin kilidi kaldırıldığında çalıştırılabilir.

Alan olaylarından çağrılan makrolar, Belge Özellikleri: Tetikleyiciler sayfasından oluşturulur.

Değişken Olayları:

  • Makro, belirtilen kod değişkenine doğrudan yeni değer girildiğinde çalıştırılabilir.
  • Makro, belirli bir değişkenin değeri diğer değişkenlerdeki veya belgenin mantıksal durumundaki değişikliklerin sonucu olarak değiştiğinde çalıştırılabilir.

Değişken olaylarından çağrılan makrolar, Belge Özellikleri: Tetikleyiciler sayfasından oluşturulur.

Makro Düzenleyicisi:

Makrolar, nasıl tetiklendiklerine bakılmaksızın, Modül Düzenle diyalog penceresinde oluşturulabilir ve düzenlenebilir.

Examples:  

Bu bölüm, faydalı olabilecek VBScript makrosunun örneğini sunar.

Using VBScript Input Boxes for User Interaction

rem ** Clear selections, ask for product, **

rem ** select that product, **

rem ** go to sheet "Market", **

rem ** show pivot table "Sales" **

Sub ChooseValue

Set q = ActiveDocument

q.ClearAll (false)

Set f = q.Fields("Model Name")

x = inputbox ("Enter product")

f.Select(x)

set s = q.Sheets("Market")

s.Activate

s.SheetObjects("Sales").Activate

end sub

İçin Özel Kütüphane Fonksiyonları JScript

Standart VBScript fonksiyonları InputBox ve MsgBox, VBScript makrolarında rahatlıkla kullanılabilirken, JScript kullanıldığında bunların doğrudan karşılıkları kullanılabilir durumda değildir. Bu amaçla, bu eylemler için özel kütüphane qvlib eklenmiştir. Fonksiyonlar aşağıdaki örnekte gösterilmiştir.

// JScript

function Test()

{

personName = qvlib.InputBox("What is you name?")

msg = "Hello " + personName + " !"

qvlib.MsgBox(msg)

}

qvlib fonksiyonları aslında, aşağıdaki örnekte gösterildiği gibi VBScript makrolarında da çalışır; ancak bu durumda genel VBScript fonksiyonlarını (InputBox ve MsgBox) da kullanabilirsiniz.

rem VBScript

sub TestModule

name = qvlib.InputBox("What is your name?")

msg = "Hello "

msg = msg + name + " !"

qvlib.MsgBox(msg)

end sub