Leyendo hace algún tiempo atrás el siguiente link:
http://foro.gambas-es.org/viewtopic.php?f=1&t=1467
se me abrió la cabeza acerca de cómo realizar la aplicación que tengo en mente....
Tal como sugieren en ese link tengo una clase (denominada lote) que tiene los siguientes elementos:
PUBLIC nombre AS String
PUBLIC pcompra AS Float
PUBLIC pventa AS Float
PUBLIC pultimo AS Float
PUBLIC SUB leevalores(xmlnombre AS String, xmlpcompra AS Float, xmlpventa AS Float, xmlpultimo AS Float)
nombre = xmlnombre
pcompra = CFloat(xmlpcompra)
pventa = CFloat(xmlpventa)
pultimo = CFloat(xmlpultimo)
END
PUBLIC pcompra AS Float
PUBLIC pventa AS Float
PUBLIC pultimo AS Float
PUBLIC SUB leevalores(xmlnombre AS String, xmlpcompra AS Float, xmlpventa AS Float, xmlpultimo AS Float)
nombre = xmlnombre
pcompra = CFloat(xmlpcompra)
pventa = CFloat(xmlpventa)
pultimo = CFloat(xmlpultimo)
END
Asimismo tengo un módulo donde creo una NEW collection o bien un NEW object[] (he probado con los dos, pudiendo acceder mediante los index teniendo el mismo problema)...
Pues resulta que leyendo un xml tomo unos atributos que se los paso a un objeto del tipo lote mediante el procedure leevalores.... Todo va bien.
Luego hago un modulo.nombredelobject[].add(objetodetipolote) y obviamente me lo agrega....
El tema es que cuando quiero acceder a los objetos almacenados en el array de objetos (o bien en la collection cuando probé de esa forma) resulta que todos los objetos almacenados tienen el mismo valor: el del último que asigné y guardé....
Es como si todos los objetos que fui guardando... en lugar de dejar guardados el valor que tenían cuando los agregué al object[] fueron actualizando los valores de sus elementos a los nuevos datos que se fueron leyendo del xml....
No se si esto se debe a que estoy declarando mal el ámbito de alguna variable o errando en alguna metodología....
Cualquier idea de acerca de dónde puedo seguir investigando para corregir esto será sumamente agradecida!
Si necesitan algún fragmento de código adicional lo subo sin problemas.
He aprendido mucho leyendo inquietudes de otros, este es el primer post que hago así que todavía no le tengo tomada la mano al sistema para foros, jeje.
Muchas gracias!
Saludos.
Santiago.