PDA

Ver la Versión Completa : QuickReport2.BeforePrint


chozas
18-07-2006, 20:33:46
Uso QuickReport2 para sacar unos informes los cuales por las características propias de los mismos tardan mucho al visualizarlos. Pero debido a la gran cantidad de código que tengo en el BeforePrint también tardan cuando lo lanzo a la impresora. Esto es porque este evento se lanza tanto al previsualizar como al imprimir. Mi objetivo es que no vuelva a crear el informe cuando lo voy a imprimir, con una variable bandera he podido hacer que al imprimir no ejecute este evento pero he leido que en posteriores versiones a la 2 del QuickReport existe una variable PrintMetafileFromPreview := true ( set the global flag PrintMetafileFromPreview := true;
before the report runs. For instance in the BeforePrint event of the report. This should give identical pagination and be quicker in execution.), entonces me gustaría saber si esta bandera actua de la misma forma ó sería conveniente actuar de otra madera. Las pruebas que he echo aparentemente funcionan pero no estoy muy seguro.

Ejemplo de código:

implementation

{$R *.DFM}

var
entra : boolean = false;

procedure TQuickReport2.QuickRepBeforePrint(Sender: TCustomQuickRep;
var PrintReport: Boolean);
begin

if entra then exit; //solo entra en el preview y no al imprimir.
entra:=true;
...

end;