Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-01-2005
mar65 mar65 is offline
Registrado
 
Registrado: ene 2005
Posts: 6
Poder: 0
mar65 Va por buen camino
error al ejecutar un reporte varias veces

Hola, tengoa una aplicacion en delphi5 con paradox. Tengo un reporte que utiliza un maestro detalle y tengo que imprimirlo varias veces para diferentes personas. Meti la creacion y liberacion del reporte dentro de un do while con la tabla maestro dando un next al final luego pregunto si desean seguir imprimiendo y despues de algunas impresiones, empieza a marcar un erro de que el componente qrstandardpreview ya existe e interrumpe las impresiones, este error lo marca despues del next y nunca es en el mismo numero de impresion.

Gracias

Mar
Responder Con Cita
  #2  
Antiguo 25-01-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Supongo que cierras el formulario en donde está el informe y lo vuelves a abrir, para que se destruyan todos sus componentes?
Código Delphi [-]
 While .....
   Application.CreateFomr(TMiFormReporte, MiFormReporte);
   MiFormReporte.MiReporte.Print;
   MiFormReporte.Close
 
 end:
y en en OnClose del Formulario que contiene el informe:

Código Delphi [-]
 Application.ProccessMessages;
 FreeAndNil(MiReporte);
 Action:=CaFree;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 26-01-2005
mar65 mar65 is offline
Registrado
 
Registrado: ene 2005
Posts: 6
Poder: 0
mar65 Va por buen camino
muchas gracias lo intente pero no resulto, el mensaje que manda es: ' a component named qrstandardpreview already exist' y el codigo es el siguiente:
Código Delphi [-]
   while not tbrecibo.Eof do
   begin
     rec := inttostr(tbrecibo.fieldbyname('n_recibo').asinteger);
     qrrecibo := Tqrrecibo.Create(Application);
     with qrrecibo do
     try
       tbrecibo.open;
       tbrecibo.filter := '(n_recibo=' + chr(39) + rec + chr(39) + ')';
       tbrecibo.filtered := true;
       tbdetallerecibo.open;
       (folio viene de la forma que manda llamar el reporte)
       if folio = 1 then
         qrlfolio.caption := 'RECIBO:  ' + tbrecibo.fieldbyname   ('n_recibo').asstring
       else
         qrlfolio.caption := '';
          preview;
       tbrecibo.close;
       tbdetallerecibo.close;
     finally
         free;
     end;
     tbrecibo.next; (aqui manda el error en cualquier momento)
     if MessageDlg('¿Deseas Seguir Imprimiendo Recibos?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
       folio := 0
     else
       break;
   end;
 


Última edición por marcoszorrilla fecha: 26-01-2005 a las 15:03:51.
Responder Con Cita
  #4  
Antiguo 26-01-2005
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 21
Gydba Va por buen camino
Hola,

Te recomendaría utilizar las etiquetas del club que le hacen la vida más fácil al que lee el mensaje y vive una vida de indetados de códigos

No sé que reporteador estás utilizando ni si le llamás "imprimir" a mostrar una formulario con vista previa por pantalla. Lo cierto es que tenés un problema con la creación de los objetos y su liberación, puesto que si es una vista previa y le hacés un Free te va a estar matando el objeto cada tanto por lo que deberías mover el Try fuera del bucle. Caso contrario la respuesta del amigo Marcos es totolmente adecuada.

Saludos!
__________________
Suerte
.: Gydba :.
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 10:41:05.


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