Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Cerrar QuickReport (https://www.clubdelphi.com/foros/showthread.php?t=33952)

chozas 21-07-2006 14:25:24

Cerrar QuickReport
 
Tengo un report en cuyo evento BeforePrint realizo una serie de comprovaciones y en función de esto muesto o no el report, algo tal que así:

Código Delphi [-]
procedure TForm2.QReportBeforePrint(Sender: TCustomQuickRep; var PrintReport: Boolean);
begin
  if cerrar then 
  begin
   PrintReport:=false;
   exit;
  end;
 ...
end;

Con este código si cerrar es 'true' no muestro el report y salgo del evento. Y el problema es que para cerrar la pantalla de preview del report tengo que pulsar el botón close, no consigo hacer esto de forma automática desde código. Alguien me da una idea de como hacerlo?. Saludos.

marcoszorrilla 21-07-2006 15:37:22

Por qué no cierras el formulario que contiene el Objeto QuickRep:
Código Delphi [-]
  public
    { Public declarations }
    Cerrar:Boolean;
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
QuickRep1.PreviewModal;
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
Cerrar:=True;
end;

procedure TForm1.QuickRep1BeforePrint(Sender: TCustomQuickRep;
  var PrintReport: Boolean);
begin
If Cerrar = True then
form1.Close;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Application.ProcessMessages;
Action:=CaFree;
end;

Un Saludo.

AGAG4 21-07-2006 16:53:33

????
 
Porque las Comprobaciones que mencionas no las haces antes del Preview ????

chozas 24-07-2006 08:35:50

Probado
 
Al cerrar el form que contiene el report desde el evento BeforePrint me da un error.

Las comprobaciones a las que me referia son carga de consultas necesarias, esto lo hago con un hilo que puedo terminar si la consulta tarda excesivamente. Ahora sólo queda cerrar el preview cuando se anule la carga de la consulta.


La franja horaria es GMT +2. Ahora son las 03:30:53.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi