Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
Copy parameters
|
Copy parameters {( inicioDesde )} -> Resultado | ||||||||
Parámetro | Tipo | Descripción | ||||||
inicioDesde | Entero largo |
![]() |
Índice de inicio(incluido) | |||||
Resultado | Collection |
![]() |
Nueva colección que contiene los parámetros pasados realmente | |||||
El comando Copy parameters devuelve una nueva colección que contiene todos los parámetros realmente pasados a un método o una función. Este comando es útil cuando se necesita reenviar un número variado de parámetros de un método o función a otro método o función.
En el parámetro opcional inicioDesde, puede pasar el índice del parámetro desde el que se va a empezar a recoger los parámetros a reenviar. El propio parámetro inicioDesde está incluido.
Cuando se llama dentro de una fórmula, Copy parameters devuelve los parámetros pasados explícitamente utilizando apply() o call() (y no los pasados al método padre o función).
Copy parameters devuelve una colección vacía si:
Llamando a una función diferente dependiendo del primer parámetro y pasando otros parámetros a esta función:
Function selectTask($task Text)
Case of
:($task="Task1")
This.task1(Copy parameters(2))
:($task="Task2")
This.task2(Copy parameters(2))
End case
O, llamando a otra función en otro objeto con apply() y pasar los parámetros:
Function doSomething($param Text;$extraParameters Variant)
This.delegate.doSomething.apply(This.delegate;Copy parameters)
Como el comando devuelve una colección, se puede utilizar con .join() para crear, por ejemplo, una lista html:
// Clase
Function list($typeText)->Text
//tipo de lista es "u" u "o"
var $value : Collection
$value:=Copy parameters(2)
$html:="<"+$type+"l><li>"
$html+=$value.join("</li><li>")
$html+="</li></"+$type+"l>"
return$html
// Método
$htmlList:=$c.list("u";"Alpha";"Bravo";"Charlie")
// $htmlList = <ul><li>Alpha</li><li>Bravo</li><li>Charlie</li></ul>
Producto: 4D
Tema: Lenguaje
Número
1790
Creado por: 4D v19 R5
Manual de lenguaje 4D ( 4D v20 R7)