Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-01-2004
Hallenbeck Hallenbeck is offline
Miembro
 
Registrado: ago 2003
Posts: 14
Poder: 0
Hallenbeck Va por buen camino
Angry Problemas al cerrar quickreport con la X !!

Hola!!, este problema, basicamente, lo he visto en el foro pero no con esta variante. He conseguido que cuando se cierra el quickreport con el boton Close que incorpora se me cierra todo estupendamente, peeeeeeero si se le da al boton de cerrar estandar de windows, la X de la esquina derecha de todos los formularios, ME DAN TODO TIPO DE ERRORES.

Es un quickreport que saco a pelo, sin meter dentro de ningun form, los datos los obtengo de una IBquery, los listados que saco pueden tener cienes y cienes de paginas, facilmente. Utilizo Delphi 6 y por si acaso me he actualizado a la version 3.5.1 de Quickreport, pero nada.


Paso a describir como tengo estructurado el listado:

informe.IBqryListados.Prepare;
informe.IBqryListados.Open;
informe.IBqryListados.FetchAll;

if imprimir = True then
informe.Print
else
informe.PreviewModal;

informe.IBqryListados.Close;
informe.IBqryListados.UnPrepare;
application.ProcessMessages;
informe.Free;
Close;


Por que el resultado es distinto si se le da a Close o a la X ? Como podria evitar los Access Violation ?

Gracias
Responder Con Cita
  #2  
Antiguo 30-01-2004
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 21
Gydba Va por buen camino
No estoy del todo lúcido así que es muy probable que esté equivocado, pero ¿no estas haciendo un free y luego un close verdad?

Lo mejor en este caso es ejecutar línea por línea para ver en que parte te tira el error.
__________________
Suerte
.: Gydba :.
Responder Con Cita
  #3  
Antiguo 30-01-2004
Hallenbeck Hallenbeck is offline
Miembro
 
Registrado: ago 2003
Posts: 14
Poder: 0
Hallenbeck Va por buen camino
Post

Gracias por responder, pero no, el close que se ve al final es el que cierra un formulario donde se filtran los datos que llevará el quickreport y que es el que llama al quickreport. He seguido la ejecucion paso a paso pero el error me lo da al final, cuando termina la ejecucion...
Responder Con Cita
  #4  
Antiguo 30-01-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Has actualizado tu versión de Quick Report.... el que venía con Delphi3 y con Delphi4 solia tener algunos bugs...

http://www.qusoft.com/

Si no haces nada raro.. como aseguras, pue'que con eso se arregle.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #5  
Antiguo 30-01-2004
Hallenbeck Hallenbeck is offline
Miembro
 
Registrado: ago 2003
Posts: 14
Poder: 0
Hallenbeck Va por buen camino
Si, como ya he dicho antes, tenia delphi 6 con quickreport 3.0 y actualicé a 3.5 pero sigue fallando
Responder Con Cita
  #6  
Antiguo 30-01-2004
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
Yo hago esto que sigue y nunca me hada ningún tipo de problema.
Código:
procedure TfrLstAgenda.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Application.ProcessMessages;
FreeAndNil(ListaAgenda);
Action:=CaFree;
end;


procedure TfrConAgenda.SpVpreviaClick(Sender: TObject);
begin
Application.CreateForm(TfrlstAgenda, frlstAgenda);
frlstAgenda.listaAgenda.Preview;
frlstAgenda.Close;
end;
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
  #7  
Antiguo 31-01-2004
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 21
Gydba Va por buen camino
Justamente pensaba en un close como el que plantea marcoszorrilla, pero se me adelantó

Deberías revisar bien el código, me parece que el problema viene dado por una clase que o bien fue liberada o nunca se instanció y se hace referencia.

Lo extraño es eso de que ejecutando un close te anda perfecto
__________________
Suerte
.: Gydba :.
Responder Con Cita
Respuesta



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 21:10:24.


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