Hallo
hab noch nie Probleme gehabt, das ich noch die alten Daten im Report hatte. Aber du machst es dir auch zu kompliziert. Du brauchst nur 3 Ereignisse Onopen, Ongetcols und Ongetrows und dein irowindex brauchst du auch nicht, du kannst Connection.dataindex nutzen.
Delphi-Quellcode:
aPerson := PPerson(myList[Connection.dataindex]);
sName := aPerson.name;
sKosten := aPerson.kosten;
with RvCustomConnection1 do
begin
WriteStrData('', IntToStr(Connection.dataindex+1));
WriteStrData('', sName);
WriteStrData('', Format('%8.2f', [fKosten]));
end;
"Kosten" kannst du auch als dtFloat übergeben und im Rave-Report formatieren. Dazu im treeview rechts im Dataview das Kostenfeld anklicken und dann kannst du bei z.B. Floats ein Displayformat einstellen. Vorteil wäre: du kannst dann in Rave auch mit diesen Werten rechnen und z.B. mit Ravemitteln eine Gesamtsumme erstellen.
ansonsten mal nbeim 2. Durchlauf einen Haltepunkt in die 3 Procs, damit du siehst, welche aufgerufen werden.
Mfg Frank