Share via


PARAMETERS( ) (Función)

Devuelve el número de parámetros transferidos al procedimiento, al programa o a la función definida por el usuario que se haya llamado más recientemente.

PARAMETERS( )

Valores devueltos

Numeric

Observaciones

PARAMETERS( ) es útil para determinar cuántos parámetros se pasan a un procedimiento, programa o función definida por el usuario.

Nota   Tenga en cuenta que el valor devuelto por PARAMETERS( ) se restablece cada vez que se llama a un programa, un procedimiento o una función definida por el usuario, o se ejecuta ON KEY LABEL. A diferencia de PARAMETERS( ), la función PCOUNT( ) no se restablece, por lo que es preferible usar PCOUNT( ) en la mayoría de las situaciones de programación.

Ejemplos

El ejemplo 1 llama a un procedimiento y muestra en una ventana de espera el número de parámetros pasados.

El ejemplo 2 usa un procedimiento para mostrar el promedio de 4 valores.

* 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

Vea también

DO | FUNCTION | LPARAMETERS | LOCAL | PARAMETERS | PCOUNT( ) (Función) | PRIVATE | PROCEDURE | PUBLIC | SET UDFPARMS