Ver Mensaje Individual
  #7 (permalink)  
Antiguo 07/09/2005, 01:23
belen_lmvc
 
Fecha de Ingreso: septiembre-2005
Mensajes: 5
Antigüedad: 18 años, 8 meses
Puntos: 0
Intento aclarar sentido del código

Hola de nuevo:

Voy a intentar explicar el sentido de estas 2 funciones que he mostrado:

1.- Tengo una clase Dato que como atributos tiene todos los datos personales de las personas en la base de datos y todos los métodos que tiene, nos dan unos u otros datos según necesitemos, en unas u otras condiciones.

2.- La función Recoger datos, obtiene el identificador de todas las personas de la base de datos que cumplen una condición y después por cada uno de estos identificadores construye un array de objetos. Cada objeto contiene todos los datos personales de la persona correspondiente.

Con esto, una vez tengo el recorset con todos los identificadores (éste es el que se pierde en la segunda pasada del while), lo que hacen es crear una instancia por cada identificador y "llenarla" con todos sus datos personales para incluirlo en el array.

Después en otra fase, con este array de objetos se hacen varias cosas como mostrar por pantalla algunos de ellos, usarlos como dato de comparación etc... Pero esto no es caso de estudio porque no falla y lo hace bien.

Creo que con esta explicación ya se puede tener una idea de que sentido tienen estas dos funciones.

De todas formas, tal y como bien dijiste el sistema utilizado de crear una instancia por cada identificador no es muy bueno pero en los otros dos servidores donde está funcionando el sistema, funciona correctamente y en el nuevo servidor es donde de repente se pierde el recorset.

Como tenía que arreglar este error, que en este caso concreto no me permite ver todos los nombres de las personas (sólo veo el primero). Cambié el código para estas dos funciones y así no afectar al resto de la aplicación, para crear una única instancia y llamar únicamente al nuevo método en el bucle while.

Aun con este cambio, la pérdida del recorset perdura y sólo puedo ver el primer nombre de todos los identificadores que tengo.

No se si al final he podido dejar más claro el problema que tengo, pero insisto en que la pérdida del recorset se produce únicamente en uno de los 3 servidores en los que actualmente está instalada la aplicación y eso es lo que me tiene muy mosqueada.

Ya no me extiendo más, un saludo y de nuevo gracias por la ayuda prestada.