Page 1 of 1

Asignar valores x puntero de variable

Posted: Mon Jul 26, 2021 6:15 pm
by cladron
Buenos días foro. Se puede hacer esto?. El objetivo es pasar variables en forma de array a una función, y que los cambios en el array se reflejen en las variables. Ya Probé Proceso({@a,@b,@c}) y no funciona.

Se agradece cualquier ayuda

a:="Primero"
b:="Segundo"
c:="Tercero

Proceso({a,b,c})
? a,b,c, // first, second, third

Function Proceso (ar)
ar[1]:="First"
ar[2]:="Second"
ar[3]:="Third"
Return NIL

Re: Asignar valores x puntero de variable

Posted: Mon Jul 26, 2021 6:18 pm
by Carles
Hola,

Function( @aData )

C.

Re: Asignar valores x puntero de variable

Posted: Tue Jul 27, 2021 2:46 am
by cladron
Carles wrote:Hola,

Function( @aData )

C.


Gracias Carles, pero funciona cuando quiero pasar un array como parámetro; a lo que me refiero es que el origen se trate de variables independientes como "cCodigo", "cNombre" ó "dFecha"; hablo de pasarlos en la forma de array {cCodigo,cNombre,dFecha} para poder pasar una cantidad variable e ilimitada de parámetros, de modo que dentro de la función los cambios en los elementos del array sean cambios en cada una de las variables independientes. Crees que se puede?

Gracias nuevamente

Re: Asignar valores x puntero de variable

Posted: Tue Jul 27, 2021 5:49 am
by Verhoven
Has pensado en probar a usar un hash?

Re: Asignar valores x puntero de variable

Posted: Tue Jul 27, 2021 10:28 pm
by leandro
Una idea

Code: Select all | Expand


Local hLinea := hash()
hLinea["iditem"] := 0
hLinea["descripcion"] := "la descripción"
hLinea["valor"] := 150000
hLinea["estado"] := "N"
pasoa(hLinea)