PDA

Ver la Versión Completa : Error al momento de Visualizacion


ruedabeat2003
11-01-2008, 20:49:59
Hola a todos, estoy atorado con un error. :confused: Al momento de implementar la visualización de un Quick Report, obtengo un error al momento de ejecutar el evento PreviewModal que esta implementada en QRPrntr:

procedure TQRPrinter.PreviewModal;
begin
if assigned(FOnPreviewEvent) then // Linea marca error.
try
FOnPreviewEvent(Self)
finally
end else
with GlobalPreviewInterface.Create(nil) do
try
ShowModal(Self)
finally
Free;
end;
end;


De antemano gracias por la ayuda. :o

Caral
11-01-2008, 20:53:50
Hola
Perdon, pero para que es ese codigo?
Saludos

jachguate
11-01-2008, 20:54:05
Ajá... y por casualidad ¿cuál será el error que muestra?

jachguate
11-01-2008, 20:55:08
Hola
Perdon, pero para que es ese codigo?
Saludos

Caral: Ese es el código de QuickReports, al que tenes acceso al comprar la versión pro del mismo.

Hasta luego.

;)

ruedabeat2003
11-01-2008, 23:23:36
:) Como comenté, estoy implementando la visualización de un Reporte realizado con Quick Report, no estoy utilizando la visualización que por default hace el propio Quick Report sino que utilizo un forma predeterminada para poder visualizar el Reporte en esta forma(frmVistaPreliminar). Asi que al ejecutar el botón de visualizacion del Reporte se crea y abre la forma y se le indica que la visualización se va a realizar utilizando la forma frmVistaPreliminar. El codigo es este:

// Visualización del Reporte Quick Report.
frmVistaPreliminar := TfrmVistaPreliminar.create(self);
frmVistaPreliminar.QRPreview1.Zoom := 100;
QuickRep2.QRPrinter.PreviewModal;
frmVistaPreliminar.Close;

En el evento OnPreview del Quick report se ejecuta lo siguiente:

procedure TfrmCtaGastos.QuickRep2Preview(Sender: TObject);
begin
//Muestra la vista preliminar del Reporte.
With frmVistaPreliminar do
begin
QRPreview1.QRPrinter := Sender as TQRPrinter;
ShowModal;
end;
end;

El debuger me indica que al momento de la ejecucion del Evento PriviewModal se genera el error:

// Visualiza el Quick Report.
frmVistaPreliminar := TfrmVistaPreliminar.create(self);
frmVistaPreliminar.QRPreview1.Zoom := 100;
--> QuickRep2.QRPrinter.PreviewModal;
frmVistaPreliminar.Close;

procedure TQRPrinter.PreviewModal;
begin
--> if assigned(FOnPreviewEvent) then
try
FOnPreviewEvent(Self)
finally
end else
with GlobalPreviewInterface.Create(nil) do
try
ShowModal(Self)
finally
Free;
end;
end;

El error que se obtiene es el siguiente:

"Access violation at address 0057227F in Module 'CtaGastos.exe' Read of address 0000005A"

Espero haber detallado el error que obtengo, de antemano gracias. ;)

Jab
05-03-2008, 08:42:50
Pienso que no has creado el objeto al que llamas y te da error porque ese objeto no existe.
El objeto QuickRep2 ¿está creado? Verifícalo.

Caso contrario, con el debugger mira que tienes en la memoria en esa dirección, te dará instrucciones en ensamblador pero un poco antes y después te aparecerá el nombre de la función a la que se hace referencia, es posible que sea un evento que se dispara, un campo calculado, uno persistente... etc...

Suerte.

ruedabeat2003
05-03-2008, 16:23:37
Voy a echarle un vistazo al ultimo tip. Gracias.:)