Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Abfragen, ob über Preview von Quickreport gedruckt wurde


saxe66 - Mi 29.06.11 06:14
Titel: Abfragen, ob über Preview von Quickreport gedruckt wurde
Hallo Delphianer,

wie kann ich bei Quickreport abfragen, ob, nachdem ich einen Report per Preview zur Anzeige gebracht habe, dieser dann auch ausgedruckt wurde. Hintergrund ... ich vergebe in einem Buchhaltungsprogramm Rechnungsnummern, aber nur, wenn auch tatsächlich ein Druck stattgefunden hat. Bei der reinen Ansicht darf keine Rechnungsnummer vergeben werden.

Danke ...


Nersgatt - Mi 29.06.11 06:47

Da hast Du aber das Problem, dass der User auch nachdem der Druck aus Sicht Deiner Software "raus" ist, noch den Druckjob löschen kann. Daran muss man immer denken.
Ich stand auch schon öfters vor ähnlichen Problemen, und habe sie auf 2 verschiedene Arten gelöst (je nachdem, was dem Kunden besser gefiel).

1. Du erzeugst in der Vorschau keine Rechnungsnummer, sondern druckst immer eine 0. Außerdem druckst Du Quer über das Blatt als Wasserzeichen "PROBEDRUCK!". Damit wird sichergestellt, dass so ein Druck nicht an den Kunden verschickt wird.

2. Das Drucken aus der Vorschau heraus wird komplett gesperrt.

Bei beiden Fällen: eine Rechnungsnummer wird nur generiert, wenn der User direkt auf den Drucker druckt, ohne vorher die Vorschau anzusehen. Gut er kann immer noch den Druckjob löschen, aber das dann sein Problem, wenn er sowas macht.

Jens


saxe66 - Mi 29.06.11 07:01

Erstmal danke, gibt es dennoch den abzufragenden Returnwert ???


trm - Mi 29.06.11 20:15

Hallo saxe66,

Im Ereignis:

OnAfterPrint kannst Du doch eine eigene Auswertung machen. Oder Du setzt hier eine Variable auf Wahr..

Gruß Mathias