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

Sub..end sub

Kontrollsatsen sub..end sub definierar en subrutin som kan anropas från en call-sats.

Syntax:  

Sub name [ ( paramlist )] statements end sub

 

Argument kopieras in i subrutinen. Om motsvarande faktiska parameter i call-satsen är ett variabelnamn, kopieras de dessutom tillbaka ut igen när subrutinen avslutas.

Om en underordnad rutin har fler formella parametrar än antalet faktiska parametrar som skickas från en call-sats, initialiseras de extra parametrarna till NULL och kan användas som lokala variabler inom den underordnade rutinen.

Eftersom sub-satsen är en kontrollsats, och som sådan slutar med ett semikolon eller radslut, måste var och en av dess två möjliga komponenter (sub och end sub) rymmas på en egen rad i skriptet.

Argument:  

Sub-argument
Argument Beskrivning
name Subrutinens namn.
paramlist En kommaavgränsad lista över variabelnamn för den underordnade rutinens formella parametrar. Dessa kan användas som valfri variabel inuti subrutinen.
statements Valfri grupp av en eller flera QlikView-skriptsatser.

Exempel 1:  

Sub INCR (I,J)

I = I + 1

Exit Sub when I < 10

J = J + 1

End Sub

Call INCR (X,Y)

Exempel 2: - parameteröverföring

Sub ParTrans (A,B,C)

A=A+1

B=B+1

C=C+1

End Sub

A=1

X=1

C=1

Call ParTrans (A, (X+1)*2)

Resultatet av exemplet ovan blir följande (lokalt, inuti subrutinen): A initialiseras till 1, B initialiseras till 4 och C initialiseras till NULL.

När man lämnar subrutinen får den globala variabeln A värdet 2 (kopieras tillbaka från subrutinen). Den andra faktiska parametern “(X+1)*2” kopieras inte tillbaka eftersom den inte är någon variabel. Slutligen påverkas den globala variabeln C inte av subrutinens anrop.

Mer information

 

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

Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!

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