Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi QuickRep autosave (https://www.delphipraxis.net/14844-quickrep-autosave.html)

schniede 16. Jan 2004 17:55


QuickRep autosave
 
Hallo!

Ich möchte nach dem drucken den quickreport automatisch speichern in etwa so:

Code:
procedure Tbestdruck.QuickRep3AfterPrint(Sender: TObject);

var ini: TIniFile;
begin

  ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+'\Tabellen\Letzterechnung.ini');

  ini.Writeinteger('Rechnung','rechnungsnummer',rechnungsnummer);
  ini.Writeinteger('Lieferung','liefernummer',liefernummer);

ini.free;
 
with quickrep3 do begin

qrprinter.Save('test');  // Fehlermeldung

end;

end;
weiß nur nicht wie ich das dem Progi beibringen soll also



Code:
qrprinter.Save('test');
????


mfg schniede

schniede 17. Jan 2004 09:34

Re: QuickRep autosave
 
Weiß keiner ne Antwort :-(

Also wenn ich das ganze über ne eigene Vorschau realisiere dann funzt es
ja. Das geht so:

Vorschau auf einer eigenen Form:



Code:
procedure TForm1.QuickRep1Preview(Sender: TObject);
begin
Form2.qrpreview1.qrprinter :=(sender as tqrprinter);
form2.show;
end;


procedure TForm2.BitBtn1Click(Sender: TObject);
begin
qrpreview1.QRPrinter.Save('c:\Test\test.qrp');
end;
Nur das möchte ich halt nicht.Ich möchte das ganze vom automatisch erzeugten preview von quickrep aus speichern (automatisch nach dem Ausdruck).

schniede 17. Jan 2004 16:31

Re: QuickRep autosave
 
Hallo!!
So für alle die es interressiert, hab ne Lösung gefunden. Sieht zwar komisch aus, aber es funzt (ohne Fehlermeldungen).
Code:
procedure Tbestdruck.QuickRep3AfterPrint(Sender: TObject);

var ini: TIniFile;

begin
  schongedruckt:=true;  // ob schon gedruckt wurde????

  ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+'\Tabellen\Letzterechnung.ini');

  ini.Writeinteger('Rechnung','rechnungsnummer',rechnungsnummer);
  ini.Writeinteger('Lieferung','liefernummer',liefernummer);

ini.free;
end;




procedure Tbestdruck.QuickRep3AfterPreview(Sender: TObject);

begin
bitbtn4.onclick(sender);
end;



 procedure Tbestdruck.BitBtn4Click(Sender: TObject);
var
path,filename,test2:string;
begin

if schongedruckt then begin
test2:='meiermax';
path:=(ExtractFilePath(ParamStr(0))+'\Rechnungen\');
filename:= path+test2+'.qrp';
quickrep3.Printer.Save(filename);
end;
schongedruckt:=false;
end;
mfg schniede


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz