Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-07-2003
susje susje is offline
Miembro
 
Registrado: jul 2003
Posts: 11
Poder: 0
susje Va por buen camino
Angry Bde Delphi

Buenas.
Tengo un problema con una aplicacion que he desarrollado en delphi, es mi primer programa en este lenguaje y la verdad es que me esta dando muhco quebraderos de cabeza.
Yo me conecto al una Base de Datos en Interbase 3 con el BDE de Delphi, obetengo la informacion a traqves de consultas SQLy la almaceno con objetos ADO en una Base de Datos Oracle. No se si es ppor los tiempos de respuestas del BDE o no se que pero la maquina empieza aumentar de memoria y al final me dal el error "out of memory". Yo cierro elimino los objetos con el ".free" y ya no se lo que puede estar pasando. La verdad es que la aplicacion hace muchas consultas e insercciones.
Me haría falta que alguien me pudiera asesorar un poco por donde puede ir el problema.

Muchas Gracias.
Responder Con Cita
  #2  
Antiguo 12-07-2003
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Hola.

Ese fallo es muy normal, lo único que puedes hacer es un .log grabando en un fichero de texto por donde va pasando el programa por ejemplo algo así como:

11:37:04 >>> Consultando el saldo para el cliente X
11:37:04 >>> saldos para el cliente X recibido del servidor
11:37:04 >>> visualizando el saldo en el DBGrid

primero hazlo a groso modo en las funciones mas relevantes y cuando veas por donde se va quedando pillado, pones mas trazas para acotar el error.

una vez que lo tengas localizado el error, pon el código por aqui para que le echemos una visual

Saludos y buena suerte
Responder Con Cita
  #3  
Antiguo 12-07-2003
susje susje is offline
Miembro
 
Registrado: jul 2003
Posts: 11
Poder: 0
susje Va por buen camino
Post

Gracias LEPE por tu respuesta, pero lo que ocurrer es lo siguiente:

Si yo tengo una consulta principal que obtiene todas la ventas de un dia y luego tengo subconsultas para cada producto que me ha devuleto la select principal. Estas subconsultas las he introducido en procedimientos y todo esta en un bucle hasta que sea EOF la consulta principal.

La cosa es que falla ("out of memory") cuando el programa lleva un progeso +- del 70 %.

¿Me aconsejas que haga eso?

Gracias.
Responder Con Cita
  #4  
Antiguo 17-07-2003
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
¿ Se te ocurre otra forma de localizar el fallo ?



Supongo que has utilizado estructuras del tipo

objeto.create
try

....
finally
objeto.free
end;

¿ verdad ?

Y otra cosa, La filosofia que usas es buena, pero sin ver código no creo que te podamos resolver tu duda.

Unicamente se me ocurre preguntarte si los productos que te devuelve la select principal son todos distintos o se pueden repetir;

si se repiten, o sea, si puede venir el mismo producto 400 veces en el select principal, yo lo guardaria para no tener que hacer 400 subconsultas.

saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 23:56:29.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi