Discussion:
Retornar Arrray desde Formulario
(demasiado antiguo para responder)
Mario
2008-12-16 12:45:31 UTC
Permalink
Estimados amigos:
Lo que deseo hacer es retornar un array desde un formulario, algo así:
Do form Miform With Miparametro To Miarray
Todo funciona "casi" bien, se genera el array, se carga de datos, pero
el retorno no es un array.
Saludos y gracias.
Jorge Méndez.
2008-12-16 14:00:48 UTC
Permalink
Hola!
Post by Mario
Do form Miform With Miparametro To Miarray
Todo funciona "casi" bien, se genera el array, se carga de datos, pero
el retorno no es un array.
Es que cuando en el unload pones:

Return ArrayDeLaForm

Estás haciendo referencia sólo al primer elemento del array, que es lo
que se mete en la variable MiArray.

No sé si hay algún truco para devolver un array por este medio, me da
que no, en cualquier caso yo no lo conozco.

Lo que yo hacía era devolver un objeto con una propiedad de tipo array,
y desde que tenemos collections, devuelvo un objeto de clase collection.

Un saludito!
Jorge.
Esparta Palma
2008-12-17 04:45:06 UTC
Permalink
Post by Mario
Do form Miform With Miparametro To Miarray
Todo funciona "casi" bien, se genera el array, se carga de datos, pero
el retorno no es un array.
Saludos y gracias.
Puedes mejor retornar un objeto, da menos problemas y será mas dinámico ;-)
Guillermo
2008-12-17 14:34:45 UTC
Permalink
Puedes agregar un array al objeto _Screen en tu programa principal y le
podes cambiar los valores desde cualquier formulario dentro de tu
aplicacion:
_Screen.AddProperty('TuArray(10)',"AlgunDato")

Guillermo
Mar del Plata, Argentina
Post by Esparta Palma
Post by Mario
Do form Miform With Miparametro To Miarray
Todo funciona "casi" bien, se genera el array, se carga de datos, pero el
retorno no es un array.
Saludos y gracias.
Puedes mejor retornar un objeto, da menos problemas y será mas dinámico ;-)
Mario
2008-12-17 15:04:23 UTC
Permalink
Post by Guillermo
Puedes agregar un array al objeto _Screen en tu programa principal y le
podes cambiar los valores desde cualquier formulario dentro de tu
_Screen.AddProperty('TuArray(10)',"AlgunDato")
Guillermo
Mar del Plata, Argentina
Post by Esparta Palma
Post by Mario
Do form Miform With Miparametro To Miarray
Todo funciona "casi" bien, se genera el array, se carga de datos, pero el
retorno no es un array.
Saludos y gracias.
Puedes mejor retornar un objeto, da menos problemas y será mas dinámico ;-)
Muchas gracias a todos.
Al final lo resolví creando el array en el formulario "que llama" y lo
redimensioné en el otro. Sabía que podía hacerlo así pero quería
averiguar si era factible retornar el array con el Do Form ... TO.
Disculpen las molestias
Alex
2011-04-04 17:48:32 UTC
Permalink
SI SE PUEDEEEE!!!

Por referencia,
Simplemente antepones el arroba '@' para devolver o enviar una variable, en este caso un arreglo, por referencia.

PROCEUDRE UNLOAD
...
DIMENSION MiArray[10]
...
...
RETURN @MiArray
ENDPROC
Post by Mario
Do form Miform With Miparametro To Miarray
Todo funciona "casi" bien, se genera el array, se carga de datos, pero
el retorno no es un array.
Saludos y gracias.
Post by Jorge Méndez.
Hola!
Return ArrayDeLaForm
Estás haciendo referencia sólo al primer elemento del array, que es lo
que se mete en la variable MiArray.
No sé si hay algún truco para devolver un array por este medio, me da
que no, en cualquier caso yo no lo conozco.
Lo que yo hacía era devolver un objeto con una propiedad de tipo array,
y desde que tenemos collections, devuelvo un objeto de clase collection.
Un saludito!
Jorge.
Post by Esparta Palma
Puedes mejor retornar un objeto, da menos problemas y será mas dinámico ;-)
Post by Guillermo
Puedes agregar un array al objeto _Screen en tu programa principal y le
podes cambiar los valores desde cualquier formulario dentro de tu
_Screen.AddProperty('TuArray(10)',"AlgunDato")
Guillermo
Mar del Plata, Argentina
Post by Mario
Muchas gracias a todos.
Al final lo resolví creando el array en el formulario "que llama" y lo
redimensioné en el otro. Sabía que podía hacerlo así pero quería
averiguar si era factible retornar el array con el Do Form ... TO.
Disculpen las molestias
Loading...