Accéder au contenu principal Passer au contenu complémentaire

Sub..end sub

L'instruction de contrôle sub..end sub définit une sous-routine qui peut être appelée à partir d'une instruction call.

 

Sub name [ ( paramlist )] statements end sub

 

Les arguments sont copiés dans la sous-routine et, si les paramètres réels correspondants de l'instruction call constituent un nom de variable, ils sont recopiés et supprimés à la fermeture de la sous-routine.

Si une sous-routine comporte plus de paramètres formels que ceux réellement transmis par une instruction call, les paramètres supplémentaires sont initialisés sur la valeur NULL et peuvent être utilisés comme variables locales dans la sous-routine.

Comme l'instruction sub est une instruction de contrôle et, en tant que telle, se termine par un point-virgule ou une fin de ligne, aucune de ses deux clauses possibles (sub et end sub) ne peut s'étendre sur plusieurs lignes.

 

Arguments Sub
Argument Description
name Nom de la sous-routine.
paramlist Liste de noms de variables séparés par des virgules et définissant les paramètres formels de la sous-routine. Ceux-ci peuvent être utilisés comme n'importe quelle variable au sein de la sous-routine.
statements Tout groupe d'une ou plusieurs instructions de script QlikView.

 

Sub INCR (I,J)

I = I + 1

Exit Sub when I < 10

J = J + 1

End Sub

Call INCR (X,Y)

- transfert de paramètres

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)

Le résultat de l'exemple ci-dessus est que, localement, au sein de la sous-routine, A sera initialisé sur 1, B sur 4 et C sur NULL.

Au moment de quitter la sous-routine, la variable globale A obtiendra la valeur 2 (recopiée à partir de la sous-routine). Le deuxième paramètre réel (X+1)*2 ne sera pas recopié, car il ne s'agit pas d'une variable. Enfin, la variable globale C ne sera pas affectée par l'appel de sous-routine.

En savoir plus

 

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !

Rejoignez le Programme de modernisation analytique

Remove banner from view

Modernisez votre système sans compromettre vos précieuses applications QlikView grâce au Programme de modernisation analytique. Cliquez ici pour plus d'informations ou contactez : ampquestions@qlik.com