Hi,
da ich das gleiche Problem hatte kann ich dich beruhigen. Du kannst Rave-Report auch Daten aus einer anderen Quelle Übergeben.
Über die Events in TCustomConnection kannst du Daten an den von dir erstellen Report übergeben.
TIP:
Beschreibung der Datenfelder werden im Ereignis "onGetcols" via Connection.writefield angegeben
Die Tatsächlichen Daten werden im Ereignis "onGetRows" via der Connection.writeXYZdata methode
geschrieben
Im "OnOpen" Ereignis gibst du die anzahl der Rows (Datenzeilen) an
Beispiel:
Delphi-Quellcode:
procedure TForm1.rvCustomConnection1Open(Connection: TRvCustomConnection);
begin
//Anzahl der Datenzeilen; Da hier headerdaten nur 1
connection.DataRows := 1;
end;
procedure TForm1.rvCustomConnection1GetRow(Connection: TRvCustomConnection);
begin
//Tatsächlichen Daten an den Report übergeben
connection.WriteStrData('',realdata.Header.Name);
connection.WriteStrData('',realdata.Header.Vorname);
connection.WriteDateTimeData('',realdata.Header.Geburtsdatum);
connection.WriteFloatData(format('%3.0f Kg',[realdata.header.Gewicht]),0.0);
connection.writefloatdata(format('%4.0f cm',[realdata.header.Groesse]),0.0);
end;
procedure TForm1.rvCustomConnection1GetCols(Connection: TRvCustomConnection);
begin
//Datenfelder definieren
connection.WriteField('Name',dtString,30,'','');
connection.writefield('Vorname',dtString,30,'','');
connection.writefield('Gebdat',dtDateTime,8,'','');
connection.WriteField('Gewicht',dtFloat,8,'','');
connection.WriteField('Groesse',dtFloat,8,'','');
end;
Hoffe das hilft dir weiter
[edit=Daniel B]Delphi-Tags korrigiert. Mfg, Daniel B[/edit]