Ja, ich denke so könnte es gehen. Leider hänge ich mal wieder.
Ich wollte erst einmal die Custom-Connection wie folgt mit einem Memo-Feld ausprobieren und dann das Ganze für meine Zwecke anpassen.
Delphi-Quellcode:
procedure TfrmReport.RvCustomConnection1GetCols(Connection: TRvCustomConnection);
begin
Connection.WriteField('FullAddress', dtMemo, 30, '', '');
end;
procedure TfrmReport.RvCustomConnection1GetRow(Connection: TRvCustomConnection);
var
Stream: TMemoryStream;
Memo: TMemo;
s: String;
begin
s := DataModule1.QueryDVD.FieldByName('name').AsString;
s := s + ' (' + DataModule1.QueryDVD.FieldByName('id').AsString + ') : ' + #13#10;
s := s + DataModule1.QueryDVD.FieldByName('cover').AsString;
Stream := TMemoryStream.Create;
Memo := TMemo.Create(Self);
try
Memo.Text := s;
Memo.Lines.SaveToStream(Stream);
Stream.Position := 0;
Connection.WriteBlobData(Stream.Memory^, Stream.Size);
finally
Stream.Free;
Memo.Free;
end;
end;
Leider kommt bei mir dann folgende Fehlermeldung:
Field DataView3:FullAddress. Datatype expected: dtString Datatype found: dtMemo.
Beim erstellen des Reports kann ich aber gar nicht auswählen, welcher Datentyp mein Feld hat
Eine Suche im Forum hat mich leider auch nicht weitergebracht. Bitte HILFE!