Gå till huvudinnehåll Gå till ytterligare innehåll

Intern makrotolk

QlikView-objekt är åtkomliga via Automation inifrån QlikView genom den inbyggda skriptmotorn.

Anropa makron

Makron som skrivs i VBScript eller JScript inuti ett QlikView-dokument kan anropas på flera sätt:

Dokumenthändelser:

  • Ett makro kan köras efter att ett QlikView-dokument öppnats.
  • Ett makro kan köras när skriptet har laddats om.
  • Ett makro kan köras efter kommandot Reducera data.
  • Ett makro kan köras efter val i valfritt fält i dokumentet.
  • Ett makro kan köras när ett variabelvärde ändras i dokumentet.

Makron som anropas från dokumenthändelser skapas från sidan Dokumentegenskaper: Triggers.

Arkhändelser:

  • Ett makro kan köras efter att ett ark aktiverats.
  • Ett makro kan köras när ett ark lämnas.

Makron som anropas från arkhändelser skapas från sidan Arkegenskaper: Triggers.

Arkobjekthändelser:

  • Ett makro kan köras efter att ett arkobjekt aktiverats.
  • Ett makro kan köras när ett arkobjekt lämnas.

Makron som anropas från arkobjekt skapas från sidan Arkegenskaper: Triggers.

Knapphändelser:

  • En knapp kan definieras som en makroknapp.

Makron som anropas från makroknapphändelser skapas från knappens Aktiviteter-sida.

Fälthändelser:

  • Ett makro kan köras när ett val gjorts i ett specifikt fält.
  • Ett makro kan köras när ett val görs i fält som är logiskt kopplat till ett specifikt fält.
  • Ett makro kan köras när val låses i ett specifikt fält.
  • Ett makro kan köras när val låses upp i ett specifikt fält.

Makron som anropas från fälthändelser skapas från sidan Dokumentegenskaper: Triggers.

Variabelhändelser:

  • Ett makro kan köras när nya värden anges i specifika variabler.
  • Makrot kan köras när den valda variabelns värde ändras p.g.a. förändringar i andra variabler eller dokumentets logiska status.

Makron som anropas från variabelhändelser skapas från sidan Dokumentegenskaper: Triggers.

Makroredigerare:

Oberoende av hur de utlöses skapas och redigeras makron i dialogen Redigera makron.

Exempel:  

I detta avsnitt ges ett exempel på ett VBScript-makro som kan vara användbart.

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

Speciella biblioteksfunktioner för JScript

Funktionerna InputBox och MsgBox i standard-VBScript kan användas fritt i VBScript-makron. Det finns inte någon direkt motsvarighet till dessa funktioner i JScript. Därför har ett särskilt qvlib-bibliotek skapats. Funktionerna visas i exemplet nedan.

// JScript

function Test()

{

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

msg = "Hello " + personName + " !"

qvlib.MsgBox(msg)

}

I exemplet nedan visas att qvlib-funktionerna fungerar även i VBScript-makron, men i detta fall går det lika bra att använda de generiska VBScript-funktionerna InputBox och MsgBox.

rem VBScript

sub TestModule

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

msg = "Hello "

msg = msg + name + " !"

qvlib.MsgBox(msg)

end sub

Var den här sidan till hjälp för dig?

Om du stöter på några problem med den här sidan eller innehållet på den, t.ex. ett stavfel, ett saknat steg eller ett tekniskt fel – meddela oss!

Gå med i programmet Analytics Modernization

Remove banner from view

Modernisera utan att kompromissa med dina värdefulla QlikView-appar med programmet för analysmodernisering. Klicka här för mer information eller ta kontakt: ampquestions@qlik.com