Serienbrief mit FastReport - Druck immer nur ein Datensatz
-
Hallo Zusammen,
ich hoffe mir kann hier jemand weiterhelfen. Ich möchte mit FastReport einen "Serienbrief" erstellen. Gedacht habe ich mir das folgendermaßen. Ich selektiere Daten aus einer MySQL Datenbank. Dann habe ich ein Formular in FastReport erstellt.Per Button lese ich z.B. 4 Sätze aus der DB. Mit einer Schleife gehe ich durch die 4 Datensätze und drucke in der Schleife den Report. Mein Problem ist jetzt, dass zwar 4 Seiten gedruckt werden. Allerdings alle nur mit dem ersten Datensatz.
Scheinbar werden die nächsten Daten nicht an den Report weitergegeben. Kann man den Report auch nach dem drucken löschen und wieder neu erstellen?
Ist das so wie ich es mir vorstelle überhaupt möglich.
-
Momentan mache ich es so:
sql_select = "Select * from kundendaten where VersandStatus = '1' order by plz"; DataModule_Bild->sql_DatenKunde->SQL->Clear(); DataModule_Bild->sql_DatenKunde->SQL->Add(sql_select); DataModule_Bild->sql_DatenKunde->Open(); for(int i = 0; i < DataModule_Bild->sql_DatenKunde->RecordCount; i++) { sql_select = "Select * from bestellungen where rgnummer = '"+DataModule_Bild->sql_DatenKunde->FieldByName("rgnummer")->AsString+"' order by artikelnummer"; DataModule_Bild->sql_DatenBestellungen->SQL->Clear(); DataModule_Bild->sql_DatenBestellungen->SQL->Add(sql_select); DataModule_Bild->sql_DatenBestellungen->Open(); RBildRechnung->PrepareReport(true); RBildRechnung->Print(); DataModule_Bild->sql_DatenBestellungen->Next(); }
Gibts bei FastReport vielleicht sowas, dass man ihm sagt das er den nächsten Datensatz nehmen soll? Das es 4 Datensätze sind erkennt er ja.