es posible pasar un array como parametro a funciones de formulario?

726 views
Skip to first unread message

carlosmupe

unread,
Oct 3, 2017, 2:42:04 PM10/3/17
to Comunidad de Visual Foxpro en Español
hola estimados, tengo el siguiente tema estoy tratando de pasar un array como parametro a una funcion o metodo de formulario, pero lo que recibo en el metodo es un string no el array.

ej:

LOCAL ARRAY L_ArrayElementos(1)
ALINES(L_ArrayElementos,L_laLinea,";")

if thisform.chequear(L_ArrayElementos)
  ....
endif


*metodo de formulario 
chequear
lparameters L_array

if L_array[1]<>l_array[20] then
else
endif
..
...
...


el parametro local L_array no es un arreglo es un string con un dato del arreglo y no quiero pasar parametro a parametro pense en que podria pasar el array completo. es posible?

saludos




Ing. Bernardo José Martínez Pérez

unread,
Oct 3, 2017, 2:44:57 PM10/3/17
to publice...@googlegroups.com
Ponle @nombredelarray para pasarlo

Saludos


From: publice...@googlegroups.com <publice...@googlegroups.com> on behalf of carlosmupe <carlo...@gmail.com>
Sent: Tuesday, October 3, 2017 1:42:04 PM
To: Comunidad de Visual Foxpro en Español
Subject: [vfp] es posible pasar un array como parametro a funciones de formulario?
 

Tomás Agustín Cruz

unread,
Oct 3, 2017, 2:56:16 PM10/3/17
to Comunidad de Visual Foxpro en Español
HOla Carlos!
Lo que podrias hacer es pasar un objeto por parámetro.

Por ejemplo:
local oParametro 
oParametro.AddProperty("IdArticulo",123)
oParametro.AddProperty("NombreArticulo","Articulo 1")


RETURN (oParametro)

En el método que lo recibe
Metodo_Chequear
LParameters oParametroRecibido

if vartype(oParametroRecibido) <> 'O'
    * No se recibió un  objeto, colocar código de validación
endif 

?oParametroRecibido.IdArticulo
?oParametroRecibido.NombreArticulo


Trabajar con objetos, tiene muchas ventajas, podrías a futuro sacarle más el jugo.

Espero te sirva!

Saludos desde
Córdoba, Argentina

Tomás Cruz
"...conoceréis la verdad, y la verdad os hará libres..."

Claudio Rivadera

unread,
Oct 3, 2017, 4:34:54 PM10/3/17
to Comunidad de Visual Foxpro en Español

Si es posible
usando el comando SET PARAMETERS TO
mira aquí
http://fox.wikis.com/wc.dll?Wiki~ParametersByValueOrReference

carlosmupe

unread,
Oct 4, 2017, 5:02:50 PM10/4/17
to Comunidad de Visual Foxpro en Español
gracias estimados, efectivamente con @ en el envio permite pasar el array.

saludos y gracias

Fidel Charny

unread,
Oct 4, 2017, 6:40:55 PM10/4/17
to Comunidad de Visual Foxpro en Español
Para evitar errores molestos a la hora de compilar, conviene lo siguiente
* chequear
LPARAMETERS taArray
EXTERNAL ARRAY taArray

* Control de parámetros
IF TYPE
("taArray",1)="A"
       
* Proceso con el array

ENDIF




carlosmupe

unread,
Oct 5, 2017, 8:46:05 AM10/5/17
to Comunidad de Visual Foxpro en Español
Gracias Fidel lo tendré en consideración.
Reply all
Reply to author
Forward
0 new messages