Ver Mensaje Individual
  #1  
Antiguo 20-07-2006
MsYo MsYo is offline
Registrado
 
Registrado: jul 2006
Posts: 3
Reputación: 0
MsYo Va por buen camino
casting Composite Report: error al imprimir

Hola,
estoy desarrollando una función que, a groso modo es como sigue:

function Previsualizar (informe: TObject; ............);



var
CReport: TTQRCompositeReport;
QReport: TQuickRep;
tipo: integer;



begin
if (informe.ClassName = TQRCompositeReport.ClassName) then



begin
tipo := 0;
CReport := TQRCompositeReport (informe);



end else
if (informe.ClassName = TQuickRep.ClassName) then



begin
tipo := 1;
QReport := TQuickRep (informe);



end;

case tipo of
0: CReport.Preview;
1: QReport.Preview;
end;



end;

(No hago el casting de la forma "informe as TQRCompositeReport" ya que salta una excepción del tipo: "invalid class typecast".)

El problema es el siguiente: el preview se realiza correctamente, pero cuando se pulsa el botón de Imprimir, casi siempre (aunque no siempre, lo cual es muy extraño) sale una ventana de error aludiendo a la DLL en la que tengo la función y no se puede imprimir. Pero no sé por donde atacar, ya que el botón de imprimir y su evento es interno al previsualizador del composite.

Si alguien ha tenido algún problema similar o puede darme informacion útil se lo agradeceré.
Responder Con Cita