Freigeben über


PARAMETERS( )-Funktion

Gibt die Anzahl der Parameter zurück, die an das zuletzt aufgerufene Programm, die Prozedur oder benutzerdefinierte Funktion übergeben wurden.

PARAMETERS( )

Rückgabewerte

Numerisch

Hinweise

Mit PARAMETERS( ) kann die Anzahl der Parameter ermittelt werden, die an ein Programm, eine Prozedur oder eine benutzerdefinierte Funktion übergeben werden.

Anmerkung   Der von PARAMETERS( ) zurückgegebene Wert wird jedes Mal zurückgesetzt, wenn ein Programm, eine Prozedur oder eine benutzerdefinierte Funktion aufgerufen oder wenn ON KEY LABEL ausgeführt wird. Im Gegensatz zu PARAMETERS( ) wird die PCOUNT( )-Funktion nicht zurückgesetzt, deshalb ist PCOUNT( ) möglicherweise in den meisten Programmierumgebungen zu bevorzugen.

Beispiele

Beispiel 1 ruft eine Prozedur auf und zeigt in einem Wartefenster die Anzahl der übergebenen Parameter an.

Beispiel 2 zeigt mit einer Prozedur den Durchschnitt von 4 Werten an.

* Example 1
DO testpar WITH 1,2,3

PROCEDURE testpar
PARAMETERS gn1,gn2,gn3
gcMessage = 'PARAMETERS( ) ='+ALLTRIM(STR(PARAMETERS( )))
WAIT WINDOW (gcMessage)
RETURN

* Example 2
SET TALK OFF
gnVal1 = 10
gnVal2 = 20
gnVal3 = 30
gnVal4 = 15
gnMin = getavg(gnVal1, gnVal2, gnVal3, gnVal4)
? 'Average value is '
?? gnMin

* This user-defined function permits up to 9 parameters to be passed.
* It uses the PARAMETERS( ) function to determine how many
* were passed and returns the average value.

FUNCTION getavg
PARAMETERS gnPara1,gnPara2,gnPara3,gnPara4,gnPara5, ;
   gnPara6,gnPara7,gnPara8,gnPara9
IF PARAMETERS( ) = 0
   RETURN 0
ENDIF
gnResult = 0
FOR gnCount = 1 to PARAMETERS( )
   gcCompare = 'gnPara' +(STR(gnCount,1))
   gnResult = gnResult + EVAL(gcCompare)
ENDFOR
gnResult = gnResult / (gnCount - 1)
RETURN gnResult

Siehe auch

DO | FUNCTION | LPARAMETERS | LOCAL | PARAMETERS | PCOUNT( )-Funktion | PRIVATE | PROCEDURE | PUBLIC | SET UDFPARMS