PARAMETERS-Befehl
Weist Daten, die von einem aufrufenden Programm übergeben wurden, privaten Variablen oder Arrays zu.
PARAMETERS Parameter1 [AS type [OF ClassLib]] [, Parameter2 [AS type [OF ClassLib]]]
Parameter
ParameterList
Gibt die Namen der Variablen oder Arrays an, denen die Daten zugewiesen werden.Die Parameter in ParameterList werden durch Kommas getrennt. In der Anweisung PARAMETERS müssen sich mindestens genauso viele Parameter befinden wie in der Anweisung DO ... WITH. Sind mehr Variablen oder Arrays in der PARAMETERS-Anweisung enthalten, als mit DO ... WITH übergeben wurden, werden die verbliebenen Variablen oder Arrays mit Falsch (.F.) initialisiert. Sie können maximal 27 Parameter übergeben.
PARAMETERS( ) gibt die Anzahl der Parameter zurück, die an die zuletzt ausgeführte Routine übergeben wurden.
AS type
Gibt den Datentyp an, auf dem die Variable basiert.OF ClassLib
Gibt die Klassenbibliothek an, die die Typbeschreibung enthält, auf der das type-Element der Variablen basiert.
Hinweise
Umfasst ParameterList mehrere Elemente, werden diese durch Kommas getrennt. Wenn PARAMETERS zusammen mit DO ... WITH verwendet wird, muss es sich dabei um die erste ausführbare Anweisung im aufgerufenen Programm, der Prozedur oder benutzerdefinierten Funktion handeln.
Standardmäßig übergibt DO ... WITH Variablen und Arrays als Verweis an Prozeduren. Wenn im aufgerufenen Programm ein Wert geändert wird, wird der neue Wert zur zugehörigen Variablen des aufrufenden Programms zurückübertragen. Wenn Sie eine Variable oder ein Array als Wert übergeben möchten, geben Sie die Variable bzw. das Array in der DO ... WITH-Parameterliste in Klammern an. Änderungen in den Parametern des aufgerufenen Programms werden anschließend nicht zum aufrufenden Programm zurückübertragen.
Variablen werden standardmäßig als Verweis an eine Prozedur und als Wert an eine benutzerdefinierte Funktion übergeben. Mit SET UDFPARMS TO REFERENCE können Sie Variablen als Verweis an eine Prozedur oder benutzerdefinierte Funktion übergeben.
Die für den CodeSense-Parser in IntelliSense erforderliche Eingabe mit festgelegtem Datentyp ist nur verfügbar, wenn Sie mit festgelegtem Datentyp eingegebene Verweise auf Objekte und Variablen mit der optionalen AS-Klausel erstellen.
Beispiel
Im folgenden Beispiel werden Parameter an eine Fehlerbehandlungsroutine übergeben.
ON ERROR DO errhand WITH ERROR( ), MESSAGE( ), ;
MESSAGE(1),PROGRAM( ),LINENO( )
USE nodatabase
ON ERROR && restores system error-handling routine
PROCEDURE errhand
PARAMETERS gnError, gcMess, gnMess1, gcProg, gnLineNo
? 'Error number: ' + LTRIM(STR(gnError))
? 'Error message: ' + gcMess
? 'Line of code with error: ' + gnMess1
? 'Line number of error: '+ LTRIM(STR(gnLineNo))
? 'Program with error: ' + gcProg
Siehe auch
PCOUNT( )-Funktion | DO | LOCAL | LPARAMETERS | PARAMETERS( )-Funktion | PRIVATE | PUBLIC | SET UDFPARMS