Im OnOpen() sagst Du dem Report wieviele Zeilen deine Connection liefert.
Mit Connection.DataRows := 1 ist das natürlich nur eine.
Im GetRow() solltest Du Connection.DataIndex verwenden. (das sagt welche Zeile er haben will).
Delphi-Quellcode:
procedure TMyReport.OnRvCCOpen(Connection: TRvCustomConnection);
begin
Connection.DataRows := self.MyReportData.GetDataCount;
end;
procedure TMyReport.OnRvCCGetRow(Connection: TRvCustomConnection);
var AktItem: TMyItem;
begin
AktItem := self.MyReportData.GetData_ForIndex(Connection.DataIndex);
Connection.WriteIntData('', AktItem.Id);
Connection.WriteIntData('', AktItem.Name);
Connection.WriteStrData('', AktItem.Text);
end;