Call

L'instruction de contrôle call appelle une sous-routine qui doit être définie par une instruction sub précédente.

Syntax:  

Call name ( [ paramlist ])

 

Arguments:  

Argument Description
name Nom de la sous-routine.
paramlist Liste des paramètres à envoyer à la sous-routine, séparés par des virgules. Chaque élément de la liste peut correspondre à un nom de champ, une variable ou une expression arbitraire.

La sous-routine appelée par une instruction call doit être définie auparavant dans l'exécution du script par une instruction sub.

Les paramètres sont copiés dans la sous-routine et, si le paramètre de l'instruction call désigne une variable au lieu d'une expression, il est recopié et supprimé à la fermeture de la sous-routine.

Limitations:  

Comme l'instruction call est une instruction de contrôle et qu'elle se termine donc soit par un point-virgule, soit par un caractère de fin de ligne, elle ne doit pas s'étendre sur plusieurs lignes.

Example 1:  

// Example 1

Sub INCR (I,J)

I = I + 1

Exit Sub when I < 10

J = J + 1

End Sub

Call INCR (X,Y)

 

Example 2:  

// Example 2 - List all QV related files on disk

sub DoDir (Root)

For Each Ext in 'qvw', 'qvo', 'qvs', 'qvt', 'qvd', 'qvc'

For Each File in filelist (Root&'\*.' &Ext)

LOAD

'$(File)' as Name, FileSize( '$(File)' ) as

Size, FileTime( '$(File)' ) as FileTime

autogenerate 1;

Next File

Next Ext

For Each Dir in dirlist (Root&'\*' )

Call DoDir (Dir)

Next Dir

End Sub

Call DoDir ('C:')