Sub..end sub
sub..end sub kontrol deyimi, bir call deyimiyle çağrılabilecek bir alt aşama tanımlar.
Söz Dizimi:
Sub name [ ( paramlist )] statements end sub
Bağımsız değişkenler alt rutine kopyalanır ve call deyiminde karşılık gelen asıl parametre değişken adıysa, alt rutinden çıktıktan sonra tekrar dışarı kopyalanır.
Bir alt rutinin call deyimi ile aktarılan asıl parametrelerden daha fazla biçimsel parametresi varsa, ekstra parametreler NULL olarak başlatılır ve alt rutin içerisinde yerel değişken olarak kullanılabilir.
sub deyimi bir kontrol ifadesi olduğundan ve bu nedenle noktalı virgülle veya satır sonuyla bittiğinden, iki olası cümlesinin her biri (sub ve end sub) satır sınırını geçmemelidir.
Bağımsız Değişkenler:
Bağımsız Değişken | Açıklama |
---|---|
name | Alt rutinin adı. |
paramlist | Alt rutinin biçimsel parametreleri için değişken adlarının virgülle ayrılmış listesi. Bunlar alt rutin içinde herhangi bir değişken gibi kullanılabilir. |
statements | Bir veya daha fazla QlikView kod deyiminden oluşan herhangi bir grup. |
Örnek 1:
Sub INCR (I,J)
I = I + 1
Exit Sub when I < 10
J = J + 1
End Sub
Call INCR (X,Y)
Örnek 2: - parametre aktarımı
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)
Yukarıdakilerin sonucunda yerel olarak, alt rutinin içinde, A 1 olarak başlatılır, B 4 olarak başlatılır ve C de NULL olarak başlatılır.
Alt rutinden çıkarken, A genel değişkeni değer olarak 2'yi alır (alt rutinden geri kopyalanır). İkinci gerçek parametre olan “(X+1)*2” bir değişken olmadığından, geri kopyalanmayacaktır. Son olarak, genel değişken C bu alt rutin çağrısından etkilenmez.