![]() |
QuickReport: Ausdruck zeigt andere Werte als Preview
Hallo,
in meinem Programm gibt es einen Bericht, der eine Gruppierung enthält. Ein Teil der Datenfelder im Gruppenfuß kommt aus einer anderen Abfrage (qryCO_HKMain). Mit
Code:
blättere ich nach jedem Andrucken eines Gruppenfußes einen Datensatz in der anderen Abfrage weiter.
procedure TfrmRep_DispDet.QRBand1AfterPrint(Sender: TQRCustomBand;
BandPrinted: Boolean); begin with dmRG.qryCO_HKMain do if not Eof then Next; end; Dies funktioniert auch, wenn man den Bericht mit .Preview auf dem Bildschirm anzeigt. Wenn man jedoch dann den Bericht aus der Vorschau heraus ausdruckt, stehen in jedem Gruppenfuß, der angedruckt wird, die Werte des letzten Datensatzes aus der Abfrage :?:. Hat jemand vielleicht eine Idee, wie ich erreiche, dass die korrekten Werte nicht nur angezeigt, sondern aus ausgedruckt werden? Grüße Frank |
Re: QuickReport: Ausdruck zeigt andere Werte als Preview
So, habs gerade gefunden:
Offensichtlich wird das Afterprint-Ereignis sowohl beim Preview als auch beim tatsächlichen Ausdruck abgearbeitet, also zweimal. Wenn nach dem ersten Mal die Tabelle schon auf Eof steht, kommt beim zweiten Mal eben nur der letzte Datensatz. Also muss beim BeforePrint-Ereignis ein
Code:
hinein, dann funktioniert.
if Eof then First;
Grüsse Frank |
Re: QuickReport: Ausdruck zeigt andere Werte als Preview
Hallo,
stimmt genau. Aber das
Delphi-Quellcode:
würde ich auf alle fälle drinlassen, unabhängig davon, dass das DataSet auf EOF steht. (ist einfach sicherer)
DataSet.First
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz